帮助将构建从不稳定移到稳定的脚本

zest.stabilizer的Python项目详细描述


Zest内置稳定器

本产品的目标 :Zest.Stabilizer有助于移动后备箱签出 开发构建以标记生产构建中的签出。它 检测最新标签并相应地更改stable.cfg。

目前,Zest软件非常特别 在某种意义上,它被硬编码为两个假设/需求 对我们来说是这样。

要求1:拆分构建配置

在Zest软件公司,我们已经确定了一个特定的buildout.cfg设置 将buildout.cfg分为五个文件:

< DL>
不稳定.cfg
主干签出、开发卵、开发设置。
稳定.cfg
标记签出,释放鸡蛋。无开发产品。
devel.cfg/preview.cfg/production.cfg
符号链接为production.cfg。配置的不同部分 开发笔记本电脑,预览和生产系统。端口号, 清漆安装等开发扩展不稳定,预览和生产 稳定伸展。

因此zest.stabilizer将unstable.cfg中的主干签出移动到tag 在stable.cfg中签出。

要求2:infrae.subversion而不是svn:externals

我们的内部策略是在构建中保留尽可能多的配置 配置。所以我们从svn:externals in src/ 切换到 颠覆。我们扩展了infrae.subversion来支持开发鸡蛋 并支持在与默认目录不同的目录中放置 零件/[partname]/

zest.stabilizer需要一个特定的名称("ourpackages")。这样的部分看起来 像这样:

[ourpackages]
recipe = infrae.subversion >= 1.4
urls =
    https://svn.vanrees.org/svn/reinout/anker/anker.theme/trunk anker.theme
    http://codespeak.net/svn/z3/deliverance/trunk Deliverance
as_eggs = true
location = src

稳定剂的作用

当您运行 Stabilize 时,zest.Stabilizer会执行以下操作:

  • 检测unstable.cfg中的 [ourpackages] 部分并读取URL。
  • 从每个url中删除"trunk"并添加"tags",然后在 Sv.
  • 为每一项选择最高的数字。
  • 删除stable.cfg中现有的 [ourpackages] (如果存在)。
  • [ourpackages] 部分添加到stable.cfg中,并使用可用的最高标记 在里面结账。
  • 显示"svn diff"并询问您是否提交更改。

助手命令: needrelease

在稳定之前,通常需要先发布一组产品。如果 您有多个包,检查所有svn日志以查看 自上次发布以来有了变化。

运行needrelease,您将得到每个检测到的包的最后一条svn日志消息。

安装

安装非常简单

zest.stabilizer需要zest.releaser,它作为 附属国。哇,好多好吃的!

包含的程序

全球安装了两个程序:

  • 不稳定的固定装置 目前只协助移动src/* 发展蛋到一个基础。颠覆部分。最后它会打印出来 有关您必须手动执行的进一步工作的说明。
  • 稳定化 它接受 不稳定.cfg的infrae.subversion部分 找出每个开发包的最新标签。它 然后将类似的部分添加到 stable.cfg

zest.stabilizer的开发版本可以在 https://svn.plone.org/svn/collective/zest.stabilizer/trunk

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何下载多个。java中的PDF文件   linux Java打开文件,形成实际用户主页~/   java如何在时间线内维护TableView选择?   java Hibernate注释@Where vs@WhereJoinTable   Java读/写访问异常FileNotFoundException(访问被拒绝)   继承在Java中是否可以扩展最后一个类?   Android HttpClient使用java使应用程序崩溃。lang.OutOfMemoryError:pthread_create   java为什么即使我在proguardproject中添加了jar文件,也会出现这种错误。txt?   如果添加JButton,swing Java FocusListener和KeyListener将无法工作   java使用solrj检索json格式的SolrDocument   使用Microsoft Visual Studio代码进行Java编程   java NoClassDefFoundError:org/apache/log4j/Logger   哈希集中包含相等对象的java   java中的参数化构造函数是否需要有一个主体?   java类似于NetBeans不必要的代码检测器   Java实践问题   java Blackberry“[projectname].调试文件丢失”和“I/O错误:找不到程序”jar