穷人的农场

sivart的Python项目详细描述


一个穷人建造的农场。

什么?

在不同系统上测试程序安装和测试步骤的工具。

怎么做?

架构、安装步骤和测试脚本在 配置文件,由sivart处理以运行各种异常 具有所述配置的框,然后进行测试。

安装

查看.sivart.yml了解详细步骤,但基本上需要 一个工作的virtualbox和:

pip install sivart

跑步:

python -m sivart --help

格式

sivart的输入是一个列有配置的yaml文件,如下所示:

my_config:
    box: box_url_or_id
    install:
        - step0
        - step1
    script:
        - step0
        - step1

box字段是一个有效的流浪者框标识符,install字段 包含作为root运行的命令,script字段包含命令 以vagrant用户身份运行。

随着配置数量的增加,可以使用facets来存储公共配置 元素:

.shared:
    install:
        - step0
        - step1
    script:
        - step0
        - step1

.config0:
    using:
        - .shared
    box: box0

.config1:
    using:
        - .shared
    box: box1

这使得在32位和64位计算机上执行相同的步骤变得很容易,因为 实例。

最后,还有一个env配置来测试各种参数,例如。 各种编译器:

.env0:
    env:
        - CC=gcc CXX=g++
        - CC=clang CXX=clang++

.env1:
    env:
        - CFLAGS=-O1
        - CFLAGS=-O2
        - CFLAGS=-O3

run:
    using:
        - env0
        - env1
    script:
        - $CC $CFLAGS hello.c

这对组合的笛卡尔积运行$CC $CFLAGS hello.c。 在.env0.env1中。

此外,还可以使用前缀为%的外部变量,如:

.cflags:
    env:
        - CC=gcc CXX=g++ CXXFLAGS=%CXXFLAGS CFLAGS=%CFLAGS
        - CC=clang CXX=clang++ CXXFLAGS=%CXXFLAGS CFLAGS=%CFLAGS

从命令行设置这个变量!

查看examples/*以获取更多…示例!

为什么?

因为我需要一种自动化的方法来测试pythran编译器 体系结构(32/64位)、各种os 各种分布。

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

推荐PyPI第三方库


热门话题
java如何在wix中为TARGETDIR和SourceDir提供路径?   java在custom starter中访问spring应用程序名称   没有构建带有ActionBarSherlock的java Android项目   java按钮边框不显示   JavaSpring:从表单数据获取文件输入流   javascript通知侦听器服务   java在Junit测试时遇到异常   java从文件中读取特定值   JavaFX:在很短的时间内隐藏窗格   如何在Docker中使用用户定义的引用类来容器化Java应用程序?   java如何更改项目的编译SDKversion?   是否有任何java/spring方法可以使用HttpServletRequest存储当前登录用户的会话信息?   Java中的双大于号(>>)?   Java阵列2x2及其工作原理   java Spring引导ddl自动生成器   java如何利用大量数据传输优化服务器客户端应用程序?   java在使用Windows的FLAG_全屏时ICS和Jelly Bean之间的不同行为   java如何获取当前在回收器视图的线性布局中不可见的视图