diff --git a/roles/taskotron/imagefactory-client/tasks/main.yml b/roles/taskotron/imagefactory-client/tasks/main.yml index 2d35c7da9a..70842b7362 100644 --- a/roles/taskotron/imagefactory-client/tasks/main.yml +++ b/roles/taskotron/imagefactory-client/tasks/main.yml @@ -26,7 +26,10 @@ changed_when: "git_result.after|default('after') != git_result.before|default('before')" - name: Generate configuration - template: src=config.ini.j2 dest=/etc/taskotron_base_images/config.ini owner=root group=root mode=0644 + template: src={{ item }} dest=/etc/taskotron_base_images/config.ini owner=root group=root mode=0644 + with_first_found: + - config.ini.j2.{{ deployment_type }} + - config.ini.j2 - name: Download/update images command: '/var/lib/fedoraqa/base_images/process_for_taskotron.py --taskotrondir {{imagesdir}}' @@ -36,7 +39,6 @@ name: "Download new images from ImageFactory" special_time: hourly job: '/var/lib/fedoraqa/base_images/process_for_taskotron.py --taskotrondir {{imagesdir}} > /dev/null' - - name: Create cronjob to prune old images cron: name: "Clean up images downloaded from ImageFactory" diff --git a/roles/taskotron/imagefactory-client/templates/config.ini.j2.dev b/roles/taskotron/imagefactory-client/templates/config.ini.j2.dev new file mode 100644 index 0000000000..19552397b5 --- /dev/null +++ b/roles/taskotron/imagefactory-client/templates/config.ini.j2.dev @@ -0,0 +1,4 @@ +[default] +imgfac_base_url={{imagefactory_baseurl}} +rawhide=28 + diff --git a/roles/taskotron/imagefactory/tasks/main.yml b/roles/taskotron/imagefactory/tasks/main.yml index d6dbf052ac..230bba0279 100644 --- a/roles/taskotron/imagefactory/tasks/main.yml +++ b/roles/taskotron/imagefactory/tasks/main.yml @@ -35,7 +35,10 @@ file: path=/etc/taskotron_base_images state=directory owner=root group=root mode=0755 - name: Generate configuration - template: src=config_server.ini.j2 dest=/etc/taskotron_base_images/config_server.ini owner=root group=root mode=0644 + template: src={{ item }} dest=/etc/taskotron_base_images/config_server.ini owner=root group=root mode=0644 + with_first_found: + - config_server.ini.j2.{{ deployment_type }} + - config_server.ini.j2 - name: Create cronjob to build new Fedora {{ item }} images cron: @@ -45,6 +48,7 @@ with_items: - 25 - 26 + - 27 - rawhide - name: Create cronjob to report failed builds diff --git a/roles/taskotron/imagefactory/templates/config_server.ini.j2.dev b/roles/taskotron/imagefactory/templates/config_server.ini.j2.dev new file mode 100644 index 0000000000..a37f58513d --- /dev/null +++ b/roles/taskotron/imagefactory/templates/config_server.ini.j2.dev @@ -0,0 +1,10 @@ +[default] +imgfac_base_url=http://127.0.0.1:8075/imagefactory +rawhide=28 + +mail_from={{deployment_type}}.imagefactory@qa.fedoraproject.org +mail_to=jskladan@redhat.com tflink@redhat.com +mail_subject=Images that failed to build for Taskotron in ImageFactory on {{deployment_type}} +smtp_server=bastion.phx2.fedoraproject.org + +deployment_type={{deployment_type}} diff --git a/roles/taskotron/taskotron-client/files/yumrepoinfo.conf.dev b/roles/taskotron/taskotron-client/files/yumrepoinfo.conf.dev new file mode 100644 index 0000000000..3631ca985b --- /dev/null +++ b/roles/taskotron/taskotron-client/files/yumrepoinfo.conf.dev @@ -0,0 +1,95 @@ +## A Taskotron configuration file representing available YUM repositories inside +## Fedora infrastructure. +## This file is in a ConfigParser syntax, very similar to INI syntax known from +## Windows. +## There is a guide describing how to update this file after important Fedora +## release events, please see: +## https://fedoraproject.org/wiki/How_to_update_yumrepoinfo.conf_in_Taskotron + +[DEFAULT] +# URLs to yum repos +# Please note: 'download.fedoraproject.org' is a redirect that points you to a +# random mirror every time. For faster and more reliable operation, pick a close +# mirror from https://mirrors.fedoraproject.org and use it in 'baseurl' and 'baseurl_altarch'. +baseurl = http://download.fedoraproject.org/pub/fedora/linux +baseurl_altarch = http://download.fedoraproject.org/pub/fedora-secondary +goldurl = %(baseurl)s/releases/%(path)s/Everything/%(arch)s/os +updatesurl = %(baseurl)s/updates/%(path)s/%(arch)s +rawhideurl = %(baseurl)s/%(path)s/Everything/%(arch)s/os + +# list of primary and alternate architectures. That decides whether baseurl or baseurl_altarch +# is used when determining path. +primary_arches = armhfp, x86_64 +alternate_arches = aarch64, i386, ppc64, ppc64le, s390x + +# a direct parent of this repo, essential for operations (dependencies) +parent = + +# koji tag defaults to section name +tag = %(__name__)s + +# release_status can be one of: obsolete, stable, branched or rawhide +# for non-top-parent repos this is an empty string +release_status = + +# Rawhide +[rawhide] +url = %(rawhideurl)s +path = development/rawhide +tag = f28 +release_status = rawhide + +# Fedora 27 +[f27] +url = %(rawhideurl)s +path = development/27 +release_status = branched + +[f27-updates] +url = %(updatesurl)s +path = 27 +parent = f27 + +[f27-updates-testing] +url = %(updatesurl)s +path = testing/27 +parent = f27-updates + +# Fedora 26 +[f26] +url = %(goldurl)s +path = 26 +release_status = stable + +[f26-updates] +url = %(updatesurl)s +path = 26 +parent = f26 + +[f26-updates-testing] +url = %(updatesurl)s +path = testing/26 +parent = f26-updates + +# Fedora 25 +[f25] +url = %(goldurl)s +path = 25 +release_status = stable +primary_arches = armhfp, i386, x86_64 +alternate_arches = aarch64, ppc64, ppc64le, s390x + +[f25-updates] +url = %(updatesurl)s +path = 25 +parent = f25 +primary_arches = armhfp, i386, x86_64 +alternate_arches = aarch64, ppc64, ppc64le, s390x + +[f25-updates-testing] +url = %(updatesurl)s +path = testing/25 +parent = f25-updates +primary_arches = armhfp, i386, x86_64 +alternate_arches = aarch64, ppc64, ppc64le, s390x +