diff --git a/inventory/builders b/inventory/builders index 938c9071a9..115cd70bfd 100644 --- a/inventory/builders +++ b/inventory/builders @@ -46,6 +46,11 @@ buildvm-aarch64-07.arm.fedoraproject.org buildvm-aarch64-08.arm.fedoraproject.org buildvm-aarch64-09.arm.fedoraproject.org buildvm-aarch64-10.arm.fedoraproject.org +buildvm-aarch64-11.arm.fedoraproject.org +buildvm-aarch64-12.arm.fedoraproject.org +buildvm-aarch64-17.arm.fedoraproject.org +buildvm-aarch64-18.arm.fedoraproject.org +buildvm-aarch64-19.arm.fedoraproject.org [buildvm-ppc64] buildvm-ppc64-01.ppc.fedoraproject.org @@ -87,6 +92,11 @@ aarch64-c07n1.arm.fedoraproject.org aarch64-c08n1.arm.fedoraproject.org aarch64-c09n1.arm.fedoraproject.org aarch64-c10n1.arm.fedoraproject.org +aarch64-c11n1.arm.fedoraproject.org +aarch64-c12n1.arm.fedoraproject.org +aarch64-c17n1.arm.fedoraproject.org +aarch64-c18n1.arm.fedoraproject.org +aarch64-c19n1.arm.fedoraproject.org [buildhw] buildhw-01.phx2.fedoraproject.org diff --git a/inventory/group_vars/bodhi-backend-stg b/inventory/group_vars/bodhi-backend-stg index 4f9204ec3f..50cbe8176e 100644 --- a/inventory/group_vars/bodhi-backend-stg +++ b/inventory/group_vars/bodhi-backend-stg @@ -72,7 +72,7 @@ fedmsg_certs: - bodhi.updates.epel.sync - bodhi.updates.fedora.sync -fas_client_groups: sysadmin-releng +fas_client_groups: sysadmin-releng,sysadmin-bodhi sudoers: "{{ private }}/files/sudo/00releng-sudoers" diff --git a/inventory/group_vars/bodhi2-stg b/inventory/group_vars/bodhi2-stg index 9bd40f1c24..9b1e005e30 100644 --- a/inventory/group_vars/bodhi2-stg +++ b/inventory/group_vars/bodhi2-stg @@ -23,7 +23,7 @@ tcp_ports: [ 80 ] # Neeed for rsync from log01 for logs. custom_rules: [ '-A INPUT -p tcp -m tcp -s 10.5.126.13 --dport 873 -j ACCEPT', '-A INPUT -p tcp -m tcp -s 192.168.1.59 --dport 873 -j ACCEPT' ] -fas_client_groups: sysadmin-noc +fas_client_groups: sysadmin-noc,sysadmin-bodhi # Mount /mnt/fedora_koji as read-only in staging nfs_mount_opts: "ro,hard,bg,intr,noatime,nodev,nosuid" diff --git a/inventory/group_vars/fedimg-stg b/inventory/group_vars/fedimg-stg index 22eea74296..92b047a57a 100644 --- a/inventory/group_vars/fedimg-stg +++ b/inventory/group_vars/fedimg-stg @@ -15,6 +15,8 @@ tcp_ports: [ # TODO, restrict this down to just sysadmin-releng fas_client_groups: sysadmin-datanommer,sysadmin-releng,sysadmin-fedimg,fi-apprentice,sysadmin-noc,sysadmin-veteran +fedmsg_debug_loopback: True + # These people get told when something goes wrong. fedmsg_error_recipients: - sysadmin-fedimg-members@fedoraproject.org diff --git a/inventory/hardware b/inventory/hardware index 4bd93d28c4..68df64ae40 100644 --- a/inventory/hardware +++ b/inventory/hardware @@ -83,3 +83,8 @@ aarch64-c07n1.arm.fedoraproject.org aarch64-c08n1.arm.fedoraproject.org aarch64-c09n1.arm.fedoraproject.org aarch64-c10n1.arm.fedoraproject.org +aarch64-c11n1.arm.fedoraproject.org +aarch64-c12n1.arm.fedoraproject.org +aarch64-c17n1.arm.fedoraproject.org +aarch64-c18n1.arm.fedoraproject.org +aarch64-c19n1.arm.fedoraproject.org diff --git a/inventory/host_vars/buildvm-aarch64-11.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-11.arm.fedoraproject.org new file mode 100644 index 0000000000..c2a3e77ca0 --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-11.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c11n1.arm.fedoraproject.org +eth0_ip: 10.5.129.161 +eth1_ip: 10.5.127.86 diff --git a/inventory/host_vars/buildvm-aarch64-12.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-12.arm.fedoraproject.org new file mode 100644 index 0000000000..342be466c5 --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-12.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c12n1.arm.fedoraproject.org +eth0_ip: 10.5.129.162 +eth1_ip: 10.5.127.87 diff --git a/inventory/host_vars/buildvm-aarch64-13.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-13.arm.fedoraproject.org new file mode 100644 index 0000000000..f20121f806 --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-13.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c13n1.arm.fedoraproject.org +eth0_ip: 10.5.129.163 +eth1_ip: 10.5.127.88 diff --git a/inventory/host_vars/buildvm-aarch64-14.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-14.arm.fedoraproject.org new file mode 100644 index 0000000000..bf1b1f8ebb --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-14.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c14n1.arm.fedoraproject.org +eth0_ip: 10.5.129.164 +eth1_ip: 10.5.127.89 diff --git a/inventory/host_vars/buildvm-aarch64-15.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-15.arm.fedoraproject.org new file mode 100644 index 0000000000..93a6b77c2d --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-15.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c15n1.arm.fedoraproject.org +eth0_ip: 10.5.129.165 +eth1_ip: 10.5.127.90 diff --git a/inventory/host_vars/buildvm-aarch64-16.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-16.arm.fedoraproject.org new file mode 100644 index 0000000000..ba512d6c00 --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-16.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c16n1.arm.fedoraproject.org +eth0_ip: 10.5.129.166 +eth1_ip: 10.5.127.91 diff --git a/inventory/host_vars/buildvm-aarch64-17.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-17.arm.fedoraproject.org new file mode 100644 index 0000000000..07a5872df2 --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-17.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c17n1.arm.fedoraproject.org +eth0_ip: 10.5.129.167 +eth1_ip: 10.5.127.92 diff --git a/inventory/host_vars/buildvm-aarch64-18.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-18.arm.fedoraproject.org new file mode 100644 index 0000000000..9acfe54c8c --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-18.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c18n1.arm.fedoraproject.org +eth0_ip: 10.5.129.168 +eth1_ip: 10.5.127.93 diff --git a/inventory/host_vars/buildvm-aarch64-19.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-19.arm.fedoraproject.org new file mode 100644 index 0000000000..26d60847bd --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-19.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c19n1.arm.fedoraproject.org +eth0_ip: 10.5.129.169 +eth1_ip: 10.5.127.94 diff --git a/inventory/host_vars/buildvm-aarch64-20.arm.fedoraproject.org b/inventory/host_vars/buildvm-aarch64-20.arm.fedoraproject.org new file mode 100644 index 0000000000..4e6062dbb7 --- /dev/null +++ b/inventory/host_vars/buildvm-aarch64-20.arm.fedoraproject.org @@ -0,0 +1,4 @@ +--- +vmhost: aarch64-c20n1.arm.fedoraproject.org +eth0_ip: 10.5.129.170 +eth1_ip: 10.5.127.95 diff --git a/playbooks/manual/upgrade/bodhi.yml b/playbooks/manual/upgrade/bodhi.yml index 625c7e796a..041d07975d 100644 --- a/playbooks/manual/upgrade/bodhi.yml +++ b/playbooks/manual/upgrade/bodhi.yml @@ -89,7 +89,7 @@ command: /usr/bin/alembic -c /usr/share/bodhi/alembic.ini upgrade head args: chdir: /usr/share/bodhi/ - when: inventory_hostname.startswith('bodhi-backend01') + when: inventory_hostname.startswith('bodhi-backend03') - name: And... start the backend again service: name="fedmsg-hub" state=started diff --git a/roles/bodhi2/backend/tasks/main.yml b/roles/bodhi2/backend/tasks/main.yml index c72bd3a1ea..95bdb66e44 100644 --- a/roles/bodhi2/backend/tasks/main.yml +++ b/roles/bodhi2/backend/tasks/main.yml @@ -162,7 +162,7 @@ cron: name="owner-sync-el5" minute="7,17,27,37,47,57" user="root" job="/usr/local/bin/owner-sync-pkgdb dist-5E-epel" cron_file=update-koji-owner-EL-5 - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - bodhi @@ -170,7 +170,7 @@ cron: name="owner-sync-el6" minute="7,17,27,37,47,57" user="root" job="/usr/local/bin/owner-sync-pkgdb dist-6E-epel" cron_file=update-koji-owner-EL-6 - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - bodhi @@ -178,7 +178,7 @@ cron: name="owner-sync-epel7" minute="7,17,27,37,47,57" user="root" job="/usr/local/bin/owner-sync-pkgdb epel7" cron_file=update-koji-owner-epel7 - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - bodhi @@ -186,7 +186,7 @@ cron: name="owner-sync-fedora" minute="7,17,27,37,47,57" user="root" job="/usr/local/bin/owner-sync-pkgdb f23;/usr/local/bin/owner-sync-pkgdb f24;/usr/local/bin/owner-sync-pkgdb f25;/usr/local/bin/owner-sync-pkgdb f26" cron_file=update-koji-owner-fedora - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - bodhi # @@ -195,7 +195,7 @@ - name: put fedora-updates-push in place copy: src=fedora-updates-push dest=/usr/local/bin/fedora-updates-push mode=0755 - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - config - bodhi @@ -203,7 +203,7 @@ - name: put fedora-epel-push in place copy: src=fedora-epel-push dest=/usr/local/bin/fedora-epel-push mode=0755 - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - config - bodhi @@ -211,7 +211,7 @@ - name: put update-fullfiletimelist in place copy: src="{{ files }}/scripts/update-fullfiletimelist" dest=/usr/local/bin/update-fullfiletimelist mode=0755 - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - config - bodhi @@ -219,7 +219,7 @@ - name: add create-filelist script from quick-fedora-mirror copy: src="{{ files }}/scripts/create-filelist" dest=/usr/local/bin/create-filelist mode=0755 - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - config - bodhi @@ -229,7 +229,7 @@ cron: name="updates-sync" minute="15,45" user="ftpsync" job="/usr/local/bin/lock-wrapper fedora-updates-push '/usr/local/bin/fedora-updates-push && /usr/local/bin/update-fullfiletimelist -l /tmp/update-fullfiletimelist-fedora.lock -t /pub fedora'" cron_file=updates-sync - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - config - bodhi @@ -239,7 +239,7 @@ cron: name="epel-updates-sync" minute="15,45" user="ftpsync" job="/usr/local/bin/lock-wrapper fedora-epel-push '/usr/local/bin/fedora-epel-push && /usr/local/bin/update-fullfiletimelist -l /tmp/update-fullfiletimelist-epel.lock -t /pub epel'" cron_file=updates-sync - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - config - bodhi @@ -249,7 +249,7 @@ cron: name="directory-sizes-update" minute="30" hour="19" user="ftpsync" job="/usr/bin/find /pub/alt/ /pub/archive/ /pub/fedora-secondary/ /pub/fedora/ /pub/epel/ -type d ! -path '/pub/alt/screenshots/f21/source' | grep -v snapshot | /usr/bin/xargs -n 1 /usr/bin/du --exclude=.snapshot -sh > /tmp/DIRECTORY_SIZES.txt 2> /dev/null; cp /tmp/DIRECTORY_SIZES.txt /pub/" cron_file=directory-sizes-update - when: inventory_hostname.startswith('bodhi-backend01') and env == "production" + when: inventory_hostname.startswith('bodhi-backend03') and env == "production" tags: - config - bodhi diff --git a/roles/bodhi2/base/templates/updates_handler.py b/roles/bodhi2/base/templates/updates_handler.py index 71cf540fd6..f993d7e39a 100644 --- a/roles/bodhi2/base/templates/updates_handler.py +++ b/roles/bodhi2/base/templates/updates_handler.py @@ -1,5 +1,5 @@ config = dict( - # Note, the masher runs on bodhi-backend01, but this + # Note, the masher runs on bodhi-backend03, but this # runs on bodhi-backend02 (separation of concerns). updates_handler={{bodhi_updates_handler_enabled}}, ) diff --git a/roles/dhcp_server/files/dhcpd.conf.noc01.phx2.fedoraproject.org b/roles/dhcp_server/files/dhcpd.conf.noc01.phx2.fedoraproject.org index d0d388ece4..95dcc38c36 100644 --- a/roles/dhcp_server/files/dhcpd.conf.noc01.phx2.fedoraproject.org +++ b/roles/dhcp_server/files/dhcpd.conf.noc01.phx2.fedoraproject.org @@ -1570,21 +1570,6 @@ shared-network qa { option host-name "ppc-comm01-mgmt"; } - host ppc-comm01 { - hardware ethernet 6c:ae:8b:00:0f:f0; - fixed-address 10.5.124.219; - option host-name "ppc-comm01"; - filename "yaboot"; - } - - host ppc-comm04.qa.fedoraproject.org { - hardware ethernet 5c:f3:fc:89:bd:c0; - fixed-address 10.5.124.221; - next-server ppc-builder7.qa.fedoraproject.org; - option host-name "ppc-comm04"; - filename "ppccomm04"; - } - host qa01 { hardware ethernet 00:21:5E:C7:5C:84; fixed-address 10.5.124.151; @@ -1884,13 +1869,6 @@ shared-network qa { filename "pxelinux.0"; } - host ppc-comm08 { - hardware ethernet 6c:ae:8b:02:66:27; - fixed-address 10.5.124.143; - option host-name "ppc-comm08"; - filename "pxelinux.0"; - } - } @@ -1990,21 +1968,6 @@ shared-network qa { filename "pxelinux.0"; } - host ppc-le-builder7 { - hardware ethernet 52:54:00:4e:c0:de; - fixed-address 10.5.131.57; - next-server 10.5.131.56; - option host-name "ppc-le-builder7.qa.fedoraproject.org"; - filename "/boot/grub2/powerpc-ieee1275/core.elf"; - } - - host ppc-builder9 { - hardware ethernet 5C:F3:FC:89:BD:C5; - fixed-address 10.5.124.142; - next-server 10.5.124.136; - option host-name "ppc-builder9.qa.fedoraproject.org"; - filename "/boot/grub2/powerpc-ieee1275/core.elf"; - } } } @@ -2014,7 +1977,7 @@ subnet 10.5.129.0 netmask 255.255.255.0 { allow booting; allow bootp; - option domain-name "secarch.fedoraproject.org phx2.fedoraproject.org qa.fedoraproject.org fedoraproject.org"; + option domain-name "secarch.fedoraproject.org ppc.fedoraproject.org arm.fedoraproject.org phx2.fedoraproject.org fedoraproject.org"; option domain-name-servers 10.5.126.21, 10.5.126.22; option routers 10.5.129.254; option log-servers 10.5.126.29; @@ -2127,5 +2090,85 @@ subnet 10.5.129.0 netmask 255.255.255.0 { filename "grubaa64.efi"; } + host aarch64-c11n1 { + hardware ethernet 14:58:D0:58:B5:A2; + fixed-address 10.5.129.111; + next-server 10.5.126.41; + option host-name "aarch64-c11n1"; + filename "grubaa64.efi"; + } + + host aarch64-c12n1 { + hardware ethernet 14:58:D0:58:B2:F2; + fixed-address 10.5.129.112; + next-server 10.5.126.41; + option host-name "aarch64-c12n1"; + filename "grubaa64.efi"; + } + + host aarch64-c13n1 { + hardware ethernet 14:58:D0:58:95:22; + fixed-address 10.5.129.113; + next-server 10.5.126.41; + option host-name "aarch64-c13n1"; + filename "grubaa64.efi"; + } + + host aarch64-c14n1 { + hardware ethernet 14:58:D0:58:75:32; + fixed-address 10.5.129.114; + next-server 10.5.126.41; + option host-name "aarch64-c14n1"; + filename "grubaa64.efi"; + } + + host aarch64-c15n1 { + hardware ethernet 14:58:D0:58:C5:52; + fixed-address 10.5.129.115; + next-server 10.5.126.41; + option host-name "aarch64-c15n1"; + filename "grubaa64.efi"; + } + + host aarch64-c16n1 { + hardware ethernet 14:58:D0:58:35:12; + fixed-address 10.5.129.116; + next-server 10.5.126.41; + option host-name "aarch64-c16n1"; + filename "grubaa64.efi"; + } + + host aarch64-c17n1 { + hardware ethernet 14:58:D0:58:C4:F2; + fixed-address 10.5.129.117; + next-server 10.5.126.41; + option host-name "aarch64-c17n1"; + filename "grubaa64.efi"; + } + + host aarch64-c18n1 { + hardware ethernet 14:58:D0:58:74:32; + fixed-address 10.5.129.118; + next-server 10.5.126.41; + option host-name "aarch64-c18n1"; + filename "grubaa64.efi"; + } + + host aarch64-c19n1 { + hardware ethernet 14:58:D0:58:D4:12; + fixed-address 10.5.129.119; + next-server 10.5.126.41; + option host-name "aarch64-c19n1"; + filename "grubaa64.efi"; + } + + host aarch64-c20n1 { + hardware ethernet 14:58:D0:58:E4:B2; + fixed-address 10.5.129.120; + next-server 10.5.126.41; + option host-name "aarch64-c20n1"; + filename "grubaa64.efi"; + } + } diff --git a/roles/dns/files/zones.conf b/roles/dns/files/zones.conf index 12064703ea..037a78fc56 100644 --- a/roles/dns/files/zones.conf +++ b/roles/dns/files/zones.conf @@ -372,3 +372,13 @@ zone "pagure.org" { file "/var/named/master/built/pagure.org"; }; +zone "mirrormanager.net" { + type master; + file "/var/named/master/built/mirrormanager.net"; +}; + +zone "mirrormanager.org" { + type master; + file "/var/named/master/built/mirrormanager.org"; +}; + diff --git a/roles/fedimg/tasks/main.yml b/roles/fedimg/tasks/main.yml index 7b1f8d64c5..ac2d42332d 100644 --- a/roles/fedimg/tasks/main.yml +++ b/roles/fedimg/tasks/main.yml @@ -78,6 +78,7 @@ owner=fedmsg group=fedmsg mode=0644 notify: - restart fedmsg-hub + when: env != "staging" tags: - fedimg - hotfix diff --git a/roles/nagios/server/files/nagios/hosts/bodhi-backend01.cfg b/roles/nagios/server/files/nagios/hosts/bodhi-backend01.cfg index 0ebba4a7bb..1efd68399d 100644 --- a/roles/nagios/server/files/nagios/hosts/bodhi-backend01.cfg +++ b/roles/nagios/server/files/nagios/hosts/bodhi-backend01.cfg @@ -1,7 +1,7 @@ -define host { - host_name bodhi-backend01 - alias bodhi-backend01.phx2.fedoraproject.org - use defaulttemplate - address bodhi-backend01.phx2.fedoraproject.org - parents bvirthost10 -} +#define host { +# host_name bodhi-backend01 +# alias bodhi-backend01.phx2.fedoraproject.org +# use defaulttemplate +# address bodhi-backend01.phx2.fedoraproject.org +# parents bvirthost10 +#} diff --git a/roles/openqa/server/tasks/main.yml b/roles/openqa/server/tasks/main.yml index ef08399047..2df6006d3b 100644 --- a/roles/openqa/server/tasks/main.yml +++ b/roles/openqa/server/tasks/main.yml @@ -93,6 +93,21 @@ tags: - packages +- name: Check test directory exists with correct ownership + file: path=/var/lib/openqa/share/tests/fedora state=directory owner=geekotest group=geekotest recurse=yes + +# we don't want to run the checkout if the tests are on a non-standard +# branch, as that usually means we're messing around on staging and +# don't want the checkout reset to HEAD. +- name: Check if tests are checked out and on a non-standard branch + command: "git status" + args: + chdir: /var/lib/openqa/share/tests/fedora + register: testsbranch + failed_when: "1 != 1" + changed_when: "1 != 1" + always_run: true + - name: Check out the tests git: repo: https://bitbucket.org/rajcze/openqa_fedora @@ -100,6 +115,7 @@ register: gittests become: true become_user: geekotest + when: "(testsbranch.stdout.find('Not a git repository') != -1) or (testsbranch.stdout.find('On branch develop') != -1)" - name: Check out openqa_fedora_tools git: @@ -223,7 +239,7 @@ - name: Dump existing config for checking changes shell: "/usr/share/openqa/script/dump_templates --json > /tmp/tmpl-old.json" - when: "gittests|changed" + when: "(gittests is defined) and (gittests|changed)" changed_when: "1 != 1" # Because of the boring details of how template loading works, getting @@ -232,12 +248,12 @@ # the *following* step will register as changed. - name: Load tests shell: "/var/lib/openqa/share/tests/fedora/templates --clean" - when: "gittests|changed" + when: "(gittests is defined) and (gittests|changed)" changed_when: "1 != 1" - name: Check if the tests changed in previous step shell: "/usr/share/openqa/script/dump_templates --json > /tmp/tmpl-new.json && json_diff /tmp/tmpl-old.json /tmp/tmpl-new.json" - when: "gittests|changed" + when: "(gittests is defined) and (gittests|changed)" register: testsdiff changed_when: "testsdiff.rc > 0" failed_when: "1 != 1"