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 - stable-* variables: - name: checkoutPath value: ansible_collections/community/crypto - name: coverageBranches value: main - name: pipelinesCoverage value: coverage - name: entryPoint value: tests/utils/shippable/shippable.sh - name: fetchDepth value: 0 resources: containers: - container: default image: quay.io/ansible/azure-pipelines-test-container:1.7.1 pool: Standard stages: ### Sanity & units - stage: Ansible_devel displayName: Sanity & Units devel dependsOn: [] jobs: - template: templates/matrix.yml parameters: targets: - name: Sanity test: 'devel/sanity/1' - name: Sanity Extra # Only on devel test: 'devel/sanity/extra' - name: Units test: 'devel/units/1' - stage: Ansible_2_10 displayName: Sanity & Units 2.10 dependsOn: [] jobs: - template: templates/matrix.yml parameters: targets: - name: Sanity test: '2.10/sanity/1' - name: Units test: '2.10/units/1' - stage: Ansible_2_9 displayName: Sanity & Units 2.9 dependsOn: [] jobs: - template: templates/matrix.yml parameters: targets: - name: Sanity test: '2.9/sanity/1' - name: Units test: '2.9/units/1' ### Docker - stage: Docker_devel displayName: Docker devel dependsOn: [] jobs: - template: templates/matrix.yml parameters: testFormat: devel/linux/{0}/1 targets: - name: CentOS 6 test: centos6 - name: CentOS 7 test: centos7 - name: CentOS 8 test: centos8 - name: Fedora 30 test: fedora30 - name: Fedora 31 test: fedora31 - name: Fedora 32 test: fedora32 - name: openSUSE 15 py2 test: opensuse15py2 - name: openSUSE 15 py3 test: opensuse15 - name: Ubuntu 16.04 test: ubuntu1604 - name: Ubuntu 18.04 test: ubuntu1804 - name: Ubuntu 20.04 test: ubuntu2004 - stage: Docker_2_10 displayName: Docker 2.10 dependsOn: [] jobs: - template: templates/matrix.yml parameters: testFormat: 2.10/linux/{0}/1 targets: - name: CentOS 6 test: centos6 - name: CentOS 7 test: centos7 - name: CentOS 8 test: centos8 - name: Fedora 30 test: fedora30 - name: Fedora 31 test: fedora31 - name: Fedora 32 test: fedora32 - name: openSUSE 15 py2 test: opensuse15py2 - name: openSUSE 15 py3 test: opensuse15 - name: Ubuntu 16.04 test: ubuntu1604 - name: Ubuntu 18.04 test: ubuntu1804 - stage: Docker_2_9 displayName: Docker 2.9 dependsOn: [] jobs: - template: templates/matrix.yml parameters: testFormat: 2.9/linux/{0}/1 targets: - name: CentOS 6 test: centos6 - name: CentOS 7 test: centos7 - name: CentOS 8 test: centos8 - name: Fedora 30 test: fedora30 - name: Fedora 31 test: fedora31 # fedora32 doesn't exist in 2.9 # - name: Fedora 32 # test: fedora32 - name: openSUSE 15 py2 test: opensuse15py2 - name: openSUSE 15 py3 test: opensuse15 - name: Ubuntu 16.04 test: ubuntu1604 - name: Ubuntu 18.04 test: ubuntu1804 ### Remote - stage: Remote_devel displayName: Remote devel dependsOn: [] jobs: - template: templates/matrix.yml parameters: testFormat: devel/{0}/1 targets: - name: OS X 10.11 test: osx/10.11 - name: macOS 10.15 test: macos/10.15 - name: macOS 11.1 test: macos/11.1 - name: RHEL 7.8 test: rhel/7.8 - name: RHEL 8.2 test: rhel/8.2 - name: FreeBSD 11.4 test: freebsd/11.4 - name: FreeBSD 12.2 test: freebsd/12.2 - stage: Remote_2_10 displayName: Remote 2.10 dependsOn: [] jobs: - template: templates/matrix.yml parameters: testFormat: 2.10/{0}/1 targets: - name: RHEL 7.8 test: rhel/7.8 - name: FreeBSD 12.1 test: freebsd/12.1 - stage: Remote_2_9 displayName: Remote 2.9 dependsOn: [] jobs: - template: templates/matrix.yml parameters: testFormat: 2.9/{0}/1 targets: - name: 'RHEL 7.8' test: 'rhel/7.8' ### cloud - stage: Cloud_devel displayName: Cloud devel dependsOn: [] jobs: - template: templates/matrix.yml parameters: nameFormat: Python {0} testFormat: devel/cloud/{0}/1 targets: - test: 2.6 - test: 2.7 - test: 3.5 - test: 3.6 - test: 3.7 - test: 3.8 - test: 3.9 - stage: Cloud_2_10 displayName: Cloud 2.10 dependsOn: [] jobs: - template: templates/matrix.yml parameters: nameFormat: Python {0} testFormat: 2.10/cloud/{0}/1 targets: - test: 3.6 - stage: Cloud_2_9 displayName: Cloud 2.9 dependsOn: [] jobs: - template: templates/matrix.yml parameters: nameFormat: Python {0} testFormat: 2.9/cloud/{0}/1 targets: - test: 3.5 ## Finally - stage: Summary condition: succeededOrFailed() dependsOn: - Ansible_devel - Ansible_2_10 - Ansible_2_9 - Remote_devel - Docker_devel - Cloud_devel - Remote_2_10 - Docker_2_10 - Cloud_2_10 - Remote_2_9 - Docker_2_9 - Cloud_2_9 jobs: - template: templates/coverage.yml