Puppet module for managing Visual Studio Team Services (VSTS) agents

Jacob Henner



4,128 latest version

5.0 quality score

Version information

  • 0.3.0 (latest)
  • 0.2.0
  • 0.1.7
  • 0.1.6
  • 0.1.5
  • 0.1.4
  • 0.1.3
  • 0.1.2
  • 0.1.1
  • 0.1.0
released Sep 20th 2018
This version is compatible with:
  • Puppet Enterprise 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 4.7.0 < 6.0.0
  • Debian
This module has been deprecated by its author since Dec 4th 2018.

The author has suggested jacobhenner-azure_pipelines as its replacement.

Start using this module


jacobhenner/vsts_agent — version 0.3.0 Sep 20th 2018


Table of Contents

  1. Description
  2. Setup - The basics of getting started with vsts_agent
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module


This module manages the installation of agents for Microsoft's Visual Studio Team Services (VSTS), now called Azure Pipelines. Both standard agents and deployment group agents are supported.

At this time, only agent installation is handled. Configuration changes (e.g. adding a deployment group tag, removing an agent) are not supported.


Setup Requirements

All dependencies for the VSTS agent must be installed prior to using this module.

On Windows, PowerShell >= 5 is required.

If you are unable to download packages from the internet (either directly or through a proxy), you will need a locally accessible copy of the agent.

Beginning with vsts_agent

To install an instance of the VSTS agent with minimal configuration:

vsts_agent::agent { 'testagent':
    install_path       => '/opt/vsts_agent/testagent',
    token              => 'pat-token',
    vsts_instance_name => 'instance-name',
    service_user       => 'vsts',
    service_group      => 'vsts',
    run_as_service     => true,


An example of basic configuration is provided above.

This module supports all of the parameters that can be passed to the VSTS agent's configuration script.


Please see the parameter documentation in agent.pp or generate documentation using puppet strings.


This module has been tested on Windows Server 2016, CentOS 7, and macOS Sierra. It is not expected to work on other systems.

This module does not yet support upgrading VSTS agents, or changing the configuration of existing VSTS agents.

On Windows, install_path must be specified using backslashes due to a limitation in the dirtree module.

Agents for Azure Pipelines can be configured by overriding some parameter defaults. Full support will be provided in a future release.

There are currently no automated tests for this module.


Contributions are encouraged! Please open a pull request for all proposed changes.