...
When creating an Action in the Stage Editor, you may notice a "Using" field at the bottom of the dialog on the first tab for all actions that are backed by an executable. Obviously actions like Delay and Tag Build don't require executables to perform their job so they won't have a "Using" drop down list. The "Using" list contains the property collectors that are of use to the Action. Once a property collector is selected from this list and the Action is saved to the Stage and subsequently the Configuration, a requirement is then set on the Configuration for that property needing to be available before the Configuration can execute. One common theme for all property collectors found in the "Using" drop down in Actions is they all use a property collector type that returns a Path property. By default, all Actions will take the property collector assigned to them and only use the Path property since that's all the Action needs... the path to the executable to run the Action.
...
In addition to the "Using" drop down list, you can manually specify property collector properties by using the Query Syntax in any action. Chances are at some point you will need to use an executable in your workflow that Continua doesn't have an action form, for example FTP. To do this, you would add a property collector for your FTP executable, then use the Execute Program Action and specify the property using the Query Syntax. Accessing properties from property collectors using the query syntax is described below. Please note, when specifying properties manually there's no way for Continua to check if an Agent is compatible until the action is executed (at run time). If you want to manually specify a path and have the compatibility of an Agent detected before run time, then you would need to add a Stage Option that checks of the path exists. As an example, your stage option would look something like this: $Agent.MyFtpExecutable.Path$ with the condition drop down set to Exists.
Stage Options
Stage Options are one place where you can directly access properties provided by property collectors. By using the Query Syntax, you can use access properties such as the Environment Variables of an Agent or the version of a file if you've setup a File Version property collector for that file. Accessing properties from property collectors using the query syntax is described below.
...
Properties |
---|
$Agent.VisualStudio.Path$ |
MSTest
Assuming the namespace when creating the property collector was MSTest.
Properties |
---|
$Agent.MSTest.Path$ |
File Version
Assuming the namespace when creating the property collector was MyFile.
...
Plugin | Pattern | Namespace Examples |
---|---|---|
7-Zip Create 7-Zip Extract | ^7-Zip.* | 7-Zip.Ver2.1 7-Zipper 7-zip-8.09 |
Ant | ^Ant.* | Ant.9.11 Antler ant.V-10.6 |
FinalBuilder | FinalBuilder\..* | FinalBuilder.8 FianlBuilder.8.09 finalbuilder.600 |
MSBuild | ^dotnet\..* | DotNet.77 dotnet.123 dotnet.netdot |
NAnt | ^NAnt.* | NAnt10.3 nant.9.33 nantnant4 |
Visual Studio | ^VisualStudio\..* | VisualStudio.10 VisualStudio.2012 visualstudio.win |
NCover | ^NCover\.Console.* | NCover.Console.3.22 NCover.Console9 ncover.console1 |
NCover Reporting | ^NCover\.Reporting.* | NCover.Reporting.1.33 NCover.Reporting4.99 ncover.reporting2 |
NuGet Delete NuGet Install NuGet Pack NuGet Push NuGet Spec NuGet Update | ^NuGet.* | NuGet.1.99 NuGet88 nuget23 |
PowerShell | ^PowerShell.* | PowerShell.1.6 PowerShell99 powershell2 |
NUnit | ^NUnit.* | NUnit.1.22 NUnit44 nunit3 |
XUnit | ^XUnit\..* | XUnit.1.22 XUnit.123 XUnit.4.5.6 |
MSTest | ^MSTest.* | MSTest.1.22 MSTest44 mstest3 |
Repositories
Plugin | Pattern | Namespace Examples |
---|---|---|
Accurev | ^accurev\..* | Accurev.1.88 Accurev.222 accurev.testing |
File System | ^Robocopy.* | Robocopy.1.33 Robocopy44 robocopy.fixed |
Bazaar | ^bazaar\..* | Bazaar.2.4 Bazaar.1 bazaar-old |
Git | ^git\..* | Git.1.6 Git.9 git.newest |
Mercurial | ^mercurial\..* | Mercurial.9.4 Mercurial.Latest mercurial.2 |
Perforce | ^perforce\..* | Perforce.3.6 Perforce.old perforce.1 |
Subversion | ^subversion\..* | Subversion.9.77 Subversion.newest subversion.1 |
SurroundSCM | ^surroundscm\..* | SurroundSCM.1.2 SurroundSCM.testing surroundscm.9 |
Vault | ^vault\..* | Vault.4.9 Vault.WIN vault.8 |
...