diff options
author | Monty Taylor <mordred@inaugust.com> | 2017-09-26 08:36:15 -0500 |
---|---|---|
committer | Monty Taylor <mordred@inaugust.com> | 2017-09-26 10:16:57 -0500 |
commit | 9625385fe9e36177f2936d8c02cde2a2cc56f69c (patch) | |
tree | 7054b00c70083ba202b867fc96a99f4d6400f644 | |
parent | ac574ef386d199d922e82c44b64e6e84df791a77 (diff) | |
download | zuul-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.yaml | 14 | ||||
-rw-r--r-- | playbooks/zuul-migrate.yaml | 26 | ||||
-rw-r--r-- | playbooks/zuul-migrate/post.yaml | 26 | ||||
-rw-r--r-- | playbooks/zuul-migrate/run.yaml | 10 | ||||
-rwxr-xr-x | tools/run-migration.sh | 39 |
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 |