summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMonty Taylor <mordred@inaugust.com>2017-09-26 08:36:15 -0500
committerMonty Taylor <mordred@inaugust.com>2017-09-26 10:16:57 -0500
commit9625385fe9e36177f2936d8c02cde2a2cc56f69c (patch)
tree7054b00c70083ba202b867fc96a99f4d6400f644
parentac574ef386d199d922e82c44b64e6e84df791a77 (diff)
downloadzuul-9625385fe9e36177f2936d8c02cde2a2cc56f69c.tar.gz
Add local file copying steps
These are the things one does after running the script. Update the job to run the actual script we're running to generate the data the way we're running it. Change-Id: I62d75d561efbb290d2fccbabf4fabfbf705e6288
-rw-r--r--.zuul.yaml14
-rw-r--r--playbooks/zuul-migrate.yaml26
-rw-r--r--playbooks/zuul-migrate/post.yaml26
-rw-r--r--playbooks/zuul-migrate/run.yaml10
-rwxr-xr-xtools/run-migration.sh39
5 files changed, 82 insertions, 33 deletions
diff --git a/.zuul.yaml b/.zuul.yaml
index 2b4c49a5a..1962611ae 100644
--- a/.zuul.yaml
+++ b/.zuul.yaml
@@ -31,10 +31,12 @@
- job:
name: zuul-migrate
parent: unittests
- run: playbooks/zuul-migrate
+ run: playbooks/zuul-migrate/run
+ post-run: playbooks/zuul-migrate/post
# We're adding zuul to the required-projects so that we can also trigger
# this from project-config changes
required-projects:
+ - openstack-infra/openstack-zuul-jobs
- openstack-infra/project-config
- name: openstack-infra/zuul
override-branch: feature/zuulv3
@@ -47,22 +49,22 @@
success-url: 'html/feature/zuulv3/'
irrelevant-files:
- zuul/cmd/migrate.py
- - playbooks/zuul-migrate.yaml
+ - playbooks/zuul-migrate/.*
- tox-cover:
irrelevant-files:
- zuul/cmd/migrate.py
- - playbooks/zuul-migrate.yaml
+ - playbooks/zuul-migrate/.*
voting: false
- tox-pep8
- tox-py35:
irrelevant-files:
- zuul/cmd/migrate.py
- - playbooks/zuul-migrate.yaml
+ - playbooks/zuul-migrate/.*
- zuul-stream-functional
- zuul-migrate:
files:
- zuul/cmd/migrate.py
- - playbooks/zuul-migrate.yaml
+ - playbooks/zuul-migrate/.*
gate:
jobs:
- build-openstack-infra-sphinx-docs:
@@ -71,7 +73,7 @@
- tox-py35:
irrelevant-files:
- zuul/cmd/migrate.py
- - playbooks/zuul-migrate.yaml
+ - playbooks/zuul-migrate/.*
- zuul-stream-functional
post:
jobs:
diff --git a/playbooks/zuul-migrate.yaml b/playbooks/zuul-migrate.yaml
deleted file mode 100644
index 2001982f5..000000000
--- a/playbooks/zuul-migrate.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-- hosts: all
- tasks:
-
- - name: Install migration dependencies
- command: "python3 -m pip install --user src/git.openstack.org/openstack-infra/zuul[migrate]"
-
- - name: Migrate the data
- command: "python3 ../zuul/zuul/cmd/migrate.py zuul/layout.yaml jenkins/jobs nodepool/nodepool.yaml . --mapping=zuul/mapping.yaml -v"
- args:
- chdir: src/git.openstack.org/openstack-infra/project-config
-
- - name: Collect generated job config
- synchronize:
- dest: "{{ zuul.executor.log_root }}"
- mode: pull
- src: "src/git.openstack.org/openstack-infra/project-config/zuul.d"
- verify_host: true
- no_log: true
-
- - name: Collect generated playbooks
- synchronize:
- dest: "{{ zuul.executor.log_root }}/playbooks"
- mode: pull
- src: "src/git.openstack.org/openstack-infra/project-config/playbooks/legacy"
- verify_host: true
- no_log: true
diff --git a/playbooks/zuul-migrate/post.yaml b/playbooks/zuul-migrate/post.yaml
new file mode 100644
index 000000000..2647b7d18
--- /dev/null
+++ b/playbooks/zuul-migrate/post.yaml
@@ -0,0 +1,26 @@
+- hosts: all
+ tasks:
+
+ - name: Collect openstack-zuul-jobs generated job config
+ synchronize:
+ dest: "{{ zuul.executor.log_root }}/openstack-zuul-jobs"
+ mode: pull
+ src: "src/git.openstack.org/openstack-infra/openstack-zuul-jobs/zuul.d"
+ verify_host: true
+ no_log: true
+
+ - name: Collect project generated job config
+ synchronize:
+ dest: "{{ zuul.executor.log_root }}/openstack-zuul-jobs"
+ mode: pull
+ src: "src/git.openstack.org/openstack-infra/project-config/zuul.d"
+ verify_host: true
+ no_log: true
+
+ - name: Collect generated playbooks
+ synchronize:
+ dest: "{{ zuul.executor.log_root }}/playbooks"
+ mode: pull
+ src: "src/git.openstack.org/openstack-infra/openstack-zuul-jobs/playbooks/legacy"
+ verify_host: true
+ no_log: true
diff --git a/playbooks/zuul-migrate/run.yaml b/playbooks/zuul-migrate/run.yaml
new file mode 100644
index 000000000..2ba81d039
--- /dev/null
+++ b/playbooks/zuul-migrate/run.yaml
@@ -0,0 +1,10 @@
+- hosts: all
+ tasks:
+
+ - name: Install migration dependencies
+ command: "python3 -m pip install --user src/git.openstack.org/openstack-infra/zuul[migrate]"
+
+ - name: Migrate the data
+ command: tools/run-migration.sh -v --final
+ args:
+ chdir: src/git.openstack.org/openstack-infra/zuul
diff --git a/tools/run-migration.sh b/tools/run-migration.sh
index 6c7e25000..be297f44f 100755
--- a/tools/run-migration.sh
+++ b/tools/run-migration.sh
@@ -17,7 +17,44 @@
# Stupid script I'm using to test migration script locally
# Assumes project-config is adjacent to zuul and has the mapping file
+OPTS=$(getopt -o v --long final -n $0 -- "$@")
+if [ $? != 0 ] ; then
+ echo "Failed parsing options." >&2
+ exit 1
+fi
+eval set -- "$OPTS"
+set -ex
+
+FINAL=0
+VERBOSE=""
+
+while true; do
+ case "$1" in
+ --final)
+ FINAL=1
+ shift
+ ;;
+ -v)
+ VERBOSE=-v
+ shift
+ ;;
+ --)
+ shift
+ break
+ ;;
+ esac
+done
+
BASE_DIR=$(cd $(dirname $0)/../..; pwd)
cd $BASE_DIR/project-config
+if [[ $FINAL ]] ; then
+ git reset --hard
+fi
python3 $BASE_DIR/zuul/zuul/cmd/migrate.py --mapping=zuul/mapping.yaml \
- zuul/layout.yaml jenkins/jobs nodepool/nodepool.yaml .
+ zuul/layout.yaml jenkins/jobs nodepool/nodepool.yaml . $VERBOSE
+if [[ $FINAL ]] ; then
+ find ../openstack-zuul-jobs/playbooks/legacy -maxdepth 1 -mindepth 1 \
+ -type d | xargs rm -rf
+ mv zuul.d/zuul-legacy-* ../openstack-zuul-jobs/zuul.d/
+ mv playbooks/legacy/* ../openstack-zuul-jobs/playbooks/legacy/
+fi