From 2f86149b87e872a12e0cfbb4f8efbc4deb678c42 Mon Sep 17 00:00:00 2001 From: Tristan Cacqueray Date: Fri, 18 Sep 2020 21:42:52 +0000 Subject: [PATCH 1/8] Update zookeeper archive location This change ensures old zookeeper releases can still be downloaded. --- tests/setup_zookeeper.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/setup_zookeeper.yml b/tests/setup_zookeeper.yml index 5144648..ba85ce4 100644 --- a/tests/setup_zookeeper.yml +++ b/tests/setup_zookeeper.yml @@ -12,7 +12,7 @@ - name: Get and extract Zookeeper unarchive: - src: https://downloads.apache.org/zookeeper/zookeeper-{{ zookeeper_version }}/apache-zookeeper-{{ zookeeper_version }}-bin.tar.gz + src: https://archive.apache.org/dist/zookeeper/zookeeper-{{ zookeeper_version }}/apache-zookeeper-{{ zookeeper_version }}-bin.tar.gz dest: /tmp/zookeeper remote_src: yes become: true From e8e651f09fc7cafaa23bb1c3080845a1aaa11316 Mon Sep 17 00:00:00 2001 From: Matthieu Huin Date: Tue, 26 Jan 2021 12:15:01 +0100 Subject: [PATCH 2/8] zuul-web: Fix default static path, test badges endpoint --- tests/configure_zuul_jobs.yml | 9 ++++++--- zuul.conf | 3 +-- zuul.spec | 5 ++++- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/tests/configure_zuul_jobs.yml b/tests/configure_zuul_jobs.yml index 6204222..7bf5e2e 100644 --- a/tests/configure_zuul_jobs.yml +++ b/tests/configure_zuul_jobs.yml @@ -22,17 +22,17 @@ register: cmd failed_when: - cmd.rc != 0 - - not "'nothing to commit' in cmd.stdout" + - not "'nothing to commit' in cmd.stdout" args: chdir: "{{ ansible_user_dir }}/zuul-config/" loop: - git config user.name "John Doe" - git config user.email "john@localhost" - git add -A . - - git commit -m"Init demo config" + - git commit -m"Init demo config" - name: Ensure dulwich down - shell: pkill -f web-daemon + shell: pkill -f web-daemon ignore_errors: true # https://bugzilla.redhat.com/show_bug.cgi?id=1866463 @@ -84,3 +84,6 @@ - name: Ensure the my-noop job was executed shell: python -c "import requests; r = requests.get('http://localhost/api/tenant/default/builds').json(); assert r[0]['job_name'] == 'my-noop'; assert r[0]['result'] == 'SUCCESS'" + +- name: Ensure badges endpoint is working + shell: python -c "import requests; r = requests.get('http://localhost/api/tenant/default/badge').text; assert r.startswith(' - 3.19.1-2 +- Fix incorrect static_path, enabling badges endpoint + * Mon Jul 27 2020 Fabien Boucher - 3.19.1-1 - Bump to 3.19.1 - Fedora rawhide compat From 06680d234907cc555ceb7fc70dbaecc670df57cd Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 4 Jun 2021 21:20:55 +0200 Subject: [PATCH 3/8] Rebuilt for Python 3.10 --- zuul.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zuul.spec b/zuul.spec index b07f133..f4bec2d 100644 --- a/zuul.spec +++ b/zuul.spec @@ -1,6 +1,6 @@ Name: zuul Version: 3.19.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Trunk Gating System # The entire source code is ASL 2.0 except files under %%{python3_sitelib}/zuul/ansible which is GPLv3+ @@ -338,6 +338,9 @@ exit 0 %changelog +* Fri Jun 04 2021 Python Maint - 3.19.1-3 +- Rebuilt for Python 3.10 + * Tue Jan 26 2021 Matthieu Huin - 3.19.1-2 - Fix incorrect static_path, enabling badges endpoint From a81540843effde15f35b19f0ab54a265fd011008 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 22:23:50 +0000 Subject: [PATCH 4/8] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zuul.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zuul.spec b/zuul.spec index f4bec2d..ec895c8 100644 --- a/zuul.spec +++ b/zuul.spec @@ -1,6 +1,6 @@ Name: zuul Version: 3.19.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Trunk Gating System # The entire source code is ASL 2.0 except files under %%{python3_sitelib}/zuul/ansible which is GPLv3+ @@ -338,6 +338,9 @@ exit 0 %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 3.19.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Fri Jun 04 2021 Python Maint - 3.19.1-3 - Rebuilt for Python 3.10 From 89f8aaa14090af9ef5ef425f559a26bd11d4630e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jan 2022 05:57:40 +0000 Subject: [PATCH 5/8] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zuul.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zuul.spec b/zuul.spec index ec895c8..43b6fc3 100644 --- a/zuul.spec +++ b/zuul.spec @@ -1,6 +1,6 @@ Name: zuul Version: 3.19.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Trunk Gating System # The entire source code is ASL 2.0 except files under %%{python3_sitelib}/zuul/ansible which is GPLv3+ @@ -338,6 +338,9 @@ exit 0 %changelog +* Sat Jan 22 2022 Fedora Release Engineering - 3.19.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Fri Jul 23 2021 Fedora Release Engineering - 3.19.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From c53ab453fd5e67e29a3a17d1af61f7a574d09d97 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Sun, 19 Jun 2022 19:13:05 +0200 Subject: [PATCH 6/8] Rebuilt for Python 3.11 --- zuul.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zuul.spec b/zuul.spec index 43b6fc3..c083043 100644 --- a/zuul.spec +++ b/zuul.spec @@ -1,6 +1,6 @@ Name: zuul Version: 3.19.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Trunk Gating System # The entire source code is ASL 2.0 except files under %%{python3_sitelib}/zuul/ansible which is GPLv3+ @@ -338,6 +338,9 @@ exit 0 %changelog +* Sun Jun 19 2022 Python Maint - 3.19.1-6 +- Rebuilt for Python 3.11 + * Sat Jan 22 2022 Fedora Release Engineering - 3.19.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From b620c15e98f6ffff61d1be4ce245b94fb5e5c03e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 23 Jul 2022 14:01:44 +0000 Subject: [PATCH 7/8] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zuul.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zuul.spec b/zuul.spec index c083043..1b43300 100644 --- a/zuul.spec +++ b/zuul.spec @@ -1,6 +1,6 @@ Name: zuul Version: 3.19.1 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Trunk Gating System # The entire source code is ASL 2.0 except files under %%{python3_sitelib}/zuul/ansible which is GPLv3+ @@ -338,6 +338,9 @@ exit 0 %changelog +* Sat Jul 23 2022 Fedora Release Engineering - 3.19.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Sun Jun 19 2022 Python Maint - 3.19.1-6 - Rebuilt for Python 3.11 From 8afe66727c01348760cc2b105919047297329bc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 2 Aug 2022 11:42:59 +0200 Subject: [PATCH 8/8] Orphaned for 6+ weeks --- .gitignore | 5 - ...shebang-and-remove-useless-exec-bits.patch | 58 -- ...ed-Thread.isAlive-with-Thread.is_ali.patch | 54 -- ...rypy-and-cheroot-requirement-pinning.patch | 36 -- ...s-add-explicit-reference-to-dateutil.patch | 28 - README.md | 279 --------- dead.package | 1 + logging.conf | 34 -- main.yaml | 3 - sources | 1 - tests/configure_zuul_jobs.yml | 89 --- tests/install_zuul.yml | 10 - tests/main.yaml | 6 - tests/my-noop.yaml | 8 - tests/orig_main.yaml | 3 - tests/setup_postgres.yml | 56 -- tests/setup_zookeeper.yml | 34 -- tests/setup_zuul_core.yml | 56 -- tests/setup_zuul_web.yml | 80 --- tests/tests.yml | 23 - tests/zuul.yaml | 24 - zuul-executor.service | 15 - zuul-fingergw.service | 14 - zuul-merger.service | 15 - zuul-scheduler.service | 15 - zuul-web.service | 14 - zuul.conf | 81 --- zuul.rpmlintrc | 61 -- zuul.spec | 568 ------------------ 29 files changed, 1 insertion(+), 1670 deletions(-) delete mode 100644 .gitignore delete mode 100644 0001-Remove-another-shebang-and-remove-useless-exec-bits.patch delete mode 100644 0001-Replace-deprecated-Thread.isAlive-with-Thread.is_ali.patch delete mode 100644 0001-Update-cherrypy-and-cheroot-requirement-pinning.patch delete mode 100644 0001-requirements-add-explicit-reference-to-dateutil.patch delete mode 100644 README.md create mode 100644 dead.package delete mode 100644 logging.conf delete mode 100644 main.yaml delete mode 100644 sources delete mode 100644 tests/configure_zuul_jobs.yml delete mode 100644 tests/install_zuul.yml delete mode 100644 tests/main.yaml delete mode 100644 tests/my-noop.yaml delete mode 100644 tests/orig_main.yaml delete mode 100644 tests/setup_postgres.yml delete mode 100644 tests/setup_zookeeper.yml delete mode 100644 tests/setup_zuul_core.yml delete mode 100644 tests/setup_zuul_web.yml delete mode 100644 tests/tests.yml delete mode 100644 tests/zuul.yaml delete mode 100644 zuul-executor.service delete mode 100644 zuul-fingergw.service delete mode 100644 zuul-merger.service delete mode 100644 zuul-scheduler.service delete mode 100644 zuul-web.service delete mode 100644 zuul.conf delete mode 100644 zuul.rpmlintrc delete mode 100644 zuul.spec diff --git a/.gitignore b/.gitignore deleted file mode 100644 index ac174da..0000000 --- a/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -/zuul-3.18.0.tar.gz -results_zuul -*.rpm -/zuul-3.19.0.tar.gz -/zuul-3.19.1.tar.gz diff --git a/0001-Remove-another-shebang-and-remove-useless-exec-bits.patch b/0001-Remove-another-shebang-and-remove-useless-exec-bits.patch deleted file mode 100644 index 991660c..0000000 --- a/0001-Remove-another-shebang-and-remove-useless-exec-bits.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 6feb399854ef55a3e43c5a46c56fae487dcd8d28 Mon Sep 17 00:00:00 2001 -From: Fabien Boucher -Date: Tue, 19 May 2020 14:40:51 +0200 -Subject: [PATCH] Remove another shebang and remove useless exec bits - -Change-Id: Id49bc9a4b50948b1f07e4fa917c93acac0c2a17e ---- - zuul/cmd/__init__.py | 0 - zuul/cmd/client.py | 0 - zuul/cmd/executor.py | 0 - zuul/cmd/merger.py | 5 ----- - zuul/cmd/scheduler.py | 0 - zuul/cmd/web.py | 0 - 6 files changed, 5 deletions(-) - mode change 100755 => 100644 zuul/cmd/__init__.py - mode change 100755 => 100644 zuul/cmd/client.py - mode change 100755 => 100644 zuul/cmd/executor.py - mode change 100755 => 100644 zuul/cmd/merger.py - mode change 100755 => 100644 zuul/cmd/scheduler.py - mode change 100755 => 100644 zuul/cmd/web.py - -diff --git a/zuul/cmd/__init__.py b/zuul/cmd/__init__.py -old mode 100755 -new mode 100644 -diff --git a/zuul/cmd/client.py b/zuul/cmd/client.py -old mode 100755 -new mode 100644 -diff --git a/zuul/cmd/executor.py b/zuul/cmd/executor.py -old mode 100755 -new mode 100644 -diff --git a/zuul/cmd/merger.py b/zuul/cmd/merger.py -old mode 100755 -new mode 100644 -index 1d4b6fef..9b827427 ---- a/zuul/cmd/merger.py -+++ b/zuul/cmd/merger.py -@@ -1,4 +1,3 @@ --#!/usr/bin/env python - # Copyright 2012 Hewlett-Packard Development Company, L.P. - # Copyright 2013-2014 OpenStack Foundation - # -@@ -69,7 +68,3 @@ class Merger(zuul.cmd.ZuulDaemonApp): - - def main(): - Merger().main() -- -- --if __name__ == "__main__": -- main() -diff --git a/zuul/cmd/scheduler.py b/zuul/cmd/scheduler.py -old mode 100755 -new mode 100644 -diff --git a/zuul/cmd/web.py b/zuul/cmd/web.py -old mode 100755 -new mode 100644 --- -2.25.1 - diff --git a/0001-Replace-deprecated-Thread.isAlive-with-Thread.is_ali.patch b/0001-Replace-deprecated-Thread.isAlive-with-Thread.is_ali.patch deleted file mode 100644 index da2689e..0000000 --- a/0001-Replace-deprecated-Thread.isAlive-with-Thread.is_ali.patch +++ /dev/null @@ -1,54 +0,0 @@ -From b27dc5df5dc1617fc2f1d438611b87b3e63383c4 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= -Date: Mon, 1 Jun 2020 12:49:07 +0200 -Subject: [PATCH] Replace deprecated Thread.isAlive() with Thread.is_alive() - -The isAlive() method of threading.Thread has been removed in Python 3.9. -The is_alive() method is available on Python 2.6+. - -See https://bugs.python.org/issue37804 - -Change-Id: I951b1ae331c3101722fe34babf81d6f82d838380 ---- - zuul/ansible/base/library/command.py | 4 ++-- - zuul/lib/log_streamer.py | 2 +- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/zuul/ansible/base/library/command.py b/zuul/ansible/base/library/command.py -index a3b969d9..0c461b3a 100755 ---- a/zuul/ansible/base/library/command.py -+++ b/zuul/ansible/base/library/command.py -@@ -474,7 +474,7 @@ def zuul_run_command(self, args, zuul_log_id, check_rc=False, close_fds=True, ex - if t: - t.join(10) - with Console(zuul_log_id) as console: -- if t.isAlive(): -+ if t.is_alive(): - console.addLine("[Zuul] standard output/error still open " - "after child exited") - # ZUUL: stdout and stderr are in the console log file -@@ -495,7 +495,7 @@ def zuul_run_command(self, args, zuul_log_id, check_rc=False, close_fds=True, ex - finally: - if t: - with Console(zuul_log_id) as console: -- if t.isAlive(): -+ if t.is_alive(): - console.addLine("[Zuul] standard output/error still open " - "after child exited") - if fail_json_kwargs: -diff --git a/zuul/lib/log_streamer.py b/zuul/lib/log_streamer.py -index 16b72227..9ed124c5 100644 ---- a/zuul/lib/log_streamer.py -+++ b/zuul/lib/log_streamer.py -@@ -181,7 +181,7 @@ class LogStreamer(object): - raise - - def stop(self): -- if self.thd.isAlive(): -+ if self.thd.is_alive(): - self.server.shutdown() - self.server.server_close() - self.thd.join() --- -2.25.4 - diff --git a/0001-Update-cherrypy-and-cheroot-requirement-pinning.patch b/0001-Update-cherrypy-and-cheroot-requirement-pinning.patch deleted file mode 100644 index 0b58089..0000000 --- a/0001-Update-cherrypy-and-cheroot-requirement-pinning.patch +++ /dev/null @@ -1,36 +0,0 @@ -From e8935676a8b6db3b29d419d440f9e82b5090a5b2 Mon Sep 17 00:00:00 2001 -From: Fabien Boucher -Date: Mon, 13 Jul 2020 15:32:53 +0000 -Subject: [PATCH] Update cherrypy and cheroot requirement pinning - -Cheroot 8.3.1 have been released with the https://github.com/cherrypy/cheroot/issues/263 -fix. - -Change-Id: I83aad30a6145ed2c7689d6c25c624c453c07ed2b ---- - requirements.txt | 7 ++----- - 1 file changed, 2 insertions(+), 5 deletions(-) - -diff --git a/requirements.txt b/requirements.txt -index 78eb980f..829c7606 100644 ---- a/requirements.txt -+++ b/requirements.txt -@@ -29,13 +29,10 @@ iso8601 - psutil - fb-re2>=1.0.6 - paho-mqtt --cherrypy==18.3.0; # last version to support cheroot below -+cherrypy - ws4py - routes - pathspec - jsonpath-rw - urllib3!=1.25.4,!=1.25.5 # https://github.com/urllib3/urllib3/pull/1684 --# TODO(tobiash): cheroot 8.1.0 introduced a regression when handling concurrent --# requests. Remove the following line when this issue is resolved: --# https://github.com/cherrypy/cheroot/issues/263 --cheroot<8.1.0 -+cheroot!=8.1.*,!=8.2.*,!=8.3.0 # https://github.com/cherrypy/cheroot/issues/263 --- -2.27.0 - diff --git a/0001-requirements-add-explicit-reference-to-dateutil.patch b/0001-requirements-add-explicit-reference-to-dateutil.patch deleted file mode 100644 index 95f9c39..0000000 --- a/0001-requirements-add-explicit-reference-to-dateutil.patch +++ /dev/null @@ -1,28 +0,0 @@ -From ea0b50c90d22a2f24b288e1a91e2b85f17059cbc Mon Sep 17 00:00:00 2001 -From: Tristan Cacqueray -Date: Mon, 25 May 2020 17:39:59 +0000 -Subject: [PATCH] requirements: add explicit reference to dateutil - -Zuul is using a dateutil provided transitively. This change -makes the requirements explicit. - -Change-Id: I672d409a1bb241e5d199c77acdd51a8260d99ee2 ---- - requirements.txt | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/requirements.txt b/requirements.txt -index 732aa35a..78eb980f 100644 ---- a/requirements.txt -+++ b/requirements.txt -@@ -4,6 +4,7 @@ importlib-resources==1.0.2 - # Early virtualenv 20 had bad file location assumptions - virtualenv!=20.0.0,!=20.0.1,>20 - -+python-dateutil - github3.py>=1.1.0 - PyYAML>=3.1.0 - paramiko>=2.0.1 --- -2.25.4 - diff --git a/README.md b/README.md deleted file mode 100644 index 7ab2483..0000000 --- a/README.md +++ /dev/null @@ -1,279 +0,0 @@ -# Getting started with Zuul on Fedora - -## Upstream documentation - -The upstream documentation is available at: https://zuul-ci.org/docs/zuul/index.html - -## Installation - -This section describes the installation process of the minimal set of Zuul components to -get a working Zuul deployment. Please refer to the upstream documentation for advanced -setup. - -Zuul requires a Web, a Zookeeper and SQL server running. This documentation covers all the step -to bootstrap Zuul. - -### Install and setup Zookeeper - -This process describes the minimal steps to get a Zookeeper service running. You -should refer to the Zookeeper documentation to get a production setup if needed. - -``` -$ mkdir /tmp/zookeeper && cd /tmp/zookeeper -$ curl -OL https://downloads.apache.org/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz -$ tar -xvzf apache-zookeeper-3.6.1-bin.tar.gz -$ cp apache-zookeeper-3.6.1-bin/conf/zoo_sample.cfg apache-zookeeper-3.6.1-bin/conf/zoo.cfg -$ sudo apache-zookeeper-3.6.1-bin/bin/zkServer.sh start -``` - -### Install and setup postgresql - -This process describes the minimal steps to get a postgres service running. You -should refer to the postgrres documentation to get a production setup if needed. - -``` -$ sudo dnf install -y posgresql python3-psycopg2 -$ su - postgres -$ psql - ALTER USER postgres WITH PASSWORD 'mypassword'; -$ createdb --owner=postgres zuul -$ exit -``` - -Update the local access setting: - -``` -$ sudo sed -i 's|127.0.0.1/32 ident|127.0.0.1/32 md5|' /var/lib/pgsql/data/pg_hba.conf -$ sudo systemctl restart posgreql -``` - -Validate server connection by running: - -``` -$ psql -h 127.0.0.1 -U postgres -W zuul -``` - -### Install Zuul components - -To install the packages run: - -``` -$ sudo dnf install zuul-scheduler zuul-executor zuul-web zuul-webui -``` - -### Update the zuul configuration to define the sql connection - -In /etc/zuul/zuul.conf add the following: - -``` -[connection sqlreporter] -driver=sql -dburi=postgresql://postgres:mypassword@127.0.0.1:5432/zuul -``` - -### Setup Ansible virtual environment for the Zuul executor - -The Zuul executor is the component in charge of running Zuul Jobs. A Zuul job is -a set of Ansible playbook. The Zuul executor supports multiple version of Ansible. -Zuul provides a tool to manage the Ansible virtual environments. To initialize them -run: - -``` -$ sudo -u zuul bash -c "cd && zuul-manage-ansible -u -r /var/lib/zuul/ansible-bin" -``` - -### Build the Zuul web UI - -The Zuul web UI is a React application. The Zuul packaging provides the source code of -the application. The following process describe how to compile the source to get a -production build: - -``` -$ curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo -$ sudo dnf install yarn -$ cd /usr/share/zuul-ui/ -$ yarn install -$ REACT_APP_ZUUL_API='' yarn build -``` - -Replace by the URL where the zuul-web API is listening. - -### Start the scheduler and executor - -To do so run: - -``` -$ sudo -u zuul bash -c "ssh-keygen -t rsa -N '' -f /var/lib/zuul/.ssh/id_rsa" -$ sudo systemctl start zuul-scheduler -$ sudo systemctl start zuul-executor -``` - -The services logs are available into /var/log/zuul/zuul.log. - -### Setup the web API - -Install Apache: - -``` -$ sudo dnf install httpd -$ setsebool -P httpd_can_network_connect on -``` - -Then setup the reverve proxy by adding to /etc/httpd/conf.d/zuul.conf the -following content: - -``` -RewriteEngine on -RewriteRule ^/api/tenant/(.*)/console-stream ws://localhost:9000/api/tenant/$1/console-stream [P] -RewriteRule ^/(.*)$ http://localhost:9000/$1 [P] -``` - -Reload Apache: - -``` -$ sudo systemctl relead httpd -``` - -Finally start the zuul-web process - -``` -$ sudo systemctl start zuul-web -``` - -Validate the direct access to the API by running: - -``` -$ curl http://localhost:9000/api/tenants -``` - -Validate the access to the API via the reverse proxy: - -``` -$ curl http:///api/tenants -``` - -## Run a first Zuul job - -In this section, you'll find the steps to get a first periodic job running. - -Please note that, this is a really basic configuration to ensure the services are working -as expected. To go further, please refer to the Zuul documentation to learn how to connect -Zuul to Code Review systems such as Github, Gerrit, Pagure. This demo uses the local system -to run jobs but this has serious limitation and should not be used in production. -Thus Nodepool must be used as the nodes and containers provider for Zuul. -Nodepool supports various cloud providers. Nodepool is packaged into Fedora and here is -its documentaion: https://zuul-ci.org/docs/nodepool/ - -### Prepare a Git repository to host the CI configuration - -We need to prepare a local Git repository to host the pipelines and jobs configuration. - -Follow the process below: - -``` -$ git init /home/fedora/zuul-config -``` - -In /home/fedora/zuul-config/.zuul.yaml add the following content: - -``` -- pipeline: - name: periodic - post-review: true - description: Jobs in this queue are triggered every minute. - manager: independent - precedence: low - trigger: - timer: - - time: '* * * * *' - success: - sqlreporter: - failure: - sqlreporter: - -- job: - name: my-noop - description: Minimal working job - parent: null - run: my-noop.yaml - -- project: - periodic: - jobs: - - my-noop -``` - -Create the /home/fedora/zuul-config/my-noop.yaml and add the following content: - -``` ---- -- hosts: localhost - tasks: - - name: List working directory - command: ls -al {{ ansible_user_dir }} - - name: Sleep 30 seconds - wait_for: - timeout: 30 -``` - -Then commit the configuration by running: - -``` -$ cd /home/fedora/zuul-config/ -$ git config user.name "John Doe" -$ git config user.email "john@localhost" -$ git add -A . -$ git commit -m"Init demo config" -``` - -### Run a Git deamon to serve the config repository - -``` -$ sudo dnf install -y python3-dulwich -$ dulwich web-daemon -l 0.0.0.0 / -``` - -### Add the new connection in the Zuul configuration - -In /etc/zuul/zuul.conf add the following: - -``` -[connection local_git] -driver=git -baseurl=http://localhost:8000/home/fedora -poll_delay=300 -``` - -### Setup the Zuul tenant configuration file - -In /etc/zuul/main.yaml add the following: - -``` -- tenant: - name: default - source: - local_git: - config-projects: - - zuul-config -``` - -### Restart the Zuul services - -``` -$ sudo systemctl restart zuul-* -``` - -### Verify the job executed periodically - -Run the following command to access the builds API endpoint and ensure the -my-noop job run as expected every minutes w/o errors. - -``` -$ curl http:///api/tenant/default/builds | python -m json.tool -``` - -Access the build page, where you should see the periodic job my-noop runs - -``` -http:///t/default/builds -``` diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..5204a84 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +Orphaned for 6+ weeks diff --git a/logging.conf b/logging.conf deleted file mode 100644 index ee2954c..0000000 --- a/logging.conf +++ /dev/null @@ -1,34 +0,0 @@ -[loggers] -keys=root,zuul - -[handlers] -keys=console,normal - -[formatters] -keys=simple - -[logger_root] -level=INFO -handlers=console - -[logger_zuul] -level=INFO -handlers=normal -qualname=zuul -propagate=0 - -[handler_console] -level=INFO -class=StreamHandler -formatter=simple -args=(sys.stdout,) - -[handler_normal] -level=INFO -class=logging.handlers.TimedRotatingFileHandler -formatter=simple -args=('/var/log/zuul/zuul.log', 'midnight', 1, 30,) - -[formatter_simple] -format=%(asctime)s %(levelname)s %(name)s: %(message)s -datefmt= diff --git a/main.yaml b/main.yaml deleted file mode 100644 index a62fde9..0000000 --- a/main.yaml +++ /dev/null @@ -1,3 +0,0 @@ -- tenant: - name: default - source: {} diff --git a/sources b/sources deleted file mode 100644 index feff18a..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -SHA512 (zuul-3.19.1.tar.gz) = 0460e7e8407cd9cc005d1c05be718ca350a526cb7db44bfb1e8fe702a28c127ad828d6f6a7b1786205722e778def571fae80663db3d371df8a06e6b37ca50d89 diff --git a/tests/configure_zuul_jobs.yml b/tests/configure_zuul_jobs.yml deleted file mode 100644 index 7bf5e2e..0000000 --- a/tests/configure_zuul_jobs.yml +++ /dev/null @@ -1,89 +0,0 @@ -- name: Install dulwich - package: - name: python3-dulwich - state: present - become: true - -- name: Create a local git repository - shell: git init {{ ansible_user_dir }}/zuul-config - -- name: Create .zuul.yaml - copy: - src: zuul.yaml - dest: "{{ ansible_user_dir }}/zuul-config/.zuul.yaml" - -- name: Create my-noop.yaml - copy: - src: my-noop.yaml - dest: "{{ ansible_user_dir }}/zuul-config/my-noop.yaml" - -- name: Commit zuul-config changes - shell: "{{ item }}" - register: cmd - failed_when: - - cmd.rc != 0 - - not "'nothing to commit' in cmd.stdout" - args: - chdir: "{{ ansible_user_dir }}/zuul-config/" - loop: - - git config user.name "John Doe" - - git config user.email "john@localhost" - - git add -A . - - git commit -m"Init demo config" - -- name: Ensure dulwich down - shell: pkill -f web-daemon - ignore_errors: true - -# https://bugzilla.redhat.com/show_bug.cgi?id=1866463 -- name: Ensure dulwich running - shell: "python3 /usr/lib64/python3.9/site-packages/dulwich/cli.py web-daemon -l 0.0.0.0 / &" - -- name: Add the git connection into the zuul config - blockinfile: - path: /etc/zuul/zuul.conf - marker: "# {mark} local_git" - block: | - [connection local_git] - driver=git - baseurl=http://localhost:8000/{{ ansible_user_dir }} - poll_delay=300 - become: true - -- name: Setup the Zuul default tenant to load zuul-config - copy: - src: main.yaml - dest: /etc/zuul/main.yaml - become: true - -- name: Restart Zuul components - service: - name: "{{ item }}" - state: restarted - become: true - loop: - - zuul-scheduler - - zuul-executor - - zuul-web - -- name: Give some time to services to fully start - pause: - seconds: 15 - -- name: Check zuul services are up - shell: systemctl is-active {{ item }} - loop: - - zuul-scheduler - - zuul-executor - - zuul-web - become: true - -- name: Give some time to Zuul to trigger and execute the job - pause: - minutes: 2 - -- name: Ensure the my-noop job was executed - shell: python -c "import requests; r = requests.get('http://localhost/api/tenant/default/builds').json(); assert r[0]['job_name'] == 'my-noop'; assert r[0]['result'] == 'SUCCESS'" - -- name: Ensure badges endpoint is working - shell: python -c "import requests; r = requests.get('http://localhost/api/tenant/default/badge').text; assert r.startswith(' gear man, gear-man, germane") -# Expected - executor devel-dependency -addFilter("zuul-executor.noarch: E: devel-dependency libffi-devel") -addFilter("zuul-executor.noarch: E: explicit-lib-dependency libffi-devel") -# No idea for this one -addFilter("zuul-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/zuul-doc/html/objects.inv") -# Expected - https://github.com/rpm-software-management/rpmlint/issues/427 -addFilter("zuul.noarch: E: useless-provides bundled\(ansible\)") diff --git a/zuul.spec b/zuul.spec deleted file mode 100644 index 1b43300..0000000 --- a/zuul.spec +++ /dev/null @@ -1,568 +0,0 @@ -Name: zuul -Version: 3.19.1 -Release: 7%{?dist} -Summary: Trunk Gating System - -# The entire source code is ASL 2.0 except files under %%{python3_sitelib}/zuul/ansible which is GPLv3+ -License: ASL 2.0 and GPLv3+ -URL: https://zuul-ci.org -Source0: %pypi_source - -Source2: zuul-scheduler.service -Source3: zuul-merger.service -Source4: zuul-executor.service -Source5: zuul-web.service -Source6: zuul-fingergw.service -Source7: README.md -Source8: zuul.conf -Source9: logging.conf -Source10: main.yaml - -Patch01: 0001-Remove-another-shebang-and-remove-useless-exec-bits.patch -Patch02: 0001-requirements-add-explicit-reference-to-dateutil.patch -Patch03: 0001-Replace-deprecated-Thread.isAlive-with-Thread.is_ali.patch -Patch04: 0001-Update-cherrypy-and-cheroot-requirement-pinning.patch - -BuildArch: noarch - -BuildRequires: python3-devel -BuildRequires: python3-pbr -BuildRequires: python3-setuptools -BuildRequires: python3-zuul-sphinx -BuildRequires: python3-snowballstemmer -BuildRequires: python3-fixtures -BuildRequires: python3-sphinx-autodoc-typehints -BuildRequires: python3-sphinxcontrib-blockdiag -BuildRequires: python3-sphinxcontrib-programoutput -BuildRequires: python3-sphinxcontrib-openapi -BuildRequires: python3-reno -BuildRequires: python3-CacheControl -BuildRequires: python3-jwt -BuildRequires: python3-github3py -BuildRequires: python3-pyyaml -BuildRequires: python3-paramiko -BuildRequires: python3-GitPython -BuildRequires: python3-daemon -BuildRequires: python3-extras -BuildRequires: python3-statsd -BuildRequires: python3-voluptuous -BuildRequires: python3-gear -BuildRequires: python3-APScheduler -BuildRequires: python3-prettytable -BuildRequires: python3-babel -BuildRequires: python3-kazoo -BuildRequires: python3-sqlalchemy -BuildRequires: python3-alembic -BuildRequires: python3-cryptography -BuildRequires: python3-cherrypy -BuildRequires: python3-ws4py -BuildRequires: python3-routes -BuildRequires: python3-netaddr -BuildRequires: python3-paho-mqtt -BuildRequires: python3-psutil -BuildRequires: python3-fb-re2 -BuildRequires: python3-cachetools -BuildRequires: python3-jsonpath-rw -BuildRequires: python3-dateutil -BuildRequires: python3-iso8601 -BuildRequires: python3-PyMySQL -BuildRequires: python3-psycopg2 -BuildRequires: python3-pathspec -BuildRequires: python3-graphene -BuildRequires: systemd -BuildRequires: ansible - -Provides: bundled(ansible) = 2.9 -Provides: bundled(ansible) = 2.8 -Provides: bundled(ansible) = 2.7 - -%description -Zuul is a program that drives continuous integration, delivery, -and deployment systems with a focus on project gating and -interrelated projects. - - -%package webui -Summary: The Zuul web interface - -%description webui -This package provides the Zuul web interface source code. -Please refers to README.fedora for build and deployment instruction. - -%package scheduler -Summary: The Zuul scheduler service -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: systemd - -%description scheduler -The main Zuul process. Handles receiving events, executing jobs, -collecting results and posting reports. Coordinates the work of -the other components. It also provides a gearman daemon which -the other components use for coordination. - - -%package merger -Summary: The Zuul merger service -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: systemd - -%description merger -Scale-out component that performs git merge operations. -Zuul performs a large number of git operations in the course of -its work. Adding merger processes can help speed Zuul’s processing. -This component is optional (zero or more of these can be run). - - -%package web -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: nodejs -Summary: The Zuul web service - -%description web -A web server that receives “web-hook” events from external providers, -supplies a web dashboard, and provides web-socket access to live -streaming of logs. - - -%package executor -Summary: The Zuul executor service -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: systemd -Requires: git-core -Requires: bubblewrap -# zuul-manage-ansible requires them to create ansible virtualenvs -## Requires: python3-virtualenv -Requires: gcc -Requires: python3-devel -Requires: libffi-devel - -%description executor -Scale-out component for executing jobs. At least one of these is -required. Depending on system configuration, you can expect a single -executor to handle up to about 100 simultaneous jobs. Can handle -the functions of a merger if dedicated mergers are not provided. -One or more of these must be run. - - -%package fingergw -Summary: Executor finger gateway service -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: systemd - -%description fingergw -A gateway which provides finger protocol access to live streaming of logs. - -%package migrate -Summary: Migrate zuul v2 and Jenkins Job Builder to Zuul v3 -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: bubblewrap - -%description migrate -Migrate zuul v2 and Jenkins Job Builder to Zuul v3 - -%package doc -Summary: Zuul documentation - -%description doc -The Zuul HTML documentation - - -%prep -%autosetup -n zuul-%{version} -p1 -sed -i '/^importlib-resources.*/d' requirements.txt -# remove extra uneeded shebangs in zuul_return -# archive on pypi do not preserve links -# could be removed at next release -find zuul/ansible/ -type f -name "zuul_return.py" \ - -exec sed -i '/\/usr\/bin\/python/d' {} \; - -# Inject package version -cat << EOF > zuul/version.py -is_release = True -release_string = "%{version}-%{release}" -class version_info: - def release_string(): - return release_string -EOF -# Fix non compliant shebangs -/usr/bin/pathfix.py -i %{python3} -p -n -k zuul/ansible -install -m 0644 %{SOURCE7} README.fedora -# Fix 0001-Replace-deprecated-Thread.isAlive-with-Thread.is_ali.patch not fully apply -# due to pypi archive removing the symlinks -cp zuul/ansible/base/library/command.py zuul/ansible/2.7/library/ -cp zuul/ansible/base/library/command.py zuul/ansible/2.8/library/ -cp zuul/ansible/base/library/command.py zuul/ansible/2.9/library/ - -%build -%py3_build - -# Create fake zuul clients suitable for sphinx programoutput -cp zuul/cmd/client.py build/zuul -sed -i '1i \#!/usr/bin/env python3' build/zuul -chmod +x build/zuul -cp zuul/cmd/manage_ansible.py build/zuul-manage-ansible -sed -i '1i \#!/usr/bin/env python3' build/zuul-manage-ansible -chmod +x build/zuul-manage-ansible -# Generate documentation (without release note because source doesn't have git log) -sed -e 's/^ *releasenotes$//' -i doc/source/reference/index.rst -rm doc/source/reference/releasenotes.rst -# TODO: https://bugzilla.redhat.com/show_bug.cgi?id=1849654 -# sed '/sphinx_autodoc_typehints/d' -i doc/source/conf.py -PYTHONPATH=../../build/lib PATH=$PATH:$(pwd)/build PBR_VERSION=%{version} SPHINX_DEBUG=1 sphinx-build-3 \ - -b html doc/source build/html -# Remove empty stub files -find build -type f -name "*.pyi" -size 0 -delete -# rm doc build leftovers -rm -Rf build/html/.buildinfo build/html/.doctrees -# Fix file-not-utf8 -iconv -f iso8859-1 -t utf-8 build/html/objects.inv > build/html/objects.inv.conv && \ - mv -f build/html/objects.inv.conv build/html/objects.inv -# Fix wrong-file-end-of-line-encoding -sed -i 's/\r$//' LICENSE -sed -i 's/\r$//' build/html/objects.inv - -%install -install -p -d -m 0755 %{buildroot}/%{_datadir}/zuul-ui -mv web/* %{buildroot}/%{_datadir}/zuul-ui/ -%py3_install -rm -Rf %{buildroot}%{python3_sitelib}/zuul/web/static -install -p -D -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/zuul-scheduler.service -install -p -D -m 0644 %{SOURCE3} %{buildroot}%{_unitdir}/zuul-merger.service -install -p -D -m 0644 %{SOURCE4} %{buildroot}%{_unitdir}/zuul-executor.service -install -p -D -m 0644 %{SOURCE5} %{buildroot}%{_unitdir}/zuul-web.service -install -p -D -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/zuul-fingergw.service -install -p -D -m 0640 %{SOURCE8} %{buildroot}%{_sysconfdir}/zuul/zuul.conf -install -p -D -m 0644 %{SOURCE9} %{buildroot}%{_sysconfdir}/zuul/logging.conf -install -p -D -m 0644 %{SOURCE10} %{buildroot}%{_sysconfdir}/zuul/main.yaml -install -p -d -m 0700 %{buildroot}%{_sharedstatedir}/zuul -install -p -d -m 0755 %{buildroot}%{_localstatedir}/log/zuul - -# Prepare lib directory -install -p -d -m 0700 %{buildroot}%{_sharedstatedir}/zuul/.ssh -install -p -d -m 0755 %{buildroot}%{_sharedstatedir}/zuul/ansible -install -p -d -m 0755 %{buildroot}%{_sharedstatedir}/zuul/executor -install -p -d -m 0755 %{buildroot}%{_sharedstatedir}/zuul/git -install -p -d -m 0700 %{buildroot}%{_sharedstatedir}/zuul/keys - - -%pre -getent group zuul >/dev/null || groupadd -r zuul -if ! getent passwd zuul >/dev/null; then - useradd -r -g zuul -G zuul -d %{_sharedstatedir}/zuul -s /sbin/nologin -c "Zuul Daemon" zuul -fi -exit 0 - - -%post scheduler -%systemd_post zuul-scheduler.service -%post merger -%systemd_post zuul-merger.service -%post web -%systemd_post zuul-web.service -%post executor -%systemd_post zuul-executor.service -%post fingergw -%systemd_post zuul-fingergw.service - - -%preun scheduler -%systemd_preun zuul-scheduler.service -%preun merger -%systemd_preun zuul-merger.service -%preun web -%systemd_preun zuul-web.service -%preun executor -%systemd_preun zuul-executor.service -%preun fingergw -%systemd_preun zuul-fingergw.service - - -%files -%license LICENSE -%doc README.rst -%dir %attr(0755,zuul,zuul) %{_sysconfdir}/zuul -%config(noreplace) %attr(0640,zuul,zuul) %{_sysconfdir}/zuul/zuul.conf -%config(noreplace) %attr(0644,zuul,zuul) %{_sysconfdir}/zuul/main.yaml -%config(noreplace) %attr(0644,zuul,zuul) %{_sysconfdir}/zuul/logging.conf -%dir %attr(0755,zuul,zuul) %{_sharedstatedir}/zuul -%dir %attr(0755,zuul,zuul) %{_sharedstatedir}/zuul/.ssh -%dir %attr(0755,zuul,zuul) %{_sharedstatedir}/zuul/ansible -# Zuul runtime check complains -# Project key directory /var/lib/zuul/keys must be mode 0700; current mode is 755 -%dir %attr(0700,zuul,zuul) %{_sharedstatedir}/zuul/keys -%dir %attr(0755,zuul,zuul) %{_localstatedir}/log/zuul -%{python3_sitelib}/zuul -%{python3_sitelib}/zuul-*.egg-info/ -%{_bindir}/zuul -%{_bindir}/zuul-bwrap - -%files webui -%license LICENSE -%{_datadir}/zuul-ui - -%files scheduler -%license LICENSE -%{_bindir}/zuul-scheduler -%{_unitdir}/zuul-scheduler.service - -%files merger -%license LICENSE -%{_bindir}/zuul-merger -%{_unitdir}/zuul-merger.service - -%files web -%license LICENSE -%{_bindir}/zuul-web -%{_unitdir}/zuul-web.service - -%files executor -%license LICENSE -%{_bindir}/zuul-executor -%{_bindir}/zuul-manage-ansible -%{_unitdir}/zuul-executor.service -%dir %attr(0755,zuul,zuul) %{_sharedstatedir}/zuul/ansible -%dir %attr(0755,zuul,zuul) %{_sharedstatedir}/zuul/executor - -%files fingergw -%license LICENSE -%{_bindir}/zuul-fingergw -%{_unitdir}/zuul-fingergw.service - -%files migrate -%license LICENSE -%{_bindir}/zuul-migrate - -%files doc -%license LICENSE -%doc build/html README.fedora - - -%changelog -* Sat Jul 23 2022 Fedora Release Engineering - 3.19.1-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sun Jun 19 2022 Python Maint - 3.19.1-6 -- Rebuilt for Python 3.11 - -* Sat Jan 22 2022 Fedora Release Engineering - 3.19.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Fri Jul 23 2021 Fedora Release Engineering - 3.19.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Fri Jun 04 2021 Python Maint - 3.19.1-3 -- Rebuilt for Python 3.10 - -* Tue Jan 26 2021 Matthieu Huin - 3.19.1-2 -- Fix incorrect static_path, enabling badges endpoint - -* Mon Jul 27 2020 Fabien Boucher - 3.19.1-1 -- Bump to 3.19.1 -- Fedora rawhide compat - -* Tue Mar 3 2020 Tristan Cacqueray - 3.18.0-1 -- Bump to 3.18.0 -- Use -f argument for services -- Use smart-reconfigure command for scheduler reload - -* Wed Feb 26 2020 Tristan Cacqueray - 3.13.0-2 -- Add security fix - -* Tue Dec 10 2019 Fabien Boucher - 3.13.0-1 -- Bump to 3.13.0 - -* Tue Oct 22 2019 Fabien Boucher - 3.11.1-1 -- Bump to 3.11.1 - -* Mon Sep 23 2019 Tristan Cacqueray - 3.10.2-2 -- Remove SCL leftovers - -* Tue Sep 17 2019 Tristan Cacqueray - 3.10.2-1 -- Add synchronize rsh security fix - -* Thu Aug 15 2019 Tristan Cacqueray - 3.10.1-1 -- Bump to 3.10.1 - -* Mon May 20 2019 Tristan Cacqueray - 3.8.1-3 -- Add merger optimization - -* Tue May 14 2019 Tristan Cacqueray - 3.8.1-2 -- Remove a couple of un-needed patches - -* Wed May 8 2019 Tristan Cacqueray - 3.8.1-1 -- Bump to 3.8.1 -- Remove React service worker - -* Wed Apr 17 2019 Tristan Cacqueray - 3.8.0-1 -- Bump to 3.8.0 - -* Mon Mar 25 2019 Tristan Cacqueray - 3.7.1-1 -- Bump to 3.7.1 - -* Mon Mar 18 2019 Tristan Cacqueray - 3.7.0-1 -- Bump to 3.7.0 - -* Mon Feb 11 2019 Tristan Cacqueray - 3.6.0-1 -- Bump to 3.6.0 - -* Fri Feb 8 2019 Tristan Cacqueray - 3.5.0-2 -- Cherry-pick github fix -- Fix config endpoint - -* Wed Jan 23 2019 Javier Peña - 3.5.0-1 -- Bump to 3.5.0 - -* Wed Jan 2 2019 Tristan Cacqueray - 3.4.0-1 -- Bump to 3.4.0 - -* Thu Nov 29 2018 Tristan Cacqueray - 3.3.1-1 -- Update the openshift resources patches -- Use package version in the zuul.version module - -* Tue Nov 6 2018 Tristan Cacqueray - 3.3.0-1 -- Bump to 3.3.0 - -* Mon Sep 24 2018 Tristan Cacqueray - 3.2.0-6 -- Add react web interface - -* Wed Sep 19 2018 Tristan Cacqueray - 3.2.0-5 -- Bump to latest master - -* Thu Aug 9 2018 Tristan Cacqueray - 3.2.0-4 -- Add timer trigger fix - -* Mon Aug 6 2018 Tristan Cacqueray - 3.2.0-3 -- Add missing canonical name in scheduler status - -* Sat Aug 4 2018 Tristan Cacqueray - 3.2.0-2 -- Add node age to webpage - -* Mon Jul 30 2018 Tristan Cacqueray - 3.2.0-1 -- Bump version - -* Wed Jul 18 2018 Tristan Cacqueray - 3.1.0-5 -- Bump to last master for ui fix - -* Mon Jul 2 2018 Tristan Cacqueray - 3.1.0-4 -- Bump to 3.1.1 tech preview - -* Fri Jun 22 2018 Tristan Cacqueray - 3.1.0-3 -- Add resource connection type patch -- Add patch to get the zuul-scheduler -t validation option -- Add /etc/localtime patch - -* Thu Jun 21 2018 Tristan Cacqueray - 3.1.0-2 -- Fix tenant status page reload issue -- Add glyphicon status balls - -* Fri Jun 15 2018 Tristan Cacqueray - 3.1.0-1 -- Bump version to 3.1.0 -- Add angular6 patch - -* Mon May 28 2018 Tristan Cacqueray - 3.0.2-2 -- Bump ansible patch to 2.5 version - -* Fri Apr 13 2018 Tristan Cacqueray - 3.0.2-1 -- Update version to 3.0.2 release -- Update the MQTT driver patch - -* Fri Apr 13 2018 Tristan Cacqueray - 3.0.1-1 -- Update version to 3.0.1 release -- Add patch to fix tag reporter -- Update the MQTT driver patch - -* Thu Mar 29 2018 Tristan Cacqueray - 3.0.0-26 -- Update version to 3.0.0 release - -* Tue Mar 20 2018 Fabien Boucher - 3.0.0-25 -- Bump version for security fixes -- Add patches for supporting zuul to start with a broken config - -* Fri Mar 16 2018 Tristan Cacqueray - 3.0.0-24 -- Bump version for security fixes -- Add new Nodepool dashboards - -* Thu Mar 15 2018 Tristan Cacqueray - 3.0.0-23 -- Bump version - -* Tue Mar 13 2018 Tristan Cacqueray - 3.0.0-22 -- Bump version - -* Thu Feb 22 2018 Tristan Cacqueray - 3.0.0-21 -- Add missing ansible-2.4 fix - -* Wed Feb 21 2018 Tristan Cacqueray - 3.0.0-20 -- Bump version -- Add branch-column patch -- Fix dynamic config loader - -* Mon Feb 19 2018 Tristan Cacqueray - 3.0.0-19 -- Bump version and switch to ansible 2.4 requirement - -* Wed Feb 07 2018 Tristan Cacqueray - 3.0.0-18 -- Bump version -- Add pipelines.json endpoint - -* Wed Jan 31 2018 Tristan Cacqueray - 3.0.0-17 -- Bump version -- Add external webui built with npm - -* Mon Jan 22 2018 Tristan Cacqueray - 3.0.0-16 -- Bump version -- Add config-loader optimization patch -- Add job page description patch -- Add dynamic config load -- Remove with_restart in systemd unit -- Add doc sub package - -* Wed Dec 27 2017 Tristan Cacqueray - 3.0.0-15 -- Bump version -- Add jmespath to the executor requirements -- Add fingergw sub-package -- Add zookeeper retry logic patch - -* Tue Dec 05 2017 Tristan Cacqueray - 3.0.0-14 -- Bump version - -* Wed Nov 29 2017 Tristan Cacqueray - 3.0.0-13 -- Bump version -- Add MQTT driver patch -- Add log_stream options patch - -* Fri Nov 17 2017 Tristan Cacqueray - 3.0.0-12 -- Force ssh known_host to be in scl user home - -* Mon Nov 6 2017 Tristan Cacqueray - 3.0.0-11 -- Bump version and slightly update the patches - -* Wed Nov 1 2017 Tristan Cacqueray - 3.0.0-10 -- Bump version and remove merged patches - -* Wed Sep 27 2017 Tristan Cacqueray - 3.0.0-9 -- Add newrev patch - -* Thu Sep 14 2017 Tristan Cacqueray - 3.0.0-8 -- Add zuul-web interfaces - -* Tue Sep 05 2017 Tristan Cacqueray - 3.0.0-7 -- Add scheduler StartPost command to wait for gearman server. - -* Fri Aug 25 2017 Tristan Cacqueray - 3.0.0-6 -- Fix zuul-web static file missing from python module -- Fix bwrap usage (LD_LIBRARY_PATH is removed by setuid) -- Bump version - -* Tue Jul 25 2017 Tristan Cacqueray - 3.0.0-5 -- Bump version and fix executor reload - -* Wed Jul 12 2017 Tristan Cacqueray - 3.0.0-4 -- Bump version and add zuul-web package - -* Thu Jul 6 2017 Tristan Cacqueray - 3.0.0-3 -- Remove demonization from service file - -* Thu Jun 29 2017 Tristan Cacqueray - 3.0.0-2 -- Fix service reload - -* Mon Jun 19 2017 Tristan Cacqueray - 3.0.0-1 -- Initial packaging