In zuul, roles can be easily included cross repos, while playbooks need
to be replicated and copied.
This change creates three roles roles, and move tasks to be included in
the new roles, so the playbooks are just minimal, and replicating them
is not a problem since the logic is in roles that are included
The common variables are loaded in the role common, the node preparation
i moved to the prepare-node role, and it's now called in the pre,yaml
playbook in pre-run.
run-test role contains the rendering of bash scripts and effective test
run
Taiga-id: https://tree.taiga.io/project/tripleo-ci-board/task/112
Change-Id: Ie51fcfbee79727d04fca47d26a5ed8ad44ed3bf6
Follows the same configuration that was used on
tripleo-quickstart-extras and documented use on tripleo-docs.
Change-Id: Iba8a2db92137f9f6ad28f498627eb1b87039d99f
Story: https://tree.taiga.io/project/tripleo-ci-board/task/381
Implement the standalone upgrade in CI.
This deploy a N-1 standalone deployment, upgrade the repository, the
packages, and run tripleo upgrade.
The upgrade coverage is limited to:
- upgrade_tasks.
- non-HA services.
This means that no upgrade orchestration is tested and that HA is not
covered.
Change-Id: Id4877152ca6c233e193593995dd13890e17a535b
Depends-On: I2a4ffd8ae26e0965028422c649243a65fef79e65
Fixes problem where log collection was using config files from
old location after we already switched deployment to use new location.
This was not observed because the file content was the same but
once we attempted to remove the old files we discovered the issue.
Prepares for removal of config files from their old location.
Change-Id: I70aeb3724d6d162aa6d8b00024f3ce1a74dbf79f
Story: https://tree.taiga.io/project/tripleo-ci-board/task/7
we need to pass some zuul variables to the inner ansible calls. We dump
the zuul variables subtree to a file, then we add it as extra-vars to
the ansible calls.
Change-Id: I8d7c877b64cf22c00b1ad538f25ad4ff87574a8a
This review contains the following changes and references work from [1]:
DRY_RUN, STATS_* and COLLECT_CONF vars:
The dryrun ansible var will not be defined by default,
only manually defined at reproducer and similar.
- PLAYBOOK_DRY_RUN -> <job config>:dryrun
The STATS_ vars will be re-implemented after TOCI refactoring
featureset related:
It does the following move to ansible:
- FEATURESET_FILE -> common.yaml:job_featureset_file
- FEATURESET_CONF -> common.yaml:featureset_conf (job_featureset_file +
featureset-multinode-common.yml)
-> ovb.yaml:featureset_conf (job_featureset_file)
overrides common.yaml
Also add additional ansible variables:
- multinode_featureset_file: to point to tq featureset-multinode-common.yaml
- tripleo_quickstart_dir: to point to tq dir at tripleo_root
- common_featureset_conf to have the --extra-vars for the featurset_file
Replace toci ENV_VARS by ansible env_vars:
This move the ENV_VARS to the different
environment_type yaml config files.
It also implements there the check if it's running in RDO,
to add the extra config for it.
Also note that RHCLOUD env variable has being removed,
and harcoded the use with "rdocloud".
Move nodes_file and nodes_args to common.yaml:
As part of [1] task, we do the following move
from toci bash environment variables:
- NODES_FILE -> common.yaml:nodes_file
- NODES_ARGS -> common.yaml:nodes_args
NODES_FILE exported for the reproducer (will be addressed in a
separate change)
[1] https://trello.com/c/AerVRkBH/887-replace-bash-environment-variables-in-tociquickstartsh-with-ansible-variables-from-zuul-inventory-or-zuul-job-config-s17
Change-Id: I786ef968953e2bff34939c15c16a01f10130d2aa
build-test-packages had to be turned off in
order to land a patch that moved scen007 to nv
Depends-On: Ib28f20db0aa1db9f2c5b3cbbdae1c85c97bbeba1
Change-Id: I95f59ed067df55f64c62c0343f93488ad8696884
Move scenario007 to nv until the issue is resolved.
Scenario007 is preventing other patches from landing.
This patch skips the build-test-repo role.
Related-Bug: #1787268
Related-Bug: #1787244
Change-Id: I0b76c432440f78cab8199eb30c0295d53f137659
No longer using the bash function is_featureset() to match a
particular tag to a featureset config. Now upgrade_tags are set
in the job definition and tags are specified for each environment.
Upgrade/update related tags are calculated with the legacy logic.
Implementing card [1]
[1] https://trello.com/c/DdSHkgnE/884-replace-tocijobtype-variable-s17-undercloud-playbooks-environment-tags
Change-Id: If9ea1f7362e0b11b4d26f0d083b47de1f7642416
Implementing "Replace TOCI_JOBTYPE variable (s17)"
" - $UNDERCLOUD $PLAYBOOKS $ENVIRONMENT $TAGS"
- featureset is (should be) always set (never undefined)
- environment_type is (should be) always set (no default)
- Clear PLAYBOOKS, ENVIRONMENT and UNDERCLOUD vars
- Remove old deprecated graphite line
It also execise the same CI as the 'master' noop change [2].
basically, run the same amount of CI as tripleo-quickstart but
for changes at tripleo-ci playbook only.
Implements card [1]
[1] https://trello.com/c/DdSHkgnE/884-replace-tocijobtype-variable-s17-undercloud-playbooks-environment-tags
[2] https://review.openstack.org/#/c/560445
Change-Id: If16186ba2de37d2f47fdfbab3b83407eeb0020fc
Since we create the collect logs script only at the end of the playbooks
run, when a job times out, there is no collect_logs.sh script created,
and the post-run playbook doesn't actually run anything.
This change split the function in two parts, the first part creates the
script, and its call is moved to before the playbooks run. The second
part is moved to toci_quickstart directly and runs after the playbooks.
The second part should not be needed anymore with zuulv3 in rdo
provider.
Closes-Bug: #1784417
Change-Id: Iee897f780c93bdf847e188fc033e8be112e12a4f
Some work in:
https://review.openstack.org/#/q/topic:toci_jobtype+(status:open+OR+status:merged)
Broke the containerized undercloud upgrade jobs and probably other
upgrade jobs, the TAG variable was overriden by featureset tags while we
need the upgrade tags as well.
This patch moves the logic after the 'case' that already managed a bunch
of tag. So as a result, we should have tags from the case and the tags
needed for the upgrade jobs.
Some other work in
https://review.openstack.org/582466
Broke our ability to stop at the first playbook failure, so if a
playbook fails, we continue to test the next in the list, and if that
passes, we are reporting a false positive
tripleo-common: Fix overwriting downloaded config files
Depends-On: Ib1d3c68ec3c4048ffc7277daf84834288ea50e48
Change-Id: I8330687ec64f1ebb7e3b100410d5bdc3e67ae7f0
Closes-Bug: #1783399
Closes-Bug: #1783857
This are the variable replaced
- $UNDERCLOUD -> {{ undercloud }}
- $ENVIRONMENT -> {{ environment_infra }}
- $PLAYBOOKS -> {{ playbooks }}
NOTE: 'environment' variable name is already taken
that's why we use 'environment_infra'
They are stored at vars/{{ environment_type }}.yaml
Change-Id: I79d2b8b3a4bd1fbb46d80d82b9a946974c1cde8f
For vars that are common to all the jobs, we can have a
vars/common.yaml file with it and add the appropiate
ansible task to read it
Included vars:
- tripleo_root
- workspace
- vxlan_vars
- extra_vars
- periodic
Also some bash input has being replaced by ansible counterpart:
- The variable 'ansible_user_id' is used instead of 'USER' bash env.
Change-Id: I3f741a78db854b7c0aa9c4751677d9a08b99228d