renovate/lib/modules/manager/azure-pipelines
Jesse Houwing 6d638efba4
docs: adds configuration template to revert standard naming convention for Azure Pipelines (#20208)
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
2023-02-04 08:56:59 +00:00
..
__fixtures__ feat(manager/azure-pipelines): extract azure-pipelines tasks (#16882) 2022-08-03 06:49:55 +02:00
extract.spec.ts feat(datasource/azure-pipelines-tasks): add azure-pipelines-tasks datasource (#16904) 2022-08-08 21:34:29 -07:00
extract.ts fix: coerce arrays when extracting (#17997) 2022-10-03 07:20:53 +00:00
index.ts feat(azure-pipelines)!: disable by default (#18142) 2022-10-23 06:48:35 +02:00
readme.md docs: adds configuration template to revert standard naming convention for Azure Pipelines (#20208) 2023-02-04 08:56:59 +00:00
types.ts feat(manager/azure-pipelines): extract azure-pipelines tasks (#16882) 2022-08-03 06:49:55 +02:00

The azure-pipelines manager is disabled by default. This is because there's no way for Renovate to know whether new task versions are yet available with the Azure DevOps environment, so new versions proposed by Renovate could fail.

To opt into running it, set the following:

{
  "azure-pipelines": {
    "enabled": true
  }
}

In most cases only major version numbers are specified in YAML when referencing a task version: NodeTool@0. By default, Renovate replaces these with the full version: NodeTool@0.216.0.

To use the standard convention for Azure Pipelines, add:

{
  "packageRules": [
    {
      "matchDatasources": ["azure-pipelines-tasks"],
      "extractVersion": "^(?<version>\\d+)"
    }
  ]
}

Renovate now updates container and repository resources from the resources block, plus tasks from steps blocks.

For example:

resources:
  repositories:
    - type: github
      name: renovate/renovate
      ref: refs/heads/main
    - type: github
      name: user/repo
      ref: refs/tags/v0.5.1
  containers:
    - container: linux
      image: ubuntu:16.04
    - container: python
      image: python:3.7@sha256:3870d35b962a943df72d948580fc66ceaaee1c4fbd205930f32e0f0760eb1077

stages:
  - stage: StageOne
    jobs:
      - job: JobOne
        steps:
          - task: Bash@3
            inputs:
              script: 'echo Hello World'

Read the resources block and the tasks block Azure Pipelines documentation for more information.

Files that are processed by the manager includes:

  • .azure-pipelines/**/*.yaml
  • .azure-pipelines.yaml
  • .azure-pipelines.yml
  • azure-pipelines/**/*.yaml
  • azure-pipelines.yaml
  • azure-pipelines.yml
  • azure-pipeline/**/*.yaml
  • azure-pipeline.yaml
  • azure-pipeline.yml