From 261732aa187a12adb696b975d7ac1c6e9c72a856 Mon Sep 17 00:00:00 2001 From: Sorin Sbarnea Date: Tue, 18 Dec 2018 20:00:53 +0000 Subject: [PATCH] Migrate linting to pre-commit Follows the same linting configuration that was implemented first in tripleo-quickstart-extras which makes used of pre-commit tool for managing all linters. This also avoids problems where a new linter release may break our gates because pre-commit always pins versions. Removes ansible from requirements.txt as it needs to be listed only in ansible-requirements.txt Change-Id: Ia229d3d58763d743bd19ad9099d7907561f3c77f Depends-On: https://review.openstack.org/#/c/627186/ (cherry picked from commit 8ac74a817704ca50674e6beaa91b792f62660942) --- .ansible-lint | 15 +++ .pre-commit-config.yaml | 41 ++++++ .yamllint | 6 + README.md | 4 +- ci-scripts/ansible-lint.sh | 15 --- defaults/main.yml | 6 +- infrared_plugin/main.yml | 79 ++++++------ meta/main.yml | 75 +++++------ requirements.txt | 1 - tasks/common/controller_post_scripts.yml | 1 + tasks/common/convert_ceph_params.yaml | 6 +- tasks/common/convert_cli_opts_params.yaml | 12 +- tasks/common/convert_nic_templates.yaml | 1 + tasks/common/convert_roles_data.yaml | 1 + tasks/common/create_http_test_scripts.yml | 4 +- ...ate_l3_agent_connectivity_check_script.yml | 1 + .../create_l3_agent_failover_check_script.yml | 1 + .../create_nova_actions_check_script.yml | 1 + tasks/common/create_workload.yml | 1 - tasks/common/load_roles_from_inventory.yaml | 3 +- .../queens_to_rocky_adjust_nic_templates.yaml | 1 + tasks/common/ssh_config_skip_host.yml | 1 + tasks/common/undercloud_validate_upgrade.yaml | 120 +++++++++--------- .../convert_roles_data.yaml | 21 +-- .../create-ffu-scripts.yaml | 1 + .../create-prepare-scripts.yaml | 17 +-- .../ffu_update_stack_outputs.yaml | 2 +- .../ffu_upgrade_ceph.yaml | 3 +- .../ffu_upgrade_converge.yaml | 2 +- tasks/fast-forward-upgrade/main.yml | 37 +++--- .../fast-forward-upgrade/overcloud_role.yaml | 4 +- .../undercloud-upgrade.yml | 1 + .../create-undercloud-update-scripts.yaml | 3 +- tasks/update/main.yml | 6 +- tasks/update/overcloud_update_converge.yml | 2 +- tasks/update/overcloud_update_prepare.yml | 3 +- tasks/update/overcloud_update_run.yml | 5 +- tasks/upgrade/controller_post_upgrade.yml | 1 + .../create-overcloud-upgrade-scripts.yaml | 16 +-- .../create-undercloud-upgrade-scripts.yaml | 7 +- tasks/upgrade/kill_ssh.yaml | 1 + tasks/upgrade/main.yml | 1 - tasks/upgrade/overcloud_upgrade_converge.yml | 2 +- tasks/upgrade/overcloud_upgrade_prepare.yml | 2 +- tasks/upgrade/overcloud_upgrade_run.yml | 2 +- tasks/upgrade/undercloud_ssl_camap.yaml | 3 +- test-requirements.txt | 4 +- tests/oooq-test.yaml | 4 +- tests/test.yml | 2 +- tox.ini | 47 ++----- zuul.d/layout.yaml | 1 + 51 files changed, 322 insertions(+), 274 deletions(-) create mode 100644 .ansible-lint create mode 100644 .pre-commit-config.yaml create mode 100644 .yamllint delete mode 100755 ci-scripts/ansible-lint.sh diff --git a/.ansible-lint b/.ansible-lint new file mode 100644 index 00000000..40888c42 --- /dev/null +++ b/.ansible-lint @@ -0,0 +1,15 @@ +parseable: true +rulesdir: + - ./ci-scripts/ansible_rules/ +quiet: false +skip_list: + - ANSIBLE0006 # Using command rather than module we have a few use cases + # where we need to use curl and rsync + - ANSIBLE0007 # Using command rather than an argument to e.g file + # we have a lot of 'rm' command and we should use file module instead + - ANSIBLE0010 # Package installs should not use latest. + # Sometimes we need to update some packages. + - ANSIBLE0013 # Use Shell only when shell functionality is required + - ANSIBLE0016 # Tasks that run when changed should likely be handlers + # this requires refactoring roles, skipping for now +verbosity: 1 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 00000000..bbb8f0fa --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,41 @@ +--- +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v2.0.0 + hooks: + - id: trailing-whitespace + - id: mixed-line-ending + - id: check-byte-order-marker + - id: check-executables-have-shebangs + - id: check-merge-conflict + - id: debug-statements + - id: flake8 + additional_dependencies: + - hacking<1.2.0,>=1.1.0 + - id: check-yaml + files: .*\.(yaml|yml)$ + - repo: https://github.com/adrienverge/yamllint.git + rev: v1.13.0 + hooks: + - id: yamllint + files: \.(yaml|yml)$ + types: [file, yaml] + entry: yamllint --strict -f parsable + - repo: https://github.com/ansible/ansible-lint + rev: v4.0.0 + hooks: + - id: ansible-lint + files: \.(yaml|yml)$ + entry: ansible-lint --force-color -v + - repo: https://github.com/openstack-dev/bashate.git + rev: 0.6.0 + hooks: + - id: bashate + entry: bashate --error . --verbose --ignore=E006,E040 + # Run bashate check for all bash scripts + # Ignores the following rules: + # E006: Line longer than 79 columns (as many scripts use jinja + # templating, this is very difficult) + # E040: Syntax error determined using `bash -n` (as many scripts + # use jinja templating, this will often fail and the syntax + # error will be discovered in execution anyway) diff --git a/.yamllint b/.yamllint new file mode 100644 index 00000000..69b4b415 --- /dev/null +++ b/.yamllint @@ -0,0 +1,6 @@ +--- +extends: default + +rules: + line-length: + max: 180 diff --git a/README.md b/README.md index dc3289af..815f6e36 100644 --- a/README.md +++ b/README.md @@ -134,7 +134,7 @@ An example playbook is provided in tests/test.yml: - hosts: undercloud gather_facts: true - become: yes + become: true become_method: sudo become_user: stack roles: @@ -153,7 +153,7 @@ scripts using this example playbook (duplicate from --- - hosts: undercloud gather_facts: true - become: yes + become: true become_method: sudo become_user: stack roles: diff --git a/ci-scripts/ansible-lint.sh b/ci-scripts/ansible-lint.sh deleted file mode 100755 index e2b068f7..00000000 --- a/ci-scripts/ansible-lint.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash - -# ANSIBLE0006: Using command rather than module -# we have a few use cases where we need to use curl and rsync -# ANSIBLE0007: Using command rather than an argument to e.g file -# we have a lot of 'rm' command and we should use file module instead -# ANSIBLE0010: Package installs should not use latest. -# Sometimes we need to update some packages. -# ANSIBLE0012: Commands should not change things if nothing needs doing -# ANSIBLE0013: Use Shell only when shell functionality is required -# ANSIBLE0016: Tasks that run when changed should likely be handlers -# this requires refactoring roles, skipping for now -SKIPLIST="ANSIBLE0006,ANSIBLE0007,ANSIBLE0010,ANSIBLE0012,ANSIBLE0013,ANSIBLE0016" - -ansible-lint -vvv -x $SKIPLIST ./ -R -r ./ci-scripts/ansible_rules diff --git a/defaults/main.yml b/defaults/main.yml index fe26ebf1..e44e642b 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -43,7 +43,7 @@ use_oooq: false # Running in tripleo ci tripleo_ci: false -#rc files: +# rc files: undercloud_rc: "{{ working_dir }}/stackrc" overcloud_rc: "{{ working_dir }}/{{ overcloud_stack_name }}rc" @@ -66,7 +66,7 @@ workload_launch_post_composable_upgrade: false # note that both UC upgrade and update use the same template undercloud_upgrade_template: undercloud_upgrade.sh.j2 -undercloud_update_template: undercloud_upgrade.sh.j2 +undercloud_update_template: undercloud_upgrade.sh.j2 overcloud_upgrade_prepare_template: overcloud_upgrade_prepare.sh.j2 overcloud_upgrade_run_template: overcloud_upgrade_run.sh.j2 overcloud_upgrade_converge_template: overcloud_upgrade_converge.sh.j2 @@ -233,7 +233,7 @@ overcloud_update_multibooks: false overcloud_upgrade_playbooks: ['upgrade_steps_playbook.yaml', 'deploy_steps_playbook.yaml', 'post_upgrade_steps_playbook.yaml'] # Ansible playbooks executed during "overcloud update run" -overcloud_update_playbooks: ['update_steps_playbook.yaml', 'deploy_steps_playbook.yaml' ] +overcloud_update_playbooks: ['update_steps_playbook.yaml', 'deploy_steps_playbook.yaml'] # Post upgrade/update nova actions tests nova_actions_check: false diff --git a/infrared_plugin/main.yml b/infrared_plugin/main.yml index 66f47fbf..e06fc6ce 100644 --- a/infrared_plugin/main.yml +++ b/infrared_plugin/main.yml @@ -3,7 +3,7 @@ - hosts: undercloud gather_facts: true - become: yes + become: true become_method: sudo become_user: stack @@ -11,73 +11,72 @@ - name: Set upgrade workload launch set_fact: - workload_launch: true + workload_launch: true when: install.upgrade.workload - name: Set upgrade workload image set_fact: - workload_image_url: "{{ install.upgrade.workloadimage }}" + workload_image_url: "{{ install.upgrade.workloadimage }}" when: install.upgrade.workloadimage - name: Set upgrade workload memory set_fact: - workload_memory: "{{ install.upgrade.workloadmemory }}" - when: install.upgrade.workload + workload_memory: "{{ install.upgrade.workloadmemory }}" - name: Set upgrade workload user set_fact: - workload_user: "{{ install.upgrade.workloaduser }}" + workload_user: "{{ install.upgrade.workloaduser }}" - name: Set upgrade workload disk size set_fact: - workload_disk: "{{ install.upgrade.workloaddisk }}" + workload_disk: "{{ install.upgrade.workloaddisk }}" - name: Set upgrade workload vcpus set_fact: - workload_vcpu: "{{ install.upgrade.workloadvcpu }}" + workload_vcpu: "{{ install.upgrade.workloadvcpu }}" - name: Set upgrade workload swap set_fact: - workload_swap: "{{ install.upgrade.workloadswap }}" + workload_swap: "{{ install.upgrade.workloadswap }}" - name: Set upgrade workload post_composable_upgrade launch set_fact: - workload_launch_post_composable_upgrade: true + workload_launch_post_composable_upgrade: true when: install.upgrade.postcomposable.workload - name: Set undercloud upgrade set_fact: - undercloud_upgrade: true + undercloud_upgrade: true when: install.undercloud.upgrade - name: Set undercloud reboot set_fact: - undercloud_reboot: true + undercloud_reboot: true when: install.undercloud.reboot - name: Set overcloud upgrade set_fact: - overcloud_upgrade: true + overcloud_upgrade: true when: install.overcloud.upgrade - name: Set upgrade workarounds set_fact: - upgrade_workarounds: true + upgrade_workarounds: true when: install.upgrade.workarounds - name: Set upstream container images set_fact: - upstream_container_images: false + upstream_container_images: false when: not install.upstream.container.images - name: Set use docker local registry set_fact: - use_local_docker_registry: false + use_local_docker_registry: false when: not install.upgrade.docker.local.registry - name: Set docker registry url set_fact: - docker_registry_url: "{{ install.upgrade.docker.registry.url }}" + docker_registry_url: "{{ install.upgrade.docker.registry.url }}" - name: Set undercloud update set_fact: @@ -91,110 +90,110 @@ - name: Set updates workarounds set_fact: - updates_workarounds: true + updates_workarounds: true when: install.updates.workarounds - name: Set upgrade floating ip check set_fact: - l3_agent_connectivity_check: true + l3_agent_connectivity_check: true when: install.upgrade.floatingip.check - name: Set upgrade compute host evacuate set_fact: - compute_evacuate: true + compute_evacuate: true when: install.upgrade.compute.evacuate - name: Set deployment-files base set_fact: - container_registry_file: "{{ install.deployment.files | basename }}/docker-images.yaml" + container_registry_file: "{{ install.deployment.files | basename }}/docker-images.yaml" when: install.deployment.files - name: Set upgrade controller reboot set_fact: - controller_reboot: true + controller_reboot: true when: install.upgrade.controller.reboot - name: Set upgrade controller post set_fact: - controller_upgrade_post: true + controller_upgrade_post: true when: install.upgrade.controller.post - name: Set upgrade force reboot set_fact: - force_reboot: true + force_reboot: true when: install.upgrade.reboot.force - name: Set upgrade remove packages set_fact: - upgrade_remove_rpm: true + upgrade_remove_rpm: true when: install.upgrade.remove.rpm - name: Set upgrade HCI set_fact: - upgrade_hci: true + upgrade_hci: true when: install.upgrade.hci - name: Set overcloud credentials file set_fact: - overcloud_rc: "{{ working_dir }}/{{ install.overcloud.stack }}rc" + overcloud_rc: "{{ working_dir }}/{{ install.overcloud.stack }}rc" - name: Set overcloud stack name set_fact: - overcloud_stack_name: "{{ install.overcloud.stack }}" + overcloud_stack_name: "{{ install.overcloud.stack }}" - name: Set undercloud FFU upgrade set_fact: - ffu_undercloud_upgrade: true + ffu_undercloud_upgrade: true when: install.undercloud.ffu.upgrade - name: Set undercloud FFU upgrade releases set_fact: - ffu_undercloud_releases: "{{ install.undercloud.ffu.releases }}" + ffu_undercloud_releases: "{{ install.undercloud.ffu.releases }}" - name: Set undercloud FFU upgrade repo set_fact: - ffu_undercloud_repo_type: "{{ install.undercloud.ffu.repo }}" + ffu_undercloud_repo_type: "{{ install.undercloud.ffu.repo }}" - name: Set FFU upgrade workarounds set_fact: - ffu_upgrade_workarounds: true + ffu_upgrade_workarounds: true when: install.upgrade.ffu.workarounds - name: Set overcloud FFU upgrade set_fact: - ffu_overcloud_upgrade: true + ffu_overcloud_upgrade: true when: install.overcloud.ffu.upgrade - name: Set overcloud FFU upgrade releases set_fact: - ffu_overcloud_releases: "{{ install.overcloud.ffu.releases }}" + ffu_overcloud_releases: "{{ install.overcloud.ffu.releases }}" - name: Set overcloud FFU upgrade repo set_fact: - ffu_overcloud_repo_type: "{{ install.overcloud.ffu.repo }}" + ffu_overcloud_repo_type: "{{ install.overcloud.ffu.repo }}" - name: Set overcloud FFU bulk set_fact: - ffu_bulk: false + ffu_bulk: false when: not install.overcloud.ffu.bulk - name: Set overcloud FFU compute rolling set_fact: - ffu_computes_rolling: true + ffu_computes_rolling: true when: install.overcloud.ffu.compute.rolling - name: Set overcloud ssh user name set_fact: - overcloud_ssh_user: "{{ install.overcloud.ssh.user }}" + overcloud_ssh_user: "{{ install.overcloud.ssh.user }}" - name: Set upgrade l3 agent failover check set_fact: - l3_agent_failover_check: true + l3_agent_failover_check: true when: install.upgrade.l3agent.failover.check - name: Set upgrade nova_actions_check set_fact: - nova_actions_check: true + nova_actions_check: true when: install.upgrade.nova.actions.check roles: - tripleo-upgrade diff --git a/meta/main.yml b/meta/main.yml index a284d86f..f7735229 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -1,3 +1,4 @@ +--- galaxy_info: author: your name description: your description @@ -24,15 +25,15 @@ galaxy_info: # this branch. If travis integration is cofigured, only notification for this # branch will be accepted. Otherwise, in all cases, the repo's default branch # (usually master) will be used. - #github_branch: + # github_branch: # # Below are all platforms currently available. Just uncomment # the ones that apply to your role. If you don't see your # platform on this list, let us know and we'll get it added! # - #platforms: - #- name: OpenBSD + # platforms: + # - name: OpenBSD # versions: # - all # - 5.6 @@ -41,7 +42,7 @@ galaxy_info: # - 5.9 # - 6.0 # - 6.1 - #- name: Fedora + # - name: Fedora # versions: # - all # - 16 @@ -54,13 +55,13 @@ galaxy_info: # - 23 # - 24 # - 25 - #- name: DellOS + # - name: DellOS # versions: # - all # - 10 # - 6 # - 9 - #- name: MacOSX + # - name: MacOSX # versions: # - all # - 10.10 @@ -69,46 +70,46 @@ galaxy_info: # - 10.7 # - 10.8 # - 10.9 - #- name: Synology + # - name: Synology # versions: # - all # - any - #- name: Junos + # - name: Junos # versions: # - all # - any - #- name: GenericBSD + # - name: GenericBSD # versions: # - all # - any - #- name: Void Linux + # - name: Void Linux # versions: # - all # - any - #- name: GenericLinux + # - name: GenericLinux # versions: # - all # - any - #- name: NXOS + # - name: NXOS # versions: # - all # - any - #- name: IOS + # - name: IOS # versions: # - all # - any - #- name: Amazon + # - name: Amazon # versions: # - all # - 2013.03 # - 2013.09 # - 2016.03 # - 2016.09 - #- name: ArchLinux + # - name: ArchLinux # versions: # - all # - any - #- name: FreeBSD + # - name: FreeBSD # versions: # - all # - 10.0 @@ -126,7 +127,7 @@ galaxy_info: # - 9.1 # - 9.2 # - 9.3 - #- name: Ubuntu + # - name: Ubuntu # versions: # - all # - lucid @@ -144,7 +145,7 @@ galaxy_info: # - xenial # - yakkety # - zesty - #- name: Debian + # - name: Debian # versions: # - all # - etch @@ -154,25 +155,25 @@ galaxy_info: # - squeeze # - stretch # - wheezy - #- name: Alpine + # - name: Alpine # versions: # - all # - any - #- name: EL + # - name: EL # versions: # - all # - 5 # - 6 # - 7 - #- name: Windows + # - name: Windows # versions: # - all # - 2012R2 - #- name: SmartOS + # - name: SmartOS # versions: # - all # - any - #- name: opensuse + # - name: opensuse # versions: # - all # - 12.1 @@ -180,7 +181,7 @@ galaxy_info: # - 12.3 # - 13.1 # - 13.2 - #- name: SLES + # - name: SLES # versions: # - all # - 10SP3 @@ -192,11 +193,11 @@ galaxy_info: # - 11SP4 # - 12 # - 12SP1 - #- name: GenericUNIX + # - name: GenericUNIX # versions: # - all # - any - #- name: Solaris + # - name: Solaris # versions: # - all # - 10 @@ -204,21 +205,21 @@ galaxy_info: # - 11.1 # - 11.2 # - 11.3 - #- name: eos + # - name: eos # versions: # - all # - Any galaxy_tags: [] - # List tags for your role here, one per line. A tag is - # a keyword that describes and categorizes the role. - # Users find roles by searching for tags. Be sure to - # remove the '[]' above if you add tags to this list. - # - # NOTE: A tag is limited to a single word comprised of - # alphanumeric characters. Maximum 20 tags per role. + # List tags for your role here, one per line. A tag is + # a keyword that describes and categorizes the role. + # Users find roles by searching for tags. Be sure to + # remove the '[]' above if you add tags to this list. + # + # NOTE: A tag is limited to a single word comprised of + # alphanumeric characters. Maximum 20 tags per role. dependencies: [] - # List your role dependencies here, one per line. - # Be sure to remove the '[]' above if you add dependencies - # to this list. \ No newline at end of file +# List your role dependencies here, one per line. +# Be sure to remove the '[]' above if you add dependencies +# to this list. diff --git a/requirements.txt b/requirements.txt index 885c2cb6..ac56c37e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1 @@ pbr>=1.6 -ansible diff --git a/tasks/common/controller_post_scripts.yml b/tasks/common/controller_post_scripts.yml index de3665d1..ddb3d92f 100644 --- a/tasks/common/controller_post_scripts.yml +++ b/tasks/common/controller_post_scripts.yml @@ -1,3 +1,4 @@ +--- - name: register controller nodes shell: | source {{ undercloud_rc }} diff --git a/tasks/common/convert_ceph_params.yaml b/tasks/common/convert_ceph_params.yaml index fc8854a5..7b3db1df 100644 --- a/tasks/common/convert_ceph_params.yaml +++ b/tasks/common/convert_ceph_params.yaml @@ -35,7 +35,7 @@ copy: src: "{{ ceph_env }}" dest: "{{ working_dir}}/pre_upgrade_ceph_osd_hieradata_env.yaml" - remote_src: yes + remote_src: true - name: register environment file command: "cat {{ ceph_env }}" @@ -62,7 +62,7 @@ - name: set extra_config fact set_fact: - extra_config: "{{ (ceph_puppet.stdout | from_yaml).parameter_defaults.ExtraConfig }}" + extra_config: "{{ (ceph_puppet.stdout | from_yaml).parameter_defaults.ExtraConfig }}" - name: remove unused ceph parameters. lineinfile: @@ -93,7 +93,7 @@ - name: set extra_config from ceph puppet. set_fact: - extra_config: "{{ (ceph_puppet.stdout | from_yaml).parameter_defaults.ExtraConfig }}" + extra_config: "{{ (ceph_puppet.stdout | from_yaml).parameter_defaults.ExtraConfig }}" - name: replace empty extraconfig replace: diff --git a/tasks/common/convert_cli_opts_params.yaml b/tasks/common/convert_cli_opts_params.yaml index d75de65d..9b7f18a7 100644 --- a/tasks/common/convert_cli_opts_params.yaml +++ b/tasks/common/convert_cli_opts_params.yaml @@ -1,3 +1,4 @@ +--- - name: register control-scale opts shell: | grep -oP "control-scale\ \d+" {{ overcloud_deploy_script }} @@ -93,9 +94,16 @@ template: src: fast-forward-upgrade/cli_opts_params.yaml.j2 dest: "{{working_dir}}/cli_opts_params.yaml" - force: no + force: false when: - - control_scale|succeeded or compute_scale|succeeded or ceph_scale|succeeded or control_flavor|succeeded or compute_flavor|succeeded or ceph_flavor|succeeded or ntp_server|succeeded + - > + control_scale|succeeded or + compute_scale|succeeded or + ceph_scale|succeeded or + control_flavor|succeeded or + compute_flavor|succeeded or + ceph_flavor|succeeded or + ntp_server|succeeded - name: check "{{working_dir}}/cli_opts_params.yaml" exists stat: diff --git a/tasks/common/convert_nic_templates.yaml b/tasks/common/convert_nic_templates.yaml index 12538552..2c657e02 100644 --- a/tasks/common/convert_nic_templates.yaml +++ b/tasks/common/convert_nic_templates.yaml @@ -1,3 +1,4 @@ +--- - name: look for network software config shell: | grep "OS::TripleO::.*::Net::SoftwareConfig" {{ item }} diff --git a/tasks/common/convert_roles_data.yaml b/tasks/common/convert_roles_data.yaml index 5f67e882..255a087d 100644 --- a/tasks/common/convert_roles_data.yaml +++ b/tasks/common/convert_roles_data.yaml @@ -1,3 +1,4 @@ +--- - name: Register roles data file location if exists shell: "grep '\\-r\\ \\|\\-\\-roles' {{ overcloud_deploy_script }} | awk {'print $2'}" register: custom_roles_file diff --git a/tasks/common/create_http_test_scripts.yml b/tasks/common/create_http_test_scripts.yml index 24df9d21..49479203 100644 --- a/tasks/common/create_http_test_scripts.yml +++ b/tasks/common/create_http_test_scripts.yml @@ -5,5 +5,5 @@ dest: "{{working_dir}}/{{ item.split('.') | first }}.sh" mode: 0775 with_items: - - 'fip_http_check_start.sh.j2' - - 'fip_http_check_stop.sh.j2' + - 'fip_http_check_start.sh.j2' + - 'fip_http_check_stop.sh.j2' diff --git a/tasks/common/create_l3_agent_connectivity_check_script.yml b/tasks/common/create_l3_agent_connectivity_check_script.yml index 6d57bb25..a13b5593 100644 --- a/tasks/common/create_l3_agent_connectivity_check_script.yml +++ b/tasks/common/create_l3_agent_connectivity_check_script.yml @@ -1,3 +1,4 @@ +--- - block: - name: create start l3 agent connectivity check scripts template: diff --git a/tasks/common/create_l3_agent_failover_check_script.yml b/tasks/common/create_l3_agent_failover_check_script.yml index 4d56974f..aa069b6d 100644 --- a/tasks/common/create_l3_agent_failover_check_script.yml +++ b/tasks/common/create_l3_agent_failover_check_script.yml @@ -1,3 +1,4 @@ +--- - block: - name: create l3 agent failover check pre script template: diff --git a/tasks/common/create_nova_actions_check_script.yml b/tasks/common/create_nova_actions_check_script.yml index ebfabc38..19c756e8 100644 --- a/tasks/common/create_nova_actions_check_script.yml +++ b/tasks/common/create_nova_actions_check_script.yml @@ -1,3 +1,4 @@ +--- - name: create post nova actions test template: src: "nova_actions_check.sh.j2" diff --git a/tasks/common/create_workload.yml b/tasks/common/create_workload.yml index 99831202..e802ccd2 100644 --- a/tasks/common/create_workload.yml +++ b/tasks/common/create_workload.yml @@ -16,4 +16,3 @@ src: "{{ l3_agent_connectivity_check_stop_template }}" dest: "{{ l3_agent_connectivity_check_stop_script }}" mode: 0775 - diff --git a/tasks/common/load_roles_from_inventory.yaml b/tasks/common/load_roles_from_inventory.yaml index c3fb1396..45372b46 100644 --- a/tasks/common/load_roles_from_inventory.yaml +++ b/tasks/common/load_roles_from_inventory.yaml @@ -1,3 +1,4 @@ +--- - name: generate inventory file shell: | source {{ undercloud_rc }} @@ -14,7 +15,7 @@ oc_roles: "{{ oc_roles + [item.key] }}" with_dict: "{{ (upgrade_tripleo_inventory.stdout | from_yaml).overcloud.children }}" -- name: register controller role name +- name: register controller role name set_fact: controller_role_name: "{{ item|regex_search('[A-Za-z0-9]*[Cc]ontroller[A-Za-z0-9]*') }}" when: item|regex_search('[A-Za-z0-9]*[Cc]ontroller[A-Za-z0-9]*') diff --git a/tasks/common/queens_to_rocky_adjust_nic_templates.yaml b/tasks/common/queens_to_rocky_adjust_nic_templates.yaml index 78179757..516b2731 100644 --- a/tasks/common/queens_to_rocky_adjust_nic_templates.yaml +++ b/tasks/common/queens_to_rocky_adjust_nic_templates.yaml @@ -1,3 +1,4 @@ +--- - name: look for network software config shell: | grep "OS::TripleO::.*::Net::SoftwareConfig" {{ item }} diff --git a/tasks/common/ssh_config_skip_host.yml b/tasks/common/ssh_config_skip_host.yml index 281db9d9..f8e4196f 100644 --- a/tasks/common/ssh_config_skip_host.yml +++ b/tasks/common/ssh_config_skip_host.yml @@ -1,3 +1,4 @@ +--- - name: Adjust ssh config to skip host key check copy: src: ssh_config diff --git a/tasks/common/undercloud_validate_upgrade.yaml b/tasks/common/undercloud_validate_upgrade.yaml index 7ac332f9..78b92e5c 100644 --- a/tasks/common/undercloud_validate_upgrade.yaml +++ b/tasks/common/undercloud_validate_upgrade.yaml @@ -20,62 +20,66 @@ become_user: root register: loaded_ovs -- block: - - - name: reboot the undercloud - shell: "sleep 2 && shutdown -r now" - async: 1 - poll: 0 - ignore_errors: true - become: true - become_user: root - - - name: wait for node to go down - become: no - command: ping -c1 {{ ansible_host }} - register: node_down - until: node_down.rc != 0 - retries: 60 - delay: 3 - ignore_errors: true - delegate_to: localhost - when: "'hypervisor' not in groups and 'virthost' not in groups" - - - name: wait for node to go down - command: ping -c1 {{ ansible_host }} - register: node_down - until: node_down.rc != 0 - retries: 60 - delay: 3 - ignore_errors: true - delegate_to: hypervisor - when: "'hypervisor' in groups" - - - name: wait for node to go down - command: ping -c1 {{ ansible_host }} - register: node_down - until: node_down.rc != 0 - retries: 60 - delay: 3 - ignore_errors: true - delegate_to: virthost - when: "'virthost' in groups" - - - name: waiting for the undercloud to be ssh-able - wait_for_connection: - connect_timeout: 5 - sleep: 3 - timeout: 630 - - - name: assert UC services started - shell: | - source {{ undercloud_rc }} ; - timeout 10 openstack stack list -f json | jq -c -r '.[]|.["Stack Name"]' - ignore_errors: true - register: oc_name - until: oc_name.stdout.find('{{ overcloud_stack_name }}') != -1 - retries: "{{ service_readiness_count|default(100)|int }}" - delay: 3 - when: - - not tripleo_ci and (undercloud_reboot or (installed_kernel.stdout != loaded_kernel.stdout) or (installed_ovs.stdout != loaded_ovs.stdout)) +- when: + - not tripleo_ci + - > + undercloud_reboot or + (installed_kernel.stdout != loaded_kernel.stdout) or + (installed_ovs.stdout != loaded_ovs.stdout) tags: undercloud_reboot + block: + + - name: reboot the undercloud + shell: "sleep 2 && shutdown -r now" + async: 1 + poll: 0 + ignore_errors: true + become: true + become_user: root + + - name: wait for node to go down + become: false + command: ping -c1 {{ ansible_host }} + register: node_down + until: node_down.rc != 0 + retries: 60 + delay: 3 + ignore_errors: true + delegate_to: localhost + when: "'hypervisor' not in groups and 'virthost' not in groups" + + - name: wait for node to go down + command: ping -c1 {{ ansible_host }} + register: node_down + until: node_down.rc != 0 + retries: 60 + delay: 3 + ignore_errors: true + delegate_to: hypervisor + when: "'hypervisor' in groups" + + - name: wait for node to go down + command: ping -c1 {{ ansible_host }} + register: node_down + until: node_down.rc != 0 + retries: 60 + delay: 3 + ignore_errors: true + delegate_to: virthost + when: "'virthost' in groups" + + - name: waiting for the undercloud to be ssh-able + wait_for_connection: + connect_timeout: 5 + sleep: 3 + timeout: 630 + + - name: assert UC services started + shell: | + source {{ undercloud_rc }} ; + timeout 10 openstack stack list -f json | jq -c -r '.[]|.["Stack Name"]' + ignore_errors: true + register: oc_name + until: oc_name.stdout.find('{{ overcloud_stack_name }}') != -1 + retries: "{{ service_readiness_count|default(100)|int }}" + delay: 3 diff --git a/tasks/fast-forward-upgrade/convert_roles_data.yaml b/tasks/fast-forward-upgrade/convert_roles_data.yaml index 9efdd0ac..5e6ea517 100644 --- a/tasks/fast-forward-upgrade/convert_roles_data.yaml +++ b/tasks/fast-forward-upgrade/convert_roles_data.yaml @@ -1,3 +1,4 @@ +--- - name: Register roles data file location if exists shell: "grep '\\-r\\ \\|\\-\\-roles' {{ overcloud_deploy_script }} | awk {'print $2'}" register: custom_roles_file @@ -17,14 +18,14 @@ - name: Clear removed service for roles_data.yaml file lineinfile: - dest: '{{ custom_roles_file.stdout }}' - regexp: "{{ item }}" - state: absent + dest: '{{ custom_roles_file.stdout }}' + regexp: "{{ item }}" + state: absent with_items: - - 'OS::TripleO::Services::Core' - - 'OS::TripleO::Services::VipHosts' - - 'OS::TripleO::Services::FluentdClient' - - 'OS::TripleO::Services::ManilaBackendGeneric' + - 'OS::TripleO::Services::Core' + - 'OS::TripleO::Services::VipHosts' + - 'OS::TripleO::Services::FluentdClient' + - 'OS::TripleO::Services::ManilaBackendGeneric' - name: Assigns deprecated params to Controller role replace: @@ -72,9 +73,9 @@ - name: Add disable_upgrade_deployment to Compute and ObjectStorage roles replace: - dest: '{{ custom_roles_file.stdout }}' - regexp: '^(- name: (Compute|ObjectStorage).*$)' - replace: '\1\n disable_upgrade_deployment: True' + dest: '{{ custom_roles_file.stdout }}' + regexp: '^(- name: (Compute|ObjectStorage).*$)' + replace: '\1\n disable_upgrade_deployment: True' - name: Assigns new attributes to CephStorage role replace: diff --git a/tasks/fast-forward-upgrade/create-ffu-scripts.yaml b/tasks/fast-forward-upgrade/create-ffu-scripts.yaml index d5f2da66..4a8254f0 100644 --- a/tasks/fast-forward-upgrade/create-ffu-scripts.yaml +++ b/tasks/fast-forward-upgrade/create-ffu-scripts.yaml @@ -1,3 +1,4 @@ +--- - name: create {{ current_release }} undercloud upgrade script template: src: templates/fast-forward-upgrade/undercloud_upgrade.sh.j2 diff --git a/tasks/fast-forward-upgrade/create-prepare-scripts.yaml b/tasks/fast-forward-upgrade/create-prepare-scripts.yaml index 065621ef..040747f6 100644 --- a/tasks/fast-forward-upgrade/create-prepare-scripts.yaml +++ b/tasks/fast-forward-upgrade/create-prepare-scripts.yaml @@ -1,3 +1,4 @@ +--- - name: create a comptatible deployment scripts from oooq include: ../upgrade/use_oooq.yaml tags: use_oooq @@ -5,7 +6,7 @@ - name: make a copy of the initial overcloud deploy script copy: - remote_src: yes + remote_src: true src: "{{ overcloud_deploy_script }}" dest: "{{ overcloud_deploy_script }}.orig.sh" @@ -37,12 +38,12 @@ dest: "{{working_dir}}/{{ item }}.sh" mode: 0775 with_items: - - 'post_ffu_undercloud_upgrade_workarounds' - - 'pre_ffu_overcloud_prepare_workarounds' - - 'pre_ffu_overcloud_run_workarounds' - - 'pre_ffu_overcloud_upgrade_workarounds' - - 'pre_ffu_overcloud_converge_workarounds' - - 'pre_ffu_overcloud_ceph_workarounds' + - 'post_ffu_undercloud_upgrade_workarounds' + - 'pre_ffu_overcloud_prepare_workarounds' + - 'pre_ffu_overcloud_run_workarounds' + - 'pre_ffu_overcloud_upgrade_workarounds' + - 'pre_ffu_overcloud_converge_workarounds' + - 'pre_ffu_overcloud_ceph_workarounds' when: ffu_upgrade_workarounds - name: Create FFU custom repos environment @@ -56,7 +57,7 @@ src: "fast-forward-upgrade/overcloud_upgrade_run.sh.j2" dest: "{{working_dir}}/overcloud_upgrade_run.sh" mode: 0775 - force: no + force: false - name: create overcloud converge script template: diff --git a/tasks/fast-forward-upgrade/ffu_update_stack_outputs.yaml b/tasks/fast-forward-upgrade/ffu_update_stack_outputs.yaml index 37b8d116..69e787eb 100644 --- a/tasks/fast-forward-upgrade/ffu_update_stack_outputs.yaml +++ b/tasks/fast-forward-upgrade/ffu_update_stack_outputs.yaml @@ -5,7 +5,7 @@ {{ working_dir }}/ffu_update_stack_outputs.sh 2>&1 {{ timestamper_cmd }} > \ {{ working_dir }}/ffu_update_stack_outputs.log register: ffu_stack_output - ignore_errors: yes + ignore_errors: true - name: print stack failures shell: | diff --git a/tasks/fast-forward-upgrade/ffu_upgrade_ceph.yaml b/tasks/fast-forward-upgrade/ffu_upgrade_ceph.yaml index 42ce4286..94639d06 100644 --- a/tasks/fast-forward-upgrade/ffu_upgrade_ceph.yaml +++ b/tasks/fast-forward-upgrade/ffu_upgrade_ceph.yaml @@ -1,10 +1,11 @@ +--- - name: upgrade ceph post ffu shell: | source {{ undercloud_rc }} {{ working_dir }}/ffu_upgrade_ceph_script.sh 2>&1 {{ timestamper_cmd }} > \ {{ working_dir }}/ffu_upgrade_ceph.log register: ffu_upgrade_ceph - ignore_errors: yes + ignore_errors: true - block: - name: print stack failures diff --git a/tasks/fast-forward-upgrade/ffu_upgrade_converge.yaml b/tasks/fast-forward-upgrade/ffu_upgrade_converge.yaml index ea676dc3..c7ade7bf 100644 --- a/tasks/fast-forward-upgrade/ffu_upgrade_converge.yaml +++ b/tasks/fast-forward-upgrade/ffu_upgrade_converge.yaml @@ -5,7 +5,7 @@ {{ working_dir }}/ffu_upgrade_converge_script.sh 2>&1 {{ timestamper_cmd }} > \ {{ working_dir }}/ffu_upgrade_converge.log register: ffu_converge - ignore_errors: yes + ignore_errors: true - name: print stack failures shell: | diff --git a/tasks/fast-forward-upgrade/main.yml b/tasks/fast-forward-upgrade/main.yml index 4326f576..6def7790 100644 --- a/tasks/fast-forward-upgrade/main.yml +++ b/tasks/fast-forward-upgrade/main.yml @@ -1,3 +1,4 @@ +--- - name: create upgrade prepare scripts include: create-prepare-scripts.yaml tags: create_ffu_prepare_scripts @@ -88,28 +89,28 @@ tags: ffu_overcloud_upgrade_role when: not ffu_bulk|bool - - block: - - name: apply pre ffu ceph upgrade workarounds - command: "{{working_dir}}/pre_ffu_overcloud_ceph_workarounds.sh" - when: ffu_upgrade_workarounds|bool - tags: ffu_overcloud_ceph + - when: ceph_osd_enabled|bool + block: + - name: apply pre ffu ceph upgrade workarounds + command: "{{working_dir}}/pre_ffu_overcloud_ceph_workarounds.sh" + when: ffu_upgrade_workarounds|bool + tags: ffu_overcloud_ceph - - name: run FFU ceph osd nodes ugrade scripts - command: "{{ working_dir }}/overcloud_upgrade_CephStorage.sh" - tags: ffu_overcloud_ceph + - name: run FFU ceph osd nodes upgrade scripts + command: "{{ working_dir }}/overcloud_upgrade_CephStorage.sh" + tags: ffu_overcloud_ceph - - include: ../common/l3_agent_connectivity_check_start_script.yml - tags: ffu_overcloud_ceph + - include: ../common/l3_agent_connectivity_check_start_script.yml + tags: ffu_overcloud_ceph - - include: ../upgrade/ceph_upgrade_run.yml - tags: ffu_overcloud_ceph + - include: ../upgrade/ceph_upgrade_run.yml + tags: ffu_overcloud_ceph - - include: "{{ item }}" - with_items: - - '../common/l3_agent_connectivity_check_stop_script.yml' - - '../common/l3_agent_failover_check_post_script.yml' - tags: ffu_overcloud_ceph - when: ceph_osd_enabled|bool + - include: "{{ item }}" + with_items: + - '../common/l3_agent_connectivity_check_stop_script.yml' + - '../common/l3_agent_failover_check_post_script.yml' + tags: ffu_overcloud_ceph - name: apply pre ffu overcloud converge workarounds command: "{{working_dir}}/pre_ffu_overcloud_converge_workarounds.sh" diff --git a/tasks/fast-forward-upgrade/overcloud_role.yaml b/tasks/fast-forward-upgrade/overcloud_role.yaml index 4af9a10a..13d8e05a 100644 --- a/tasks/fast-forward-upgrade/overcloud_role.yaml +++ b/tasks/fast-forward-upgrade/overcloud_role.yaml @@ -58,7 +58,7 @@ mode: 0775 tags: ffu_overcloud_upgrade_compute with_items: - - '{{ tripleo_compute_nodes.stdout_lines }}' + - '{{ tripleo_compute_nodes.stdout_lines }}' - include: ../common/l3_agent_connectivity_check_start_script.yml tags: ffu_overcloud_upgrade_compute @@ -67,7 +67,7 @@ command: "{{ working_dir }}/overcloud_upgrade_{{ item }}.sh" tags: ffu_overcloud_upgrade_compute with_items: - - '{{ tripleo_compute_nodes.stdout_lines }}' + - '{{ tripleo_compute_nodes.stdout_lines }}' - include: ../common/l3_agent_connectivity_check_stop_script.yml tags: ffu_overcloud_upgrade_compute diff --git a/tasks/fast-forward-upgrade/undercloud-upgrade.yml b/tasks/fast-forward-upgrade/undercloud-upgrade.yml index 392d5834..9dda6c17 100644 --- a/tasks/fast-forward-upgrade/undercloud-upgrade.yml +++ b/tasks/fast-forward-upgrade/undercloud-upgrade.yml @@ -1,3 +1,4 @@ +--- - name: Run pre undercloud {{ current_release }} upgrade workarounds command: "{{ working_dir }}/pre_undercloud_upgrade_{{ current_release }}_workarounds.sh" when: ffu_upgrade_workarounds diff --git a/tasks/update/create-undercloud-update-scripts.yaml b/tasks/update/create-undercloud-update-scripts.yaml index 6a9f60f6..53f4e581 100644 --- a/tasks/update/create-undercloud-update-scripts.yaml +++ b/tasks/update/create-undercloud-update-scripts.yaml @@ -1,7 +1,7 @@ --- - name: create undercloud update script template: - src: "{{ undercloud_update_template }}" + src: "{{ undercloud_update_template }}" dest: "{{ undercloud_update_script }}" mode: 0775 force: true @@ -16,4 +16,3 @@ - '{{ pre_undercloud_update_workarounds|default([]) }}' - '{{ post_undercloud_update_workarounds|default([]) }}' when: updates_workarounds|bool - diff --git a/tasks/update/main.yml b/tasks/update/main.yml index fc99a307..4dd5b8d0 100644 --- a/tasks/update/main.yml +++ b/tasks/update/main.yml @@ -85,7 +85,7 @@ - include: overcloud_update_run.yml tags: - - overcloud_update + - overcloud_update - name: overcloud post-update run workarounds shell: | @@ -126,8 +126,8 @@ bash {{ overcloud_validate_images_script }} 2>&1 {{ timestamper_cmd }} > \ {{ working_dir}}/validate_oc_images_containers.log tags: - - overcloud_update - - overcloud_images_validate + - overcloud_update + - overcloud_images_validate - include: ../common/nova_actions_check.yml diff --git a/tasks/update/overcloud_update_converge.yml b/tasks/update/overcloud_update_converge.yml index 63ef4e6e..799e122a 100644 --- a/tasks/update/overcloud_update_converge.yml +++ b/tasks/update/overcloud_update_converge.yml @@ -7,7 +7,7 @@ bash {{ overcloud_update_converge_script }} 2>&1 {{ timestamper_cmd }} > \ {{ working_dir }}/overcloud_update_converge.log register: overcloud_converge_update - ignore_errors: yes + ignore_errors: true - block: - name: print stack failures diff --git a/tasks/update/overcloud_update_prepare.yml b/tasks/update/overcloud_update_prepare.yml index e997eb74..be62e942 100644 --- a/tasks/update/overcloud_update_prepare.yml +++ b/tasks/update/overcloud_update_prepare.yml @@ -6,7 +6,7 @@ bash {{ overcloud_update_prepare_script }} 2>&1 {{ timestamper_cmd }} > \ {{ working_dir }}/overcloud_update_prepare.log register: overcloud_update_prepare - ignore_errors: yes + ignore_errors: true - block: - name: print stack failures @@ -26,4 +26,3 @@ - name: was the overcloud update prepare successful. fail: msg="Overcloud minor update preparation step failed..." when: overcloud_update_prepare.rc != 0 - diff --git a/tasks/update/overcloud_update_run.yml b/tasks/update/overcloud_update_run.yml index 93b40ccb..b9211d29 100644 --- a/tasks/update/overcloud_update_run.yml +++ b/tasks/update/overcloud_update_run.yml @@ -5,11 +5,11 @@ shell: | set -o pipefail bash {{ overcloud_update_run_script_base }}-{{ item }}.sh 2>&1 {{ timestamper_cmd }} > \ - {{ working_dir}}/overcloud_update_run_{{ item }}.log + {{ working_dir }}/overcloud_update_run_{{ item }}.log with_items: - "{{ oc_roles|default('all') }}" register: overcloud_update_nodes - ignore_errors: yes + ignore_errors: true - name: was the overcloud minor update successful. fail: msg="Overcloud minor update execution step failed..." @@ -17,4 +17,3 @@ when: item.rc != 0 - include: ../common/l3_agent_connectivity_check_stop_script.yml - diff --git a/tasks/upgrade/controller_post_upgrade.yml b/tasks/upgrade/controller_post_upgrade.yml index 867a677f..a18fef37 100644 --- a/tasks/upgrade/controller_post_upgrade.yml +++ b/tasks/upgrade/controller_post_upgrade.yml @@ -1,3 +1,4 @@ +--- - name: register controller nodes shell: | source {{ undercloud_rc }} diff --git a/tasks/upgrade/create-overcloud-upgrade-scripts.yaml b/tasks/upgrade/create-overcloud-upgrade-scripts.yaml index d7d7bca5..d439223e 100644 --- a/tasks/upgrade/create-overcloud-upgrade-scripts.yaml +++ b/tasks/upgrade/create-overcloud-upgrade-scripts.yaml @@ -35,14 +35,14 @@ dest: "{{working_dir}}/{{ item }}.sh" mode: 0775 with_items: - - 'pre_overcloud_upgrade_prepare_workarounds' - - 'post_overcloud_upgrade_prepare_workarounds' - - 'pre_overcloud_upgrade_workarounds' - - 'post_overcloud_upgrade_workarounds' - - 'pre_overcloud_upgrade_converge_workarounds' - - 'post_overcloud_upgrade_converge_workarounds' - - 'pre_ceph_upgrade_workarounds' - - 'post_ceph_upgrade_workarounds' + - 'pre_overcloud_upgrade_prepare_workarounds' + - 'post_overcloud_upgrade_prepare_workarounds' + - 'pre_overcloud_upgrade_workarounds' + - 'post_overcloud_upgrade_workarounds' + - 'pre_overcloud_upgrade_converge_workarounds' + - 'post_overcloud_upgrade_converge_workarounds' + - 'pre_ceph_upgrade_workarounds' + - 'post_ceph_upgrade_workarounds' when: upgrade_workarounds - include: ../common/create_l3_agent_connectivity_check_script.yml diff --git a/tasks/upgrade/create-undercloud-upgrade-scripts.yaml b/tasks/upgrade/create-undercloud-upgrade-scripts.yaml index d4240494..990fc660 100644 --- a/tasks/upgrade/create-undercloud-upgrade-scripts.yaml +++ b/tasks/upgrade/create-undercloud-upgrade-scripts.yaml @@ -1,7 +1,7 @@ --- - name: create undercloud upgrade script template: - src: "{{ undercloud_upgrade_template }}" + src: "{{ undercloud_upgrade_template }}" dest: "{{ undercloud_upgrade_script }}" mode: 0775 force: true @@ -12,7 +12,6 @@ dest: "{{working_dir}}/{{ item }}.sh" mode: 0775 with_items: - - 'pre_undercloud_upgrade_workarounds' - - 'post_undercloud_upgrade_workarounds' + - 'pre_undercloud_upgrade_workarounds' + - 'post_undercloud_upgrade_workarounds' when: upgrade_workarounds - diff --git a/tasks/upgrade/kill_ssh.yaml b/tasks/upgrade/kill_ssh.yaml index b03a2e61..7e14ba36 100644 --- a/tasks/upgrade/kill_ssh.yaml +++ b/tasks/upgrade/kill_ssh.yaml @@ -1,3 +1,4 @@ +--- - name: Kill SSH shell: sleep 1; pkill -u {{ ansible_ssh_user }} sshd async: 3 diff --git a/tasks/upgrade/main.yml b/tasks/upgrade/main.yml index 8def4f18..35d76b0a 100644 --- a/tasks/upgrade/main.yml +++ b/tasks/upgrade/main.yml @@ -163,4 +163,3 @@ - include: ../common/nova_actions_check.yml when: overcloud_upgrade|bool - diff --git a/tasks/upgrade/overcloud_upgrade_converge.yml b/tasks/upgrade/overcloud_upgrade_converge.yml index ab7fc93f..5dfa36e9 100644 --- a/tasks/upgrade/overcloud_upgrade_converge.yml +++ b/tasks/upgrade/overcloud_upgrade_converge.yml @@ -5,7 +5,7 @@ bash {{ overcloud_upgrade_converge_script }} 2>&1 {{ timestamper_cmd }} > \ {{ working_dir }}/overcloud_upgrade_converge.log register: overcloud_converge_upgrade - ignore_errors: yes + ignore_errors: true - block: - name: print stack failures diff --git a/tasks/upgrade/overcloud_upgrade_prepare.yml b/tasks/upgrade/overcloud_upgrade_prepare.yml index 0b63346c..606037b9 100644 --- a/tasks/upgrade/overcloud_upgrade_prepare.yml +++ b/tasks/upgrade/overcloud_upgrade_prepare.yml @@ -26,7 +26,7 @@ bash {{ overcloud_upgrade_prepare_script }} 2>&1 {{ timestamper_cmd }} > \ {{ working_dir }}/overcloud_upgrade_prepare.log register: overcloud_upgrade_prepare - ignore_errors: yes + ignore_errors: true - block: - name: print stack failures diff --git a/tasks/upgrade/overcloud_upgrade_run.yml b/tasks/upgrade/overcloud_upgrade_run.yml index a68f7549..dd508ccc 100644 --- a/tasks/upgrade/overcloud_upgrade_run.yml +++ b/tasks/upgrade/overcloud_upgrade_run.yml @@ -7,7 +7,7 @@ with_items: - "{{ oc_roles|default('all') }}" register: overcloud_upgrade_nodes - ignore_errors: yes + ignore_errors: true - name: was the overcloud upgrade composable step successful. fail: msg="Overcloud upgrade composable step failed... :(" diff --git a/tasks/upgrade/undercloud_ssl_camap.yaml b/tasks/upgrade/undercloud_ssl_camap.yaml index 587a48a4..2b72e5dc 100644 --- a/tasks/upgrade/undercloud_ssl_camap.yaml +++ b/tasks/upgrade/undercloud_ssl_camap.yaml @@ -1,3 +1,4 @@ +--- - name: register undercloud public endpoint shell: | source {{ undercloud_rc }} @@ -16,7 +17,7 @@ shell: | ssh -q -o StrictHostKeyChecking=no {{ oc_user }}@{{ ctrl_ip.stdout }} curl --silent {{ keystone_endpoint.stdout }} register: uc_keystone_conn - ignore_errors: True + ignore_errors: true - block: - name: register ssl certificate location diff --git a/test-requirements.txt b/test-requirements.txt index 685f9b91..90071ece 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,6 +1,4 @@ -hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0 -bashate>=0.5.1 # Apache-2.0 - +pre-commit>=1.10 # MIT License # this is required for the docs build jobs reno>=2.5.0 # Apache-2.0 sphinx>=1.6.2 # BSD diff --git a/tests/oooq-test.yaml b/tests/oooq-test.yaml index dc412d55..53913b0e 100644 --- a/tests/oooq-test.yaml +++ b/tests/oooq-test.yaml @@ -1,8 +1,8 @@ --- - hosts: undercloud gather_facts: true - become: yes + become: true become_method: sudo become_user: stack roles: - - { role: tripleo-upgrade, use_oooq: 'true' } + - {role: tripleo-upgrade, use_oooq: 'true'} diff --git a/tests/test.yml b/tests/test.yml index 66d76a05..ac542661 100644 --- a/tests/test.yml +++ b/tests/test.yml @@ -1,7 +1,7 @@ --- - hosts: undercloud gather_facts: true - become: yes + become: true become_method: sudo become_user: stack roles: diff --git a/tox.ini b/tox.ini index 9eeaac21..3b856714 100644 --- a/tox.ini +++ b/tox.ini @@ -22,53 +22,32 @@ commands = bindep test commands = python setup.py build_sphinx [testenv:bashate] +envdir = {toxworkdir}/linters commands = -# Run bashate check for all bash scripts -# Ignores the following rules: -# E006: Line longer than 79 columns (as many scripts use jinja -# templating, this is very difficult) -# E040: Syntax error determined using `bash -n` (as many scripts -# use jinja templating, this will often fail and the syntax -# error will be discovered in execution anyway) - bash -c "git ls-files | xargs grep --binary-files=without-match \ - --files-with-match '^.!.*\(ba\)\?sh$' \ - --exclude-dir .tox \ - --exclude-dir .git \ - | xargs bashate --error . --verbose --ignore=E006,E040" + python -m pre_commit run bashate --all-files [testenv:pep8] +envdir = {toxworkdir}/linters commands = - # Run hacking/flake8 check for all python files - bash -c "git ls-files | grep -v releasenotes | xargs grep --binary-files=without-match \ - --files-with-match '^.!.*python$' \ - --exclude-dir .tox \ - --exclude-dir .git \ - --exclude-dir .eggs \ - --exclude-dir *.egg-info \ - --exclude-dir dist \ - --exclude-dir *lib/python* \ - --exclude-dir doc \ - | xargs flake8 --verbose" + python -m pre_commit run flake8 --all-files [testenv:ansible-lint] -basepython=python2 +envdir = {toxworkdir}/linters commands = - bash ci-scripts/ansible-lint.sh - -[testenv:linters] -deps = - -r{toxinidir}/test-requirements.txt - -r{toxinidir}/ansible-requirements.txt -commands = - {[testenv:bashate]commands} - {[testenv:pep8]commands} - {[testenv:ansible-lint]commands} + python -m pre_commit run ansible-lint -a [testenv:releasenotes] +basepython = python3 whitelist_externals = bash commands = bash -c ci-scripts/releasenotes_tox.sh +[testenv:linters] +commands = + # check only modified files: + python -m pre_commit run --source HEAD^ --origin HEAD + [testenv:venv] +basepython = python3 commands = {posargs} [flake8] diff --git a/zuul.d/layout.yaml b/zuul.d/layout.yaml index 9ee58d94..eaabe52d 100644 --- a/zuul.d/layout.yaml +++ b/zuul.d/layout.yaml @@ -1,3 +1,4 @@ +--- - project: templates: - check-requirements