Skip to content

Commit

Permalink
readme tweak
Browse files Browse the repository at this point in the history
  • Loading branch information
bryanmacfarlane committed Apr 7, 2015
1 parent 4f5ceec commit 5c12677
Showing 1 changed file with 3 additions and 17 deletions.
20 changes: 3 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,28 +32,14 @@ Before you run the builds, you need to configure an agent:
* [Xcode Build (Video)](http://youtu.be/OxmBuqtgHuM)

## Overview
Tasks are simply tool runners. They know how to run MSBuild, VSTest, etc... in a first class way and handle return codes, how to treat std/err out, and how to write timeline records based on expected output. Tasks also help you find an agent with the necessary tools (see demands below).

They also advertise what inputs they need in a first class way so the designer can take input.

Along with templates in the new build system, the goal is in many cases to simply do "New VS Build Definition", save and it just works. Sometimes you may have to browse to a project file or supply a couple required inputs but it puts the user on rails for the common case.

## DevOps
We also have tasks for script runners such as PowerShell, cmd script, Shell Script, Jake (JavaScript) and Python is coming. This allows users to run scripts *located in their source control system* ... the same scripts that devops run. That is a key principle, devops == CI.

## Authoring
Tasks can be written in Powershell, ShellScript, javaScript or Python. Tasks can carry multiple implementations for cases where you want to run PowerShell on Windows and a Shell Script for example on Linux or OSX.

[Pre-Defined Variables](/docs/authoring/variables.md)

## Capabilities and Demands
Tasks demand a tool or dependency that they run. On configuration and startup, an agent registers it's capabilities with the server. When you add a task to a definition it appends the demands for that definition. When run, an agent is found with the corresponding capabilities from the configured pool of agents.
Tasks are simply tool runners. They know how to run MSBuild, VSTest, etc... in a first class way and handle return codes, how to treat std/err out, and how to write timeline records based on expected output. Your build logic should be in the build
DSL that the CI server runs ... the same as what the dev runs.

## Contributing
Tasks are built using gulp.

### Node and Npm:
**Mac OSX**: Download and install node from [nodejs.org](http://nodejs.org/)
**Windows and Mac OSX**: Download and install node from [nodejs.org](http://nodejs.org/)

**Linux**: Install [using package manager](https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager)

Expand Down

0 comments on commit 5c12677

Please sign in to comment.