community.docker/.azure-pipelines/azure-pipelines.yml
2025-12-17 22:52:53 +01:00

120 lines
2.8 KiB
YAML

---
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
trigger:
batch: true
branches:
include:
- main
- stable-*
pr:
autoCancel: true
branches:
include:
- main
- stable-*
schedules:
- cron: 0 9 * * *
displayName: Nightly
always: true
branches:
include:
- main
- cron: 0 12 * * 0
displayName: Weekly (old stable branches)
always: true
branches:
include:
- stable-4
variables:
- name: coverageBranches
value: main
- name: entryPoint
value: .azure-pipelines/scripts/run-nox.sh
- name: fetchDepth
value: 0
- name: minAnsibleCore
value: "2.17"
- name: noxSource
# value: https://github.com/ansible-community/antsibull-nox/archive/main.tar.gz
value: https://github.com/felixfontein/antsibull-nox/archive/azp.tar.gz
resources:
containers:
- container: default
image: quay.io/ansible/azure-pipelines-test-container:7.0.0
pool: Standard
stages:
- stage: nox
displayName: Run extra sanity tests
dependsOn: []
jobs:
- job: extra_sanity
displayName: Extra sanity tests
container: default
workspace:
clean: all
steps:
- template: templates/run-nox.yml
parameters:
sessions: ""
- stage: create_matrixes
displayName: Create matrixes
dependsOn: []
jobs:
- template: templates/create-nox-matrix.yml
- stage: sanity
displayName: Sanity tests
dependsOn: create_matrixes
jobs:
- job: sanity
strategy:
matrix: >-
$[ coalesce(stageDependencies.create_matrixes.create_matrixes.outputs['matrix.sanity'], '{"none": {"display_name": "(none)", "skip": true}}') ]
displayName: "$[ variables.display_name ]"
container: default
workspace:
clean: all
steps:
- template: templates/run-nox.yml
parameters:
sessions: $(name)
- stage: foo
displayName: Foo tests
dependsOn: create_matrixes
jobs:
- job: foo
strategy:
matrix: >-
$[ coalesce(stageDependencies.create_matrixes.create_matrixes.outputs['matrix.foo'], '{"none": {"display_name": "(none)", "skip": true}}') ]
displayName: "$[ variables.display_name ]"
container: default
workspace:
clean: all
steps:
- template: templates/run-nox.yml
parameters:
sessions: $(name)
- stage: Summary
condition: succeededOrFailed()
dependsOn:
- nox
- sanity
# - units
# - integration
- foo
jobs:
- template: templates/coverage.yml