Git Product home page Git Product logo

easytrac's Introduction

==================
easyTrac installer
==================

The easyTrac installer is a source-installation kit that installs a complete Trac environment and all its dependecies.

Feedback/bugs to:
 * Email: manuel.viera.tirado at gmail.com
 * Twitter: http://twitter.com/mviera


Installation instructions
=========================
The installer will compile Nginx and uWSGI and it will install all required python dependencies also.
But for compile Nginx and uWSGI a few dependencies are required to be installed in the system. This dependencies 
are the following:

Dependencies
------------
git
python-dev
gcc
make
libpcre3-dev
libssl-dev 
libxml2-dev
libxslt-dev
libsqlite3-dev
libzzip-dev
libapr1-dev
libaprutil1-dev

PLEASE NOTE: You can run the easyTrac installation as root or as a normal user.

The installer config works out of the box, but if you want, you can edit buildout.cfg and 
modify the following parameters:

 * nginx-http-port: http port that will be used for Nginx.
 * nginx-https-port: https port that will be used for Nginx (in case you want to use https).
 * supervisor-http-port: http port that will be used for supervisor.
 * host: host ip address of fqdn.
 * socket-directory: directory where the socket will be stored.
 * pid-directory: directory where the pid files will be stored.
 * log-directory: logs directory.
 * trac-projects-directory: directory where the Trac projects will be created. This directory is <installdir>/opt/trac/, by default.
 * svn-repository-directory: directory where the svn repositories will be created. This directory is <installdir>/opt/svn/, by default.

Once you have installed all required dependencies, you can continue with the installation process.
So you execute the following command:

$ python bootstrap.py


You should have the buildout environment ready to go. Now, you must execute the buildout installation:

$ ./bin/buildout


NOTE: Also, easyTrac compiles Subversion and installs the subversion bindings needed for Trac to manage and browse through svn code repositories.


How to start, stop, restart services
====================================
Supervisor provides a control script to start, stop or restart our 
services. In our supervisor we only get two services: nginx and uwsgi.

The supervisorctl syntax is:

$ ./bin/supervisorctl <command> <service-name>

start services
--------------
$ ./bin/supervisorctl start nginx

stop services
-------------
$ ./bin/supervisorctl stop nginx

restart services
----------------
$ ./bin/supervisorctl restart nginx

Also, supervisor provides an especial word 'all', so we don't need to specify 
every service name. For example, if we need to restart all services:

$ ./bin/supervisorctl restart all


Supervisor has an admin panel on where we can control our services via web. This admin control 
panel is accesible at:

http://localhost:9000

NOTE: by default, the username is 'admin' and the password is 'admin.' To change the admin password, 
edit the [supervisor] part in buildout.cfg and run bin/buildout.


How to create a Trac project
============================
$ ./bin/trac-admin opt/trac/demo initenv demo sqlite:db/trac.db


How to create a svn code repository
===================================
$ ./bin/svnadmin create opt/svn/demo


Uninstall instructions
======================
1) Stop supervisord by running: ./bin/supervisorctl shutdown
2) Remove the folder <installdir>/easyTrac


Backup instructions
===================
easyTrac includes a backup script. So, if you want to make a backup you only must to 
execute the following command:

$ ./bin/backup

and all the trac projects will be backed up into a tarball to the backups directory, called 'backups'.


Restore instructions
====================
Also, easyTrac provides a restore script, useful to restore old backups. Its usage is as simple as follow:

$ ./bin/restore backups/backup-file.tar.gz

and all the trac projects will be restored.

easytrac's People

Contributors

mviera avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.