azure_pipelines

pdk
Puppet module for managing Azure Pipelines (VSTS, TFS) agents

Jacob Henner

jacobhenner

3,569 downloads

3,569 latest version

5.0 quality score

Version information

  • 1.0.0 (latest)
released Dec 2nd 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
    ,
    RedHat
    ,
    Ubuntu
    ,
    windows
    ,
    Darwin

Start using this module

Documentation

jacobhenner/azure_pipelines — version 1.0.0 Dec 2nd 2018

azure_pipelines

Table of Contents

  1. Description
  2. Setup - The basics of getting started with azure_pipelines
  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

Description

This module manages the installation of agents for Microsoft's Azure Pipelines, previously called Visual Studio Team Services (VSTS). 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.

This module was previously called vsts_agent, prior to the 1.0.0 release.

Setup

Setup Requirements

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

On Windows, the System.IO.Compression.FileSystem .NET assembly must be available.

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 azure_pipelines

To install an instance of the agent with minimal configuration:

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

To force *.visualstudio.com URLs (if dev.azure.com URLs are blocked):

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

Usage

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.

Reference

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

Limitations

This module has only been tested on Windows Server 2016, CentOS 7, and macOS Sierra.

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

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

There are currently no automated tests for this module.

Development

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