Skip to content
Snippets Groups Projects
Unverified Commit 5a774d26 authored by Thomas Woerner's avatar Thomas Woerner Committed by GitHub
Browse files

Merge pull request #1306 from rjeffman/use_azure_loops

upstream CI: Use Azure 'loops' to create stages
parents cb322691 3e405fd0
No related branches found
No related tags found
No related merge requests found
...@@ -5,72 +5,64 @@ trigger: ...@@ -5,72 +5,64 @@ trigger:
pool: pool:
vmImage: 'ubuntu-20.04' vmImage: 'ubuntu-20.04'
stages: variables:
ansible_version: "-core >=2.16,<2.17"
ansible_latest: "-core"
ansible_minimum: "-core <2.16"
distros: "fedora-latest,c9s,fedora-rawhide"
# Fedora stages:
- stage: Fedora_Ansible_Latest - stage: fedora_latest_ansible_latest
dependsOn: [] dependsOn: []
jobs: jobs:
- template: templates/group_tests.yml - template: templates/group_tests.yml
parameters: parameters:
build_number: $(Build.BuildNumber) build_number: $(Build.BuildNumber)
distro: fedora-latest distro: fedora-latest
ansible_version: "-core" ansible_version: ${{ variables.ansible_latest }}
skip_git_test: true skip_git_test: true
# Fedora - stage: fedora_latest_ansible_2_15
- stage: Fedora_Ansible_min_supported
dependsOn: [] dependsOn: []
jobs: jobs:
- template: templates/group_tests.yml - template: templates/group_tests.yml
parameters: parameters:
build_number: $(Build.BuildNumber) build_number: $(Build.BuildNumber)
distro: fedora-latest distro: fedora-latest
ansible_version: "-core <2.16" ansible_version: ${{ variables.ansbile_minimum }}
skip_git_test: true skip_git_test: true
# Fedora # Supported distros
- stage: Fedora_Latest - ${{ each distro in split(variables.distros, ',') }}:
dependsOn: [] - stage: ${{ replace(distro, '-', '_') }}_ansible_2_16
jobs: dependsOn: []
- template: templates/group_tests.yml jobs:
parameters: - template: templates/group_tests.yml
build_number: $(Build.BuildNumber) parameters:
distro: fedora-latest build_number: $(Build.BuildNumber)
skip_git_test: true distro: ${{ distro }}
ansible_version: "-core >=2.16,<2.17" ansible_version: ${{ variables.ansible_version }}
skip_git_test: true
test_galaxy: false
# Galaxy on Fedora # Galaxy on Fedora
- stage: Galaxy_Fedora_Latest - stage: galaxy_fedora_latest_ansible_2_16
dependsOn: [] dependsOn: []
jobs: jobs:
- template: templates/group_tests.yml - template: templates/group_tests.yml
parameters: parameters:
build_number: $(Build.BuildNumber) build_number: $(Build.BuildNumber)
distro: fedora-latest distro: fedora-latest
ansible_version: "-core >=2.16,<2.17" ansible_version: ${{ variables.ansible_version }}
skip_git_test: true skip_git_test: true
test_galaxy: true test_galaxy: true
# CentOS 9 Stream # CentOS 8 Stream, latest supported Ansible version.
- stage: CentOS_9_Stream
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: c9s
ansible_version: "-core >=2.16,<2.17"
skip_git_test: true
# CentOS 8 Stream
- stage: CentOS_8_Stream - stage: c8s_ansible_2_16
dependsOn: [] dependsOn: []
jobs: jobs:
- template: templates/group_tests.yml - template: templates/group_tests.yml
......
--- ---
schedules: schedules:
- cron: "0 0 * * 0" - cron: "0 0 * * 0"
displayName: Weekly Sunday midnight build displayName: Weekly Sunday midnight build
...@@ -13,46 +12,24 @@ trigger: none ...@@ -13,46 +12,24 @@ trigger: none
pool: pool:
vmImage: 'ubuntu-24.04' vmImage: 'ubuntu-24.04'
variables: { distros: "fedora-latest,fedora-rawhide,c9s" }
stages: stages:
- ${{ each distro in split(variables.distros, ',') }}:
- stage: build_${{ join('_', split(distro, '-')) }}
dependsOn: []
jobs:
- template: templates/build_container.yml
parameters:
distro: ${{ distro }}
# Special case for CentOS 8 Stream
- stage: CentOS_8_Stream - stage: CentOS_8_Stream
dependsOn: [] dependsOn: []
jobs: jobs:
- template: templates/build_container.yml - template: templates/build_container.yml
parameters: parameters:
job_name_suffix: C8S
distro: c8s distro: c8s
# ansible-core 2.17+ cannot be used to deploy on CentOS 8 Stream. # ansible-core 2.17+ cannot be used to deploy on CentOS 8 Stream.
ansible_core_version: "<2.17" ansible_core_version: "<2.17"
- stage: CentOS_9_Stream
dependsOn: []
jobs:
- template: templates/build_container.yml
parameters:
job_name_suffix: C9S
distro: c9s
- stage: CentOS_10_Stream
dependsOn: []
jobs:
- template: templates/build_container.yml
parameters:
job_name_suffix: C10S
distro: c10s
- stage: Fedora_Latest
dependsOn: []
jobs:
- template: templates/build_container.yml
parameters:
job_name_suffix: FedoraLatest
distro: fedora-latest
- stage: Fedora_Rawhide
dependsOn: []
jobs:
- template: templates/build_container.yml
parameters:
job_name_suffix: FedoraRawhide
distro: fedora-rawhide
...@@ -12,115 +12,68 @@ trigger: none ...@@ -12,115 +12,68 @@ trigger: none
pool: pool:
vmImage: 'ubuntu-20.04' vmImage: 'ubuntu-20.04'
stages: variables:
# We need to have two sets, as c8s is not supported by all ansible versions
# Fedora recent_distros: "fedora-latest,fedora-rawhide,c9s"
distros: "fedora-latest,fedora-rawhide,c9s,c8s"
- stage: fedora_latest_Ansible_Core_2_15 ansible_latest: "-core"
dependsOn: [] ansible_minimum: "-core <2.16"
jobs: ansible_version: "-core >=2.16,<2.17"
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: fedora-latest
ansible_version: "-core >=2.15,<2.16"
skip_git_test: true
- stage: fedora_latest_Ansible_Core_2_16
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: fedora-latest
ansible_version: ""
skip_git_test: true
- stage: fedora_latest_Ansible_Core_2_17
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: fedora-latest
ansible_version: "-core >=2.17"
skip_git_test: true
# Galaxy on Fedora
- stage: Galaxy_fedora_latest_Ansible_Core_2_17
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: fedora-latest
ansible_version: "-core >=2.17,<2.18"
skip_git_test: true
test_galaxy: true
# Fedora Rawhide
- stage: fedora_rawhide_Ansible_Core_2_17 stages:
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: fedora-rawhide
ansible_version: "-core >=2.17,<2.18"
skip_git_test: true
# CentoOS 9 Stream
- stage: c9s_Ansible_Core_2_15
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: c9s
ansible_version: "-core >=2.15,<2.16"
skip_git_test: true
- stage: c9s_Ansible_Core_2_16
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: c9s
ansible_version: "-core >=2.16,<2.17"
skip_git_test: true
- stage: c9s_Ansible_Core_2_17
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: c9s
ansible_version: "-core >=2.17,<2.18"
skip_git_test: true
# CentOS 8 Stream only works up to ansible-core 2.16.z
- stage: c8s_Ansible_Core_2_15
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: c8s
ansible_version: "-core >=2.15,<2.16"
skip_git_test: true
- stage: c8s_Ansible_Core_2_16 # Minimum ansible
dependsOn: []
jobs: - ${{ each distro in split(variables.distros, ',') }}:
- template: templates/group_tests.yml - stage: ${{ replace(distro, '-', '_') }}_ansible_2_15
parameters: dependsOn: []
build_number: $(Build.BuildNumber) jobs:
distro: c8s - template: templates/group_tests.yml
ansible_version: "-core >=2.16,<2.17" parameters:
skip_git_test: true build_number: $(Build.BuildNumber)
distro: fedora-latest
ansible_version: ${{ variables.ansible_minimum }}
skip_git_test: true
test_galaxy: false
# Latest ansible
- ${{ each distro in split(variables.recent_distros, ',') }}:
- stage: ${{ replace(distro, '-', '_') }}_ansible_latest
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: ${{ distro }}
ansible_version: ${{ variables.ansible_latest }}
skip_git_test: true
test_galaxy: false
# Selected ansible-core version
- ${{ each distro in split(variables.distros, ',') }}:
- stage: ${{ replace(distro, '-', '_') }}_ansible_2_16
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: ${{ distro }}
ansible_version: ${{ variables.ansible_version }}
skip_git_test: true
test_galaxy: false
# Galaxy collection with selected ansible-core version
- ${{ each distro in split(variables.distros, ',') }}:
- stage: galaxy_${{ replace(distro, '-', '_') }}_asible_2_16
dependsOn: []
jobs:
- template: templates/group_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: ${{ distro }}
ansible_version: ${{ variables.ansible_version }}
skip_git_test: true
test_galaxy: true
...@@ -5,65 +5,35 @@ trigger: ...@@ -5,65 +5,35 @@ trigger:
pool: pool:
vmImage: 'ubuntu-20.04' vmImage: 'ubuntu-20.04'
variables:
distros: "fedora-latest,c9s,c8s,fedora-rawhide"
ansible_version: "-core >=2.15,<2.16"
stages: stages:
# Fedora # Test with repository in all distros
- stage: Fedora_Latest - ${{ each distro in split(variables.distros, ',') }}:
dependsOn: [] - stage: ${{ replace(distro, '-', '_') }}_ansible_2_16
jobs: dependsOn: []
- template: templates/run_tests.yml jobs:
parameters: - template: templates/run_tests.yml
build_number: $(Build.BuildNumber) parameters:
distro: fedora-latest build_number: $(Build.BuildNumber)
ansible_version: "-core >=2.15,<2.16" distro: ${{ distro }}
skip_git_test: false ansible_version: ${{ variables.ansible_version }}
skip_git_test: false
test_galaxy: false
# Galaxy on Fedora # Galaxy on Fedora
- stage: Galaxy_Fedora_Latest - stage: galaxy_fedora_latest_ansible_2_16
dependsOn: [] dependsOn: []
jobs: jobs:
- template: templates/run_tests.yml - template: templates/run_tests.yml
parameters: parameters:
build_number: $(Build.BuildNumber) build_number: $(Build.BuildNumber)
distro: fedora-latest distro: fedora-latest
ansible_version: "-core >=2.15,<2.16" ansible_version: ${{ variables.ansible_version }}
skip_git_test: false skip_git_test: false
test_galaxy: true test_galaxy: true
# CentOS 9 Stream
- stage: CentOS_9_Stream
dependsOn: []
jobs:
- template: templates/run_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: c9s
ansible_version: "-core >=2.15,<2.16"
skip_git_test: false
# CentOS 8 Stream
- stage: CentOS_8_Stream
dependsOn: []
jobs:
- template: templates/run_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: c8s
ansible_version: "-core >=2.15,<2.16"
skip_git_test: false
# Rawhide
- stage: Fedora_Rawhide
dependsOn: []
jobs:
- template: templates/run_tests.yml
parameters:
build_number: $(Build.BuildNumber)
distro: fedora-rawhide
ansible_version: "-core >=2.15,<2.16"
skip_git_test: false
--- ---
parameters: parameters:
- name: job_name_suffix
type: string
- name: distro - name: distro
type: string type: string
- name: python_version - name: python_version
...@@ -11,7 +9,7 @@ parameters: ...@@ -11,7 +9,7 @@ parameters:
default: "" default: ""
jobs: jobs:
- job: BuildTestImage${{ parameters.job_name_suffix }} - job: BuildTestImage_${{ join('_', split(parameters.distro, '-')) }}
displayName: Build ${{ parameters.distro }} test container displayName: Build ${{ parameters.distro }} test container
steps: steps:
- task: UsePythonVersion@0 - task: UsePythonVersion@0
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment