简体   繁体   中英

Passing Variables into Python file via CruiseControl

I have a CruiseControl project that executes a file build.py , whether it is nightly or CI. I would like to throw up some kind of flag in my build script that can determine which function to call, so I don't have to have two .py files that do essentially the same thing.

Is it possible to pass in variables or parameters through CruiseControl when executing a .py file?

<project name="x" default="build">
<target name="build-ci">
    <exec executable="python" failonerror="true">
        <arg value="build-cc.py" />
        <arg value="$(label)" />
    </exec>
</target>

<project name="x-nightly" default="build">
    <target name="build-nightly">
        <exec executable="python" failonerror="true">
            <arg value="build-cc.py" />
            <arg value="$(label)" />
        </exec>
    </target>
</project>

You can pass properties into ant from cruisecontrol. build-type will be a property in your ant script.

<schedule interval="${schedule_interval.seconds}">
    <ant anthome="${anthome.dir}" buildfile="${buildfiles.dir}${antbuild.file}" target="my-ant-target" uselogger="true">
        <property name="build-type" value="nightly"/>               
    </ant>
</schedule>

So if you have two cruisecontrol projects, one for the nightly and one for the CI, they could each pass in a different value for build-type.

Your question is hard to understand for me though. Could you post some of your cruisecontrol script?

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM