Difference between revisions of "Steps for an official release"
From OpenEMR Project Wiki
Bradymiller (talk | contribs) |
Bradymiller (talk | contribs) |
||
Line 19: | Line 19: | ||
===Download release from sourceforge git repository=== | ===Download release from sourceforge git repository=== | ||
git clone git://openemr.git.sourceforge.net/gitroot/openemr/openemr | git clone git://openemr.git.sourceforge.net/gitroot/openemr/openemr | ||
git checkout origin/v4_0_0 | git checkout origin/v4_0_0 | ||
rm -fr openemr/.git | rm -fr openemr/.git | ||
===Set permissions for tarball and zip=== | ===Set permissions for tarball and zip=== | ||
cp -r openemr/ openemr-4.0.0/ | cp -r openemr/ openemr-4.0.0/ | ||
chmod -R u+w openemr-4.0.0 | chmod -R u+w openemr-4.0.0 | ||
chmod -R a+w openemr-4.0.0/sites/default/documents openemr-4.0.0/sites/default/edi openemr-4.0.0/sites/default/era | chmod -R a+w openemr-4.0.0/sites/default/documents openemr-4.0.0/sites/default/edi openemr-4.0.0/sites/default/era | ||
chmod a+w openemr-4.0.0/sites/default/sqlconf.php | chmod a+w openemr-4.0.0/sites/default/sqlconf.php | ||
chmod a+w openemr-4.0.0/gacl/admin/templates_c | chmod a+w openemr-4.0.0/gacl/admin/templates_c | ||
chmod a+w openemr-4.0.0/sites/default/config.php | chmod a+w openemr-4.0.0/sites/default/config.php | ||
chmod -R a+w openemr-4.0.0/interface/main/calendar/modules/PostCalendar/pntemplates/cache | chmod -R a+w openemr-4.0.0/interface/main/calendar/modules/PostCalendar/pntemplates/cache | ||
chmod -R a+w openemr-4.0.0/interface/main/calendar/modules/PostCalendar/pntemplates/compiled | chmod -R a+w openemr-4.0.0/interface/main/calendar/modules/PostCalendar/pntemplates/compiled | ||
===Build tarball=== | ===Build tarball=== | ||
tar zcpf openemr-4.0.0.tar.gz openemr-4.0.0 | tar zcpf openemr-4.0.0.tar.gz openemr-4.0.0 | ||
===Build zip=== | ===Build zip=== | ||
zip -r openemr-4.0.0.zip openemr-4.0.0 | zip -r openemr-4.0.0.zip openemr-4.0.0 | ||
===Debian/ubuntu (deb)=== | ===Debian/ubuntu (deb)=== |
Revision as of 09:26, 24 March 2011
Overview
Steps detailing a release (4.0 is given as an example).
1. Create a rel-400 branch from master in the git repo.
2. Release an online development demo that uses the rel-400 branch and updates daily.
3. Publish installation, upgrade, and downloading instructions
- Also provide links for downloading rel-400 daily builds/packages to allow testing of installation and upgrading by testers
3. Finalize the translations in the rel-400 branch.
4. Bug fix and finalize the rel-400 branch.
5. Create a list of new features in the rel-400 branch (since the last official release)
6. Release rel-400 branch by tagging in git repo with v4_0_0.
- Things to remember before tagging the release.
- Remove dev (make it blank) from the version.php file
- Ensure the debug language global in locale in library/globals.inc.php is defaulted to 0
7.Build the zip and tar.gz packages from v4_0_0 and release packages on sourceforge.
- Script that automates the below release builds outlined below is here: http://gist.github.com/884734
Download release from sourceforge git repository
git clone git://openemr.git.sourceforge.net/gitroot/openemr/openemr git checkout origin/v4_0_0 rm -fr openemr/.git
Set permissions for tarball and zip
cp -r openemr/ openemr-4.0.0/ chmod -R u+w openemr-4.0.0 chmod -R a+w openemr-4.0.0/sites/default/documents openemr-4.0.0/sites/default/edi openemr-4.0.0/sites/default/era chmod a+w openemr-4.0.0/sites/default/sqlconf.php chmod a+w openemr-4.0.0/gacl/admin/templates_c chmod a+w openemr-4.0.0/sites/default/config.php chmod -R a+w openemr-4.0.0/interface/main/calendar/modules/PostCalendar/pntemplates/cache chmod -R a+w openemr-4.0.0/interface/main/calendar/modules/PostCalendar/pntemplates/compiled
Build tarball
tar zcpf openemr-4.0.0.tar.gz openemr-4.0.0
Build zip
zip -r openemr-4.0.0.zip openemr-4.0.0
Debian/ubuntu (deb)
- Ensure new dependencies are added to control file and (such as php5-mcrypt)
- Ensure following files are updated (version info etc.):
mkdir -p debian/DEBIAN mkdir -p debian/usr/share/applications mkdir -p debian/usr/share/doc/openemr/ mkdir -p debian/usr/share/man/man8 mkdir -p debian/var/www cp openemr/contrib/util/ubuntu_package_scripts/production/control debian/DEBIAN/ cp openemr/contrib/util/ubuntu_package_scripts/production/preinst debian/DEBIAN/ cp openemr/contrib/util/ubuntu_package_scripts/production/postinst debian/DEBIAN/ cp openemr/contrib/util/ubuntu_package_scripts/production/prerm debian/DEBIAN/ cp openemr/contrib/util/ubuntu_package_scripts/production/postrm debian/DEBIAN/ chmod +x debian/DEBIAN/preinst chmod +x debian/DEBIAN/postinst chmod +x debian/DEBIAN/prerm chmod +x debian/DEBIAN/postrm cp openemr/contrib/util/ubuntu_package_scripts/production/openemr.desktop debian/usr/share/applications/ cp openemr/contrib/util/ubuntu_package_scripts/production/changelog.Debian debian/usr/share/doc/openemr/ gzip --best debian/usr/share/doc/openemr/changelog.Debian cp openemr/contrib/util/ubuntu_package_scripts/production/copyright debian/usr/share/doc/openemr/ cp openemr/contrib/util/ubuntu_package_scripts/production/README.Debian debian/usr/share/doc/openemr/ cp openemr/contrib/util/ubuntu_package_scripts/production/openemr.8 debian/usr/share/man/man8/ gzip --best debian/usr/share/man/man8/openemr.8 cp -r openemr/ debian/var/www/openemr/ fakeroot dpkg-deb --build debian mv debian.deb openemr_4.0.0-1_all.deb lintian openemr_4.0.0-1_all.deb
Sourceforge Upload
- Upload via Project Admin
- Upload release and a release notes file
- Set file properties appropriately