Code Monkey home page Code Monkey logo

continuainit's Introduction

ContinuaInit

ContinuaInit

ContinuaInit initializes several variables in a configuration for you. This console application will automatically integrate with Continua CI and set several variables based on the current context.

This application assumes you are using GitFlow.

One of the things one should always do is to try and mainsteam all the configurations so one knows what is happening for each product. However, then you will end up doing a lot of if/else to determine the state of a build:

ContinuaInit

The advantage of these variables is that one can implement logic inside a configuration based on whether the build is a CI build and whether it is an official build. The goal of ContinuaInit was to replace this whole tree by a single call to an executable that contains rules to determine variables and init them all. This results in a much cleaner initialization.

ContinuaInit

Usage

The usage is simple:

ContinuaInitializer.exe -b [branchname] -v [version] -ci [true|false]

Variables being set

Note that if a variable is not found, Continua CI will ignore them

###PublishType

If the branch is master, the PublishType will be set to Official. Otherwise the PublishType will be set to Nightly.

###IsOfficialBuild

true if the branch master, otherwise false

###IsCiBuild

true if the branch does not equal master, otherwise false

###DisplayVersion

Will be set to the version provided by the command line. Then it will apply one of the following values:

nightly => when nightly build

ci => when CI build

#Extending rules

We do accept pull requests. The rules can be implemented by derriving from RuleBase. Make sure to write unit tests for new rules, then the software will always behave as expected.

#Icon

Flask by Mark Caron from The Noun Project

continuainit's People

Contributors

geertvanhorrik avatar

Watchers

 avatar

Forkers

ronleonard19

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.