跳转到主要内容

用于自动化分布式juju charm测试的工具。

项目描述

自动化Charm测试

为juju:http://juju.ubuntu.com charm测试提供可重复使用的组件和实用工具。

测试有多种用途,从jenkins瀑布视图测试,到根据测试结果将发布门控到存储库。

为了适应不同的运行场景,这些工具以一组命令行工具的形式呈现。

所有工具都针对默认的juju环境操作。

运行器

提供进入charm测试的主要入口点。它将生成和运行测试,并记录结果和环境信息

$ juju-graph-runner -r repository -w working_dir -s series -t testrecord.zip <charm_name>

规划器

对于给定的charm更改,针对所有charm的存储库计算一系列测试计划

$ juju-planner -r repository  -s precise -d plans_dir <charm_name>

快照

快照和恢复环境,类似于bzr shelve。主要目的是能够从环境中清除服务,以便环境可以在测试之间重复使用。

在服务粒度上操作,在弹出窗口中销毁并移除之前快照中不存在的老旧服务

 $ juju-snapshot snapshot -f pristine.json
 $ juju deploy --repository=examples local:mysql
 $ juju-snapshot restore -f pristine.json

- Clean an environment for reuse, via deleting services.
- Resets provider storage of any uploaded charms.
- Removes any charm state from zookeeper.

加载器

将测试计划的服务和关系加载到环境中

$ juju-load -r repository mediawiki.plan

监控

验证服务启动是否正确,等待给定服务及其所有关系达到完成稳定状态或任何达到失败状态

$ juju-watch <service_name>

如果等待失败,退出代码为1,stderr包含更多详细信息。如果成功,则退出代码为0。

测试记录

创建所有单元日志、zookeeper数据、状态和测试运行器日志的存档

$ juju-record -f testrecord.zip

致谢

Kapil Thangavelu <作者> Mark Mimms <贡献者>

变更

0.2.5

  • 使用sftp获取远程单元日志(juju-recorder现在提供独立的服务器)

  • 更新监控器以与新状态输出一起工作

0.2.4

  • 独立的zk转储脚本,使用错误处理包装器快照拆卸。

0.2.3

  • 修复监控器最大超时命令行参数的问题

0.2.2

  • 修复快照恢复时多个服务引用charm的问题。

0.2.1

  • 打包修复

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

charmrunner-0.2.5.tar.gz (14.4 kB 查看哈希值)

上传时间

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页