c911529f9d | ||
---|---|---|
attributes | ||
libraries | ||
providers | ||
recipes | ||
resources | ||
templates/default | ||
test | ||
.foodcritic | ||
.gitignore | ||
.kitchen.yml | ||
.rspec | ||
.rubocop.yml | ||
.travis.yml | ||
Berksfile | ||
CONTRIBUTING.md | ||
LICENSE.txt | ||
README.md | ||
Rakefile | ||
TESTING.md | ||
chefignore | ||
metadata.rb | ||
supermarket.pem.enc |
README.md
Visual Studio Team Services Build and Release Agent Cookbook
Installs and configures Visual Studio Team Services Build and Release Agent
Please check Wiki for more examples
Requirements
- Chef 12.5.0 or higher
Platforms
The following platforms are tested and supported:
- Debian 8 x64 (Jessie)
- Ubuntu 16.04
- Windows 10
- Mac OS X 10.11.4
Attributes
node['vsts_agent']['binary']['version']
- set version of package to installnode['vsts_agent']['prerequisites']['osx']['install']
- control osx dependencies installation. Default truenode['vsts_agent']['prerequisites']['debian']['install']
- control debian dependencies installation. Default true
Resource/Provider
vsts_agent
This resource installs and configures the vsts build and release agent
Actions
:install
: Install and configure the agent:remove
: Remove the agent and unregister it from VSTS:restart
: Restart the agent service
Parameters
agent_name
: Name attribute. The name of the vsts agentversion
: an agent version to install. Default version from an attributeinstall_dir
: A target directory to install the vsts agentpath
: Overwrite system PATH environment variable values. Linux and Mac OS X onlyenv
: Additional environment variables. Linux and Mac OS X onlyuser
: Set a local user to run the vsts agentgroup
: Set a local group to run the vsts agentrunasservice
: run agent as a service. Default 'true'windowslogonaccount
: Set a user name to run a windows service. Possible values are "NT AUTHORITY\NetworkService", "NT AUTHORITY\LocalService" or any system valid usernamewindowslogonpassword
: Set password for windowslogonaccount unless it is equal to NetworkService or LocalServicevsts_url
: url to VSTS instancevsts_pool
: A pool to connect an agentvsts_auth
: Authentication type. Valid options are PAT (Personal Access Token), Negotiate (Kerberos or NTLM), Integrated (Windows default credentials) and ALT (Alternate Credentials). Default PAT authvsts_token
: A personal access token for VSTS. Used with PAT auth type. Seevsts_username
: A user to connect to VSTS. Used with Negotiate and ALT authvsts_password
: A user to connect to VSTS. Used with Negotiate and ALT authwork_folder
: Set different workspace location. Default is "install_dir/_work"
Examples
Install, configure, restart and remove an agent. Check windows, debian or osx tests for more examples.
include_recipe 'vsts_agent::default'
if platform_family?('windows')
dir = 'c:\\agents'
else
dir = '/tmp/agents'
end
vsts_agent 'agent_01' do
install_dir dir
user 'vagrant'
group 'vagrant'
path '/usr/local/bin/:/usr/bin:/opt/bin/' # only works on nix systems
env('M2_HOME' => '/opt/maven', 'JAVA_HOME' => '/opt/java') # only works on nix systems
vsts_url 'https://contoso.visualstudio.com'
vsts_pool 'default'
vsts_token 'my_secret_token_from_vsts'
windowslogonaccount 'builder' # will be used only on windows
windowslogonpassword 'Pas$w0r_d' # will be used only on windows
action :install
end
vsts_agent 'agent_01' do
action :restart
end
vsts_agent 'agent_01' do
vsts_token 'my_secret_token_from_vsts'
action :remove
end
How to contribute
Check Contribution Guide and Testing Guide