From 4b8672fd5ba5a4e21ef214e9e3ff9e0b0eafd2e2 Mon Sep 17 00:00:00 2001 From: David Kirwan Date: Mon, 19 Feb 2024 15:50:32 +0000 Subject: [PATCH] zabbix: releng compose cronjobs integration with zabbix monitoring Signed-off-by: David Kirwan --- roles/releng/files/branched | 2 +- roles/releng/files/cloud-updates | 6 +++--- roles/releng/files/container-updates | 4 ++-- roles/releng/files/ftbfs.sh | 17 ++++++++++++----- roles/releng/files/rawhide | 2 +- roles/releng/files/rawhide-iot | 2 +- roles/releng/templates/clean-amis.j2 | 4 ++-- roles/releng/templates/sig_policy.j2 | 2 +- 8 files changed, 23 insertions(+), 16 deletions(-) diff --git a/roles/releng/files/branched b/roles/releng/files/branched index 2507d444d0..c86fdc1c9f 100644 --- a/roles/releng/files/branched +++ b/roles/releng/files/branched @@ -1,3 +1,3 @@ # branched compose MAILTO=releng-cron@lists.fedoraproject.org -15 7 * * * root TMPDIR=`mktemp -d /tmp/branched.XXXXXX` && chmod 755 $TMPDIR && cd $TMPDIR && git clone https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f40 && /usr/local/bin/lock-wrapper branched-compose "LANG=en_US.UTF-8 ./nightly.sh" && sudo -u ftpsync /usr/local/bin/update-fullfiletimelist -l /pub/fedora-secondary/update-fullfiletimelist.lock -t /pub fedora fedora-secondary +15 7 * * * root touch /tmp/fedora-compose-branched && TMPDIR=`mktemp -d /tmp/branched.XXXXXX` && chmod 755 $TMPDIR && cd $TMPDIR && git clone https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f40 && /usr/local/bin/lock-wrapper branched-compose "LANG=en_US.UTF-8 ./nightly.sh" && sudo -u ftpsync /usr/local/bin/update-fullfiletimelist -l /pub/fedora-secondary/update-fullfiletimelist.lock -t /pub fedora fedora-secondary && rm /tmp/fedora-compose-branched diff --git a/roles/releng/files/cloud-updates b/roles/releng/files/cloud-updates index 613d14a074..d1e5d878d2 100644 --- a/roles/releng/files/cloud-updates +++ b/roles/releng/files/cloud-updates @@ -1,11 +1,11 @@ # Fedora 39 Cloud nightly compose MAILTO=releng-cron@lists.fedoraproject.org -15 6 * * * root TMPDIR=`mktemp -d /tmp/CloudF39.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f39 && LANG=en_US.UTF-8 ./cloud-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR +15 6 * * * root touch /tmp/fedora-compose-cloud-updates && TMPDIR=`mktemp -d /tmp/CloudF39.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f39 && LANG=en_US.UTF-8 ./cloud-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR && rm /tmp/fedora-compose-cloud-updates # Fedora 38 Cloud nightly compose MAILTO=releng-cron@lists.fedoraproject.org -15 7 * * * root TMPDIR=`mktemp -d /tmp/CloudF38.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f38 && LANG=en_US.UTF-8 ./cloud-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR +15 7 * * * root touch /tmp/fedora-compose-cloud-updates && TMPDIR=`mktemp -d /tmp/CloudF38.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f38 && LANG=en_US.UTF-8 ./cloud-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR && rm /tmp/fedora-compose-cloud-updates # Fedora 37 Cloud nightly compose #MAILTO=releng-cron@lists.fedoraproject.org -#15 8 * * * root TMPDIR=`mktemp -d /tmp/CloudF37.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f37 && LANG=en_US.UTF-8 ./cloud-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR \ No newline at end of file +#15 8 * * * root TMPDIR=`mktemp -d /tmp/CloudF37.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f37 && LANG=en_US.UTF-8 ./cloud-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR diff --git a/roles/releng/files/container-updates b/roles/releng/files/container-updates index c139957685..a7b5d17619 100644 --- a/roles/releng/files/container-updates +++ b/roles/releng/files/container-updates @@ -1,10 +1,10 @@ # Fedora 39 Container Updates nightly compose MAILTO=releng-cron@lists.fedoraproject.org -45 7 * * * root TMPDIR=`mktemp -d /tmp/containerF39.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f39 && LANG=en_US.UTF-8 ./container-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR +45 7 * * * root touch /tmp/fedora-compose-container-updates && TMPDIR=`mktemp -d /tmp/containerF39.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f39 && LANG=en_US.UTF-8 ./container-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR && rm /tmp/fedora-compose-container-updates # Fedora 38 Container Updates nightly compose MAILTO=releng-cron@lists.fedoraproject.org -45 6 * * * root TMPDIR=`mktemp -d /tmp/containerF38.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f38 && LANG=en_US.UTF-8 ./container-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR +45 6 * * * root touch /tmp/fedora-compose-container-updates && TMPDIR=`mktemp -d /tmp/containerF38.XXXXXX` && chmod 755 $TMPDIR && pushd $TMPDIR && git clone -n https://pagure.io/pungi-fedora.git && cd pungi-fedora && git checkout f38 && LANG=en_US.UTF-8 ./container-nightly.sh RC-$(date "+\%Y\%m\%d").0 && popd && rm -rf $TMPDIR && rm /tmp/fedora-compose-container-updates #Fedora 37 Container Updates nightly compose #MAILTO=releng-cron@lists.fedoraproject.org diff --git a/roles/releng/files/ftbfs.sh b/roles/releng/files/ftbfs.sh index 21f67ec538..80328c46d5 100644 --- a/roles/releng/files/ftbfs.sh +++ b/roles/releng/files/ftbfs.sh @@ -1,32 +1,39 @@ #!/bin/bash # A weekly cron job which actually does the items needed. # Only run every third week, see https://pagure.io/releng/issue/8915 + +touch /tmp/fedora-compose-cronjob-ftbts.cron + test $(($(date +%W | sed s.^0..) % 3)) -eq 0 || exit 0 -TMPDIR=`mktemp -d /tmp/ftbfs_reminder.XXXXXX` -GITREPO=https://pagure.io/releng.git +TMPDIR=`mktemp -d /tmp/ftbfs_reminder.XXXXXX` +GITREPO=https://pagure.io/releng.git SCRIPT=ftbfs_weekly_reminder.py if [ $? -eq 0 ]; then cd ${TMPDIR} git clone ${GITREPO} if [ $? -eq 0 ]; then - cd releng/scripts + cd releng/scripts ./${SCRIPT} if [ $? -ne 0 ]; then echo "${SCRIPT} had an error condition" echo "Look in ${TMPDIR} for more info" - # Do not clean up trash + # Do not clean up trash + rm /tmp/fedora-compose-cronjob-ftbts.cron exit 1 fi else echo "Unable to clone ${GITREPO}" echo "Look in ${TMPDIR} for more info" - # Do not clean up trash + # Do not clean up trash + rm /tmp/fedora-compose-cronjob-ftbts.cron exit 1 fi cd /tmp/ rm -rf $TMPDIR + rm /tmp/fedora-compose-cronjob-ftbts.cron else echo "Unable to create ${TMPDIR}" + rm /tmp/fedora-compose-cronjob-ftbts.cron exit 1 fi diff --git a/roles/releng/files/rawhide b/roles/releng/files/rawhide index 23eabebd2e..1392bd8e00 100644 --- a/roles/releng/files/rawhide +++ b/roles/releng/files/rawhide @@ -1,3 +1,3 @@ # rawhide compose MAILTO=releng-cron@lists.fedoraproject.org -15 5 * * * root TMPDIR=`mktemp -d /tmp/rawhide.XXXXXX` && chmod 755 $TMPDIR && cd $TMPDIR && git clone https://pagure.io/pungi-fedora.git && cd pungi-fedora && /usr/local/bin/lock-wrapper rawhide-compose "LANG=en_US.UTF-8 ./nightly.sh" && sudo -u ftpsync /usr/local/bin/update-fullfiletimelist -l /pub/fedora-secondary/update-fullfiletimelist.lock -t /pub fedora fedora-secondary +15 5 * * * root touch /tmp/fedora-compose-rawhide && TMPDIR=`mktemp -d /tmp/rawhide.XXXXXX` && chmod 755 $TMPDIR && cd $TMPDIR && git clone https://pagure.io/pungi-fedora.git && cd pungi-fedora && /usr/local/bin/lock-wrapper rawhide-compose "LANG=en_US.UTF-8 ./nightly.sh" && sudo -u ftpsync /usr/local/bin/update-fullfiletimelist -l /pub/fedora-secondary/update-fullfiletimelist.lock -t /pub fedora fedora-secondary && rm /tmp/fedora-compose-rawhide diff --git a/roles/releng/files/rawhide-iot b/roles/releng/files/rawhide-iot index ac62f8c936..e8ff5e9c34 100644 --- a/roles/releng/files/rawhide-iot +++ b/roles/releng/files/rawhide-iot @@ -1,3 +1,3 @@ # IoT rawhide compose MAILTO=releng-cron@lists.fedoraproject.org -00 8 * * * root TMPDIR=`mktemp -d /tmp/rawhide.XXXXXX` && cd $TMPDIR && git clone https://pagure.io/fedora-iot/pungi-iot.git && cd pungi-iot && ./twoweek-nightly.sh "RC-$(date "+%Y%m%d").0" +00 8 * * * root touch /tmp/fedora-compose-rawhide-iot && TMPDIR=`mktemp -d /tmp/rawhide.XXXXXX` && cd $TMPDIR && git clone https://pagure.io/fedora-iot/pungi-iot.git && cd pungi-iot && ./twoweek-nightly.sh "RC-$(date "+%Y%m%d").0" && rm /tmp/fedora-compose-rawhide-iot diff --git a/roles/releng/templates/clean-amis.j2 b/roles/releng/templates/clean-amis.j2 index 040378b379..f96e12794c 100644 --- a/roles/releng/templates/clean-amis.j2 +++ b/roles/releng/templates/clean-amis.j2 @@ -1,5 +1,5 @@ # Remove launch permissions from the AMIs after everyday -0 22 * * * root TMPDIR=`mktemp -d /tmp/purgeamis.XXXXXX` && pushd $TMPDIR && git clone https://pagure.io/releng.git && cd releng/scripts && AWS_ACCESS_KEY={{ ec2_image_delete_access_key_id }} AWS_SECRET_ACCESS_KEY={{ ec2_image_delete_access_key }} PAGURE_ACCESS_TOKEN={{ ami_purge_report_api_key }} ./clean-amis.py --change-perms --days 7 --permswaitperiod 5 && popd && rm -rf $TMPDIR +0 22 * * * root touch /tmp/fedora-compose-clean-amis && TMPDIR=`mktemp -d /tmp/purgeamis.XXXXXX` && pushd $TMPDIR && git clone https://pagure.io/releng.git && cd releng/scripts && AWS_ACCESS_KEY={{ ec2_image_delete_access_key_id }} AWS_SECRET_ACCESS_KEY={{ ec2_image_delete_access_key }} PAGURE_ACCESS_TOKEN={{ ami_purge_report_api_key }} ./clean-amis.py --change-perms --days 7 --permswaitperiod 5 && popd && rm -rf $TMPDIR && rm /tmp/fedora-compose-clean-amis # Delete the AMIs after everyday -0 23 * * * root TMPDIR=`mktemp -d /tmp/purgeamis.XXXXXX` && pushd $TMPDIR && git clone https://pagure.io/releng.git && cd releng/scripts && AWS_ACCESS_KEY={{ ec2_image_delete_access_key_id }} AWS_SECRET_ACCESS_KEY={{ ec2_image_delete_access_key }} PAGURE_ACCESS_TOKEN={{ ami_purge_report_api_key }} ./clean-amis.py --delete --days 17 --deletewaitperiod 10 && popd && rm -rf $TMPDIR +0 23 * * * root touch /tmp/fedora-compose-clean-amis && TMPDIR=`mktemp -d /tmp/purgeamis.XXXXXX` && pushd $TMPDIR && git clone https://pagure.io/releng.git && cd releng/scripts && AWS_ACCESS_KEY={{ ec2_image_delete_access_key_id }} AWS_SECRET_ACCESS_KEY={{ ec2_image_delete_access_key }} PAGURE_ACCESS_TOKEN={{ ami_purge_report_api_key }} ./clean-amis.py --delete --days 17 --deletewaitperiod 10 && popd && rm -rf $TMPDIR && rm /tmp/fedora-compose-clean-amis diff --git a/roles/releng/templates/sig_policy.j2 b/roles/releng/templates/sig_policy.j2 index 21e9343627..c53bd14428 100644 --- a/roles/releng/templates/sig_policy.j2 +++ b/roles/releng/templates/sig_policy.j2 @@ -1,4 +1,4 @@ # Runs the `sig_policy.py` script MAILTO=releng-cron@lists.fedoraproject.org PAGURE_API_TOKEN={{ fesco_sig_policy_src_token }} -30 9 * * 1 root TMPDIR=`mktemp -d /tmp/sig_policy.XXXXXXXXXX` && chmod 755 $TMPDIR && cd $TMPDIR && git clone https://pagure.io/releng.git && cd releng/scripts/fesco/sig-policy && python sig_policy.py +30 9 * * 1 root touch /tmp/fedora-compose-sig_policy && TMPDIR=`mktemp -d /tmp/sig_policy.XXXXXXXXXX` && chmod 755 $TMPDIR && cd $TMPDIR && git clone https://pagure.io/releng.git && cd releng/scripts/fesco/sig-policy && python sig_policy.py && rm /tmp/fedora-compose-sig_policy