diff --git a/playbooks/ansible-cloud/py39/pre.yaml b/playbooks/ansible-cloud/py39/pre.yaml new file mode 100644 index 000000000..df5a135cc --- /dev/null +++ b/playbooks/ansible-cloud/py39/pre.yaml @@ -0,0 +1,11 @@ +--- +- hosts: all + tasks: + - name: Ensure python3.9 is present (Red Hat) + become: true + package: + name: + - python3.9 + - gcc + state: present + when: ansible_os_family == "RedHat" diff --git a/zuul.d/ansible-cloud-jobs.yaml b/zuul.d/ansible-cloud-jobs.yaml index f4653bc6f..872860903 100644 --- a/zuul.d/ansible-cloud-jobs.yaml +++ b/zuul.d/ansible-cloud-jobs.yaml @@ -173,10 +173,10 @@ semaphore: ansible-test-cloud-integration-vmware-rest - job: - name: ansible-test-cloud-integration-vmware-rest-python38 + name: ansible-test-cloud-integration-vmware-rest-python39 parent: ansible-test-cloud-integration-vmware-rest vars: - ansible_test_python: 3.8 + ansible_test_python: 3.9 ##### units @@ -253,7 +253,7 @@ timeout: 3600 vars: ansible_test_command: integration - ansible_test_python: 3.8 + ansible_test_python: 3.9 ansible_test_retry_on_error: true ansible_test_requirement_files: - requirements.txt @@ -388,7 +388,7 @@ timeout: 3600 vars: ansible_test_command: integration - ansible_test_python: 3.8 + ansible_test_python: 3.9 ansible_test_integration_targets: "" ansible_collections_repo: "{{ zuul.project.canonical_name }}" @@ -408,17 +408,41 @@ ansible_test_constraint_files: - tests/unit/constraints.txt +- job: + name: ansible-test-units-amazon-aws-python39 + parent: ansible-test-units-base-python39 + vars: + ansible_collections_repo: "{{ zuul.project.canonical_name }}" + ansible_test_requirement_files: + - requirements.txt + - test-requirements.txt + # Ansible-test picks up requirements and constraints from + # tests/unit when running in docker, mirror this + - tests/unit/requirements.txt + ansible_test_constraint_files: + - tests/unit/constraints.txt + - job: name: ansible-test-units-amazon-cloud-python38 parent: ansible-test-units-base-python38 vars: ansible_collections_repo: "{{ zuul.project.canonical_name }}" +- job: + name: ansible-test-units-amazon-cloud-python39 + parent: ansible-test-units-base-python39 + vars: + ansible_collections_repo: "{{ zuul.project.canonical_name }}" + # TODO(Gonéri): do we still need this flavor of the job? - job: name: ansible-test-units-community-aws-python38 parent: ansible-test-units-amazon-aws-python38 +- job: + name: ansible-test-units-community-aws-python39 + parent: ansible-test-units-amazon-aws-python39 + #### sanity - job: name: ansible-test-sanity-aws-ansible-python38 @@ -451,6 +475,12 @@ vars: ansible_collections_repo: "{{ zuul.project.canonical_name }}" +- job: + name: ansible-test-units-cloud-common-python39 + parent: ansible-test-units-base-python39 + vars: + ansible_collections_repo: "{{ zuul.project.canonical_name }}" + ### Community OKD - job: name: ansible-test-units-community-okd-python38 @@ -534,6 +564,14 @@ - name: github.com/ansible/ansible override-checkout: stable-2.13 +- job: + name: ansible-test-units-community-okd-python39 + parent: ansible-test-units-base-python39 + required-projects: + - name: github.com/openshift/community.okd + vars: + ansible_collections_repo: github.com/openshift/community.okd + ### Kubernetes Core - job: name: ansible-test-units-kubernetes-core-python38 @@ -545,13 +583,21 @@ vars: ansible_collections_repo: github.com/ansible-collections/kubernetes.core +- job: + name: ansible-test-units-kubernetes-core-python39 + parent: ansible-test-units-base-python39 + required-projects: + - name: github.com/ansible-collections/kubernetes.core + vars: + ansible_collections_repo: github.com/ansible-collections/kubernetes.core + - job: name: ansible-test-cloud-integration-kubernetes-core dependencies: - name: build-ansible-collection - name: ansible-test-splitter pre-run: - - playbooks/ansible-cloud/py38/pre.yaml + - playbooks/ansible-cloud/py39/pre.yaml - playbooks/ansible-cloud/k8s/pre.yaml run: playbooks/ansible-test-base/run.yaml files: @@ -564,7 +610,7 @@ nodeset: centos-8-stream-large vars: ansible_test_command: integration - ansible_test_python: 3.8 + ansible_test_python: 3.9 ansible_test_retry_on_error: true ansible_test_integration_targets: "{{ child.targets_to_test[zuul.job] }}" ansible_collections_repo: "github.com/ansible-collections/{{ zuul.job.split('-')[1] }}" diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml index 3144a3497..11a66b513 100644 --- a/zuul.d/jobs.yaml +++ b/zuul.d/jobs.yaml @@ -182,6 +182,15 @@ vars: ansible_collections_repo: github.com/ansible-collections/ansible.posix +- job: + name: ansible-test-units-posix-python39 + parent: ansible-test-units-base-python39 + required-projects: + - name: github.com/ansible-collections/ansible.posix + timeout: 3600 + vars: + ansible_collections_repo: github.com/ansible-collections/ansible.posix + - job: name: ansible-test-units-base parent: unittests @@ -205,6 +214,14 @@ # NOTE(pabelanger): ansible_test_python to be removed ansible_test_python: 3.8 +- job: + name: ansible-test-units-base-python39 + parent: ansible-test-units-base + nodeset: fedora-35-1vcpu + abstract: true + vars: + ansible_test_python: 3.9 + - job: name: ansible-test-units-base-python27 parent: ansible-test-units-base diff --git a/zuul.d/project-templates.yaml b/zuul.d/project-templates.yaml index 9a8104957..48c139905 100644 --- a/zuul.d/project-templates.yaml +++ b/zuul.d/project-templates.yaml @@ -60,6 +60,7 @@ - ansible-test-sanity-aws-ansible-2.9-python38 - ansible-test-sanity-aws-ansible-2.11-python38 - ansible-test-units-amazon-aws-python38 + - ansible-test-units-amazon-aws-python39 - build-ansible-collection: required-projects: - name: github.com/ansible-collections/ansible.utils @@ -160,6 +161,7 @@ - ansible-test-sanity-docker-stable-2.11 - ansible-test-sanity-docker-stable-2.12 - ansible-test-units-community-aws-python38 + - ansible-test-units-community-aws-python39 - build-ansible-collection: required-projects: - name: github.com/ansible-collections/amazon.aws @@ -249,6 +251,7 @@ jobs: &ansible-collections-amazon-cloud-generator-jobs - ansible-tox-linters - ansible-tox-py38 + - ansible-tox-py39 gate: jobs: *ansible-collections-amazon-cloud-generator-jobs @@ -569,6 +572,7 @@ - ansible-galaxy-importer: voting: false - ansible-test-units-community-okd-python38 + - ansible-test-units-community-okd-python39 - ansible-test-sanity-okd-downstream-devel - ansible-test-sanity-okd-downstream-milestone - ansible-test-sanity-okd-downstream-stable-2.11 @@ -581,7 +585,7 @@ jobs: &ansible-collections-cloud-common-jobs - ansible-test-sanity-docker-devel - ansible-test-sanity-docker-milestone - - ansible-test-cloud-integration-vmware-rest-python38: + - ansible-test-cloud-integration-vmware-rest-python39: required-projects: - name: github.com/ansible-collections/vmware.vmware_rest - build-ansible-collection: @@ -642,7 +646,7 @@ name: ansible-collections-community-vmware-rest check: jobs: &ansible-collections-community-vmware-rest-jobs - - ansible-test-cloud-integration-vmware-rest-python38 + - ansible-test-cloud-integration-vmware-rest-python39 - build-ansible-collection: required-projects: - name: github.com/ansible-collections/cloud.common @@ -668,14 +672,14 @@ name: ansible-collections-community-vmware-rest-code-generator check: jobs: - - ansible-test-cloud-integration-vmware-rest-python38 + - ansible-test-cloud-integration-vmware-rest-python39 - build-ansible-collection: required-projects: - name: github.com/ansible-collections/cloud.common - name: github.com/ansible-collections/community.vmware gate: jobs: - - ansible-test-cloud-integration-vmware-rest-python38 + - ansible-test-cloud-integration-vmware-rest-python39 - build-ansible-collection: required-projects: - name: github.com/ansible-collections/cloud.common @@ -1235,6 +1239,7 @@ - ansible-test-sanity-docker-stable-2.11 - ansible-test-sanity-docker-stable-2.12 - ansible-test-units-posix + - ansible-test-units-posix-python39 gate: jobs: *ansible-collections-ansible-posix-units-jobs