Using Bazaar to Contribute Code: Difference between revisions
No edit summary |
|||
(15 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
This page has been deprecated. Please see the updated [[Linux (Ubuntu) Installation | installation instructions]]. | |||
We maintain all of our code in [http://www.launchpad.net Launchpad ] using the [http://bazaar-vcs.org/ Bazaar] version control system. | We maintain all of our code in [http://www.launchpad.net Launchpad ] using the [http://bazaar-vcs.org/ Bazaar] version control system. | ||
==Bazaar== | ==Bazaar== | ||
Line 5: | Line 7: | ||
sudo apt-get install bzr bzrtools | sudo apt-get install bzr bzrtools | ||
===Using Bazaar=== | ===Using Bazaar=== | ||
You should try the [http://doc.bazaar-vcs.org/latest/en/mini-tutorial/index.html five minute tutorial]. | You should try the [http://doc.bazaar-vcs.org/latest/en/mini-tutorial/index.html five minute tutorial]. The software sources are below as well as some directions to set up a development server. Happy committing. | ||
===Bazaar Branches=== | ===Bazaar Branches=== | ||
There are a few software components that we maintain, and for each there is a release and development trunk. | There are a few software components that we maintain, and for each there is a release and development trunk. | ||
Line 21: | Line 24: | ||
**[https://code.launchpad.net/~intrahealth+informatics/ihris-plan/1.1-dev ihris-plan] bzr branch lp:ihris-plan | **[https://code.launchpad.net/~intrahealth+informatics/ihris-plan/1.1-dev ihris-plan] bzr branch lp:ihris-plan | ||
**[https://code.launchpad.net/~intrahealth+informatics/ihris-qualify/3.2-dev ihris-qualify] bzr branch lp:ihris-qualify | **[https://code.launchpad.net/~intrahealth+informatics/ihris-qualify/3.2-dev ihris-qualify] bzr branch lp:ihris-qualify | ||
==Working On The Code== | |||
Suppose you want to setup a development server on your machine to play around with the code. Here are some steps that you can take to install iHRIS Manage under your home directory and setup up the apache and mysql web server. | Suppose you want to setup a development server on your machine to play around with the code. Here are some steps that you can take to install iHRIS Manage under your home directory and setup up the apache and mysql web server. | ||
===Installing The Required Software=== | |||
First we need to install some prerequisites for the software | |||
sudo apt-get tasksel install lamp-server | sudo apt-get tasksel install lamp-server | ||
sudo apt-get install php-apc php5-gd php5-tidy | sudo apt-get install php-apc php5-gd php5-tidy | ||
===Creating The Database=== | |||
You can create the database, which we will call ihris_manage by: | You can create the database, which we will call ihris_manage by: | ||
mysql -u root -p | mysql -u root -p | ||
Line 32: | Line 36: | ||
mysql> GRANT ALL PRIVILEGES ON ihris_manage.* TO ihris_manage@localhost identified by 'PASS'; | mysql> GRANT ALL PRIVILEGES ON ihris_manage.* TO ihris_manage@localhost identified by 'PASS'; | ||
here you should change 'PASS' to whatever you want. You can also use phpmyadmin to create the database. | here you should change 'PASS' to whatever you want. You can also use phpmyadmin to create the database. | ||
===Getting The Code=== | |||
Now we want to get the code from launchpad. | Now we want to get the code from launchpad. | ||
mkdir ~/ihris-dev | mkdir ~/ihris-dev | ||
cd ~ihris-dev | cd ~/ihris-dev | ||
bzr branch lp:i2ce | bzr branch lp:i2ce | ||
bzr branch lp:ihris-common common | bzr branch lp:ihris-common common | ||
bzr branch lp:ihris-manage manage | bzr branch lp:ihris-manage manage | ||
bzr branch lp:textlayout/3.1 textlayout | bzr branch lp:textlayout/3.1 textlayout | ||
====Configuring The Software | ===Binding The Code=== | ||
You may wish to bind your branch to the launchpad hosted branch to automatically commit there. For example, | |||
for iHRIS Manage, you can do: | |||
bzr bind bzr+ssh://<YOUR USER NAME>@bazaar.launchpad.net/~intrahealth+informatics/ihris-manage/3.2-dev/ | |||
===Configuring The Software=== | |||
In iHRIS Manage, there is a demo site setup with sample data. We can make this available in apache by doing the following: | In iHRIS Manage, there is a demo site setup with sample data. We can make this available in apache by doing the following: | ||
cd /var/www | cd /var/www | ||
Line 64: | Line 73: | ||
</center> | </center> | ||
Save and quit. | Save and quit. | ||
===URL Rewriting=== | |||
Finally, we can make our url's pretty by turning on rewriting. This is an optional step. | Finally, we can make our url's pretty by turning on rewriting. This is an optional step. | ||
sudo a2enmod rewrite | sudo a2enmod rewrite | ||
Line 74: | Line 83: | ||
To make sure we can use our new .htaccess file do: | To make sure we can use our new .htaccess file do: | ||
sudo gedit /etc/apache2/sites-available/default | sudo gedit /etc/apache2/sites-available/default | ||
and | and change: | ||
<Directory /var/www/> | <Directory /var/www/> | ||
Options Indexes FollowSymLinks MultiViews | Options Indexes FollowSymLinks MultiViews | ||
Line 95: | Line 104: | ||
===Documentation=== | ===Documentation=== | ||
We document our php code with [http://www.phpdoc.org/ phpdoc]. | We document our php code with [http://www.phpdoc.org/ phpdoc]. | ||
[[Category:Developer Pages]] |
Latest revision as of 07:27, 21 August 2019
This page has been deprecated. Please see the updated installation instructions.
We maintain all of our code in Launchpad using the Bazaar version control system.
Bazaar
Installing Bazaar
You can install bazaar under ubuntu via
sudo apt-get install bzr bzrtools
Using Bazaar
You should try the five minute tutorial. The software sources are below as well as some directions to set up a development server. Happy committing.
Bazaar Branches
There are a few software components that we maintain, and for each there is a release and development trunk.
- Release
- i2ce bzr branch lp:i2ce/3.1
- ihris-common bzr branch lp:ihris-common/3.1
- ihris-manage bzr branch lp:ihris-manage/3.1
- ihris-plan bzr branch lp:ihris-plan/1.0
- ihris-qualify bzr branch lp:ihris-qualify/3.1
- textlayout bzr branch lp:textlayout/3.1
- Development
- i2ce bzr branch lp:i2ce
- ihris-common bzr branch lp:ihris-common
- ihris-manage bzr branch lp:ihris-manage
- ihris-plan bzr branch lp:ihris-plan
- ihris-qualify bzr branch lp:ihris-qualify
Working On The Code
Suppose you want to setup a development server on your machine to play around with the code. Here are some steps that you can take to install iHRIS Manage under your home directory and setup up the apache and mysql web server.
Installing The Required Software
First we need to install some prerequisites for the software
sudo apt-get tasksel install lamp-server sudo apt-get install php-apc php5-gd php5-tidy
Creating The Database
You can create the database, which we will call ihris_manage by:
mysql -u root -p mysql> CREATE DATABASE ihris_manage; mysql> GRANT ALL PRIVILEGES ON ihris_manage.* TO ihris_manage@localhost identified by 'PASS';
here you should change 'PASS' to whatever you want. You can also use phpmyadmin to create the database.
Getting The Code
Now we want to get the code from launchpad.
mkdir ~/ihris-dev cd ~/ihris-dev bzr branch lp:i2ce bzr branch lp:ihris-common common bzr branch lp:ihris-manage manage bzr branch lp:textlayout/3.1 textlayout
Binding The Code
You may wish to bind your branch to the launchpad hosted branch to automatically commit there. For example, for iHRIS Manage, you can do:
bzr bind bzr+ssh://<YOUR USER NAME>@bazaar.launchpad.net/~intrahealth+informatics/ihris-manage/3.2-dev/
Configuring The Software
In iHRIS Manage, there is a demo site setup with sample data. We can make this available in apache by doing the following:
cd /var/www sudo mkdir ihris-dev cd /var/www/ihris-dev sudo ln -s ~/ihris-dev/manage/sites/Demo/pages manage
Once we complete some configuration options, you can access the site at:
http://127.0.0.1/ihris-dev/manage
To complete the configuration we need to tell the application which database we want to use: We will now edit the configuration to let the site know about the database user and options:
gedit ~/ihris-dev/manage/sites/Demo/pages/config.values.php
We now need to uncomment and set the value of a few variables. They are:
Variable Name | Value |
---|---|
$i2ce_site_i2ce_path | /home/YOUR_USER_NAME/ihris-dev/i2ce |
$i2ce_site_database | ihris_manage |
$i2ce_site_database_user | ihris_manage |
$i2ce_site_database_password | PASS (the password you set above) |
$i2ce_site_module_config | /home/YOUR_USER_NAME/ihris-dev/manage/sites/Demo/iHRIS-Manage-Demo.xml |
Save and quit.
URL Rewriting
Finally, we can make our url's pretty by turning on rewriting. This is an optional step.
sudo a2enmod rewrite cd ~/ihris-dev/manage/sites/Demo/pages cp htaccess.TEMPLATE .htaccess gedit .htaccess
We need to look for the line RewriteBase and change it to the web directory we want to use we are using, /ihris-dev/manage. You may now save and quit.
To make sure we can use our new .htaccess file do:
sudo gedit /etc/apache2/sites-available/default
and change:
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory>
to:
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory>
Coding Policy
Indentation and Formatting
No tabs please. All tabs should be converted to 4 spaces. The indentation style for (PHP) code should be bsd.
Documentation
We document our php code with phpdoc.