放行程序

动物园项目发布程序通常由以下规则定义:

  • 任何一个 动物园项目专员 可以通过询问 动物园项目指导委员会 指向一个发布管理器。这最后一个将投票接受经理和发布过程。

  • 如果尚未创建,请创建一个wiki页面(如下所示 one 使用此方案:release/m.m.r/notes),汇总上一版本的更改(从 revision log

  • 该文件应包括新功能、更改的功能和不推荐使用的功能(如果有的话)。应特别注意对官方文件的更改以及在升级过程中可能导致破坏性更改的其他项目。

  • 阅读文档并拆下过时的零件。

  • 将候选版本创建为.zip和.tar.bz2,然后将它们添加到此版本中 page (通过编辑此 wiki page

  • 一旦你认为一切正常,就裁掉一个发布候选。宣布发布候选人至少1周。在这段时间内,您也可以在生产环境中部署它,因为您断言它是稳定的(重要的)无缺陷的。用此发布特定修订。

  • 如果报告了重大的错误,请修复并剪切一个新的候选版本。如果没有重大错误,那么宣布发布候选已经正式升级为正式发布(如果您愿意,您可以通过PSC的提议和支持来实现这一点)。

  • 确保版本与SVN中的内容完全匹配。适当地标记和分支。

  • 根据需要更新文档。

  • 在各种电子邮件列表和其他位置(news_item@osgeo.org、slashgeo等)宣布

创建正式发布

发布版本导致文档和标准tarballs中的更新。这是为了帮助未来的管理员可重复地创建版本。

  • 仔细检查 the ZOO-Project.org web site 匹配当前版本。

  • 再次检查最新的生成文件是否与当前修订号匹配。

  • 如果这是一个新的主要版本,那么创建一个分支和一个标记。

cd zoo-project-svn/
svn cp trunk branches/branch-1.6
svn cp trunk tags/rel-1.6.0
  • 如果这是一个主要或次要的标签,请创建一个标签。

svn cp branches/branch-1.6 tags/rel-1.6.1
  • 使用版本号提交标记或分支。

svn commit -m 'Created branch/tags for the X.Y.Z release'
  • 创建版本存档

export VERSION=2.6.0
cd zoo-propject-svn
cp -r trunk zoo-project-$VERSION
cd zoo-project-$VERSION
rm -rf $(find ./ -name ".svn")
cd zoo-project/zoo-kernel
autoconf
# In case you did not build ZOO-Kernel
cd ../../..
# In case you built ZOO-Kernel, then remove the generated file from the archive
make clean
rm -f  {Makefile,ZOOMakefile.opts}
cd ../../..
# In case you built one or more ZOO-Services, then remove the generated file from the archive
rm $(find ./zoo-project-$VERSION/zoo-project/zoo-services -name "*zo")
# Remove documentation from the archive
rm -rf ./zoo-project-$VERSION/{docs,workshop}
tar -cvjf ./zoo-project-$VERSION.tar.bz2 ./zoo-project-$VERSION
zip -r ./zoo-project-$VERSION.zip ./zoo-project-$VERSION
scp -P 1046 ./zoo-project-$VERSION.{zip,tar.bz2} zoo-project.org:/var/www/localhost/htdocs/dl/