Merge "Add document pull functionality to deploy job" into v2
This commit is contained in:
commit
ff65f459b2
|
@ -1,13 +0,0 @@
|
|||
- op: replace
|
||||
path: /providers/0/versions/v0.3.2
|
||||
value: ../airshipctl/manifests/function/capm3/v0.3.2
|
||||
- op: replace
|
||||
path: /providers/1/versions/v0.3.7
|
||||
value: ../airshipctl/manifests/function/cabpk/v0.3.7
|
||||
- op: replace
|
||||
path: /providers/2/versions/v0.3.7
|
||||
value: ../airshipctl/manifests/function/capi/v0.3.7
|
||||
- op: replace
|
||||
path: /providers/3/versions/v0.3.7
|
||||
value: ../airshipctl/manifests/function/cacpk/v0.3.7
|
||||
|
|
@ -1,9 +1,2 @@
|
|||
resources:
|
||||
- ../../../../airshipctl/manifests/function/clusterctl
|
||||
patchesJson6902:
|
||||
- target:
|
||||
group: airshipit.org
|
||||
version: v1alpha1
|
||||
kind: Clusterctl
|
||||
name: clusterctl_init
|
||||
path: clusterctl-patch.yaml
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# Ensure that Treasuremap uses the same airshipctl reference for setup scripts
|
||||
# as well as the manifests cloned in document pull.
|
||||
- hosts: primary
|
||||
tasks:
|
||||
- name: Checkout version
|
||||
shell: git checkout "{{ airshipctl_ref | default('HEAD') }}"
|
||||
args:
|
||||
chdir: "{{ zuul.projects['opendev.org/airship/airshipctl'].src_dir }}"
|
||||
|
||||
- name: Print version
|
||||
shell: echo "Using airshipctl ref $(git rev-parse HEAD)"
|
||||
args:
|
||||
chdir: "{{ zuul.projects['opendev.org/airship/airshipctl'].src_dir }}"
|
|
@ -25,8 +25,14 @@
|
|||
- ./tools/deployment/30_deploy_controlplane.sh
|
||||
|
||||
- name: "Run gate scripts"
|
||||
include_role:
|
||||
name: airshipctl-run-script
|
||||
shell: |
|
||||
{{ gate_script_path }}
|
||||
args:
|
||||
chdir: "{{ zuul.project.src_dir }}"
|
||||
environment:
|
||||
AIRSHIPCTL_REF: "{{ airshipctl_ref | default('') }}"
|
||||
AIRSHIPCTL_REPO_URL: "https://opendev.org/airship/airshipctl.git"
|
||||
TREASUREMAP_PROJECT: "{{ ansible_user_dir }}/{{ zuul.project.src_dir }}"
|
||||
vars:
|
||||
gate_script_path: "{{ item }}"
|
||||
with_items: "{{ gate_scripts | default(gate_scripts_default) }}"
|
||||
|
|
|
@ -17,22 +17,31 @@ set -xe
|
|||
: ${AIRSHIPCTL_PROJECT:="../airshipctl"}
|
||||
: ${TREASUREMAP_PROJECT:="$(pwd)"}
|
||||
|
||||
export AIRSHIPCTL_WS=${AIRSHIPCTL_WS:-$AIRSHIPCTL_PROJECT}
|
||||
export AIRSHIP_CONFIG_MANIFEST_DIRECTORY=${AIRSHIP_CONFIG_MANIFEST_DIRECTORY:-$TREASUREMAP_PROJECT}
|
||||
export AIRSHIP_SITE_NAME=${AIRSHIP_SITE_NAME:-"manifests/site/test-site"}
|
||||
export AIRSHIP_SITE_NAME=${AIRSHIP_SITE_NAME:-"test-site"}
|
||||
export AIRSHIP_CONFIG_METADATA_PATH=${AIRSHIP_CONFIG_METADATA_PATH:-"treasuremap/manifests/site/$AIRSHIP_SITE_NAME/metadata.yaml"}
|
||||
|
||||
export AIRSHIP_CONFIG_METADATA_PATH=${AIRSHIP_CONFIG_METADATA_PATH:-"$AIRSHIP_SITE_NAME/metadata.yaml"}
|
||||
# Primary repo options
|
||||
export AIRSHIP_CONFIG_PRIMARY_REPO_URL=${AIRSHIP_CONFIG_PRIMARY_REPO_URL:-"${TREASUREMAP_PROJECT}"}
|
||||
export AIRSHIPCTL_REPO_URL=${AIRSHIPCTL_REPO_URL:-"https://opendev.org/airship/airshipctl.git"}
|
||||
export TREASUREMAP_REF=${TREASUREMAP_REF:-"$(git rev-parse HEAD)"}
|
||||
|
||||
cd ${AIRSHIPCTL_PROJECT}
|
||||
# NOTE(drewwalters96): Override $AIRSHIPCTL_REF to pin airshipctl to a specific
|
||||
# git commit. Defaults to cloned version.
|
||||
export AIRSHIPCTL_REF=${AIRSHIPCTL_REF:-"$(git rev-parse HEAD)"}
|
||||
|
||||
./tools/deployment/22_test_configs.sh
|
||||
|
||||
# TODO: may not need/want this since treasuremap repo is already present,
|
||||
# and branch checkout seems not to be working anyway for some reason?
|
||||
# Add the airshipctl manifest defintion
|
||||
airshipctl config set-manifest treasuremap_ci \
|
||||
--repo airshipctl \
|
||||
--url "${AIRSHIPCTL_REPO_URL}" \
|
||||
--commithash "${AIRSHIPCTL_REF}"
|
||||
|
||||
# Add the manifest defintion for Treasuremap
|
||||
#airshipctl config set-manifest dummy_manifest \
|
||||
# --repo treasuremap \
|
||||
# --url https://opendev.org/airship/treasuremap \
|
||||
# --branch v2 \
|
||||
# --primary
|
||||
airshipctl config set-manifest treasuremap_ci \
|
||||
--repo primary \
|
||||
--url "${AIRSHIP_CONFIG_PRIMARY_REPO_URL}" \
|
||||
--commithash "${TREASUREMAP_REF}" \
|
||||
|
||||
airshipctl config set-context ephemeral-cluster --manifest treasuremap_ci
|
||||
airshipctl config set-context target-cluster --manifest treasuremap_ci
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
set -xe
|
||||
|
||||
# TODO(drewwalters96): The document pull command is not invoked from a script
|
||||
# in airshipctl since it uses the -n (no checkout) option. This enables the
|
||||
# Treasuremap repository to use a pinned version of airshipctl.
|
||||
#
|
||||
# When airshipctl removes the -n from its document pull script, that script can
|
||||
# be invoked here.
|
||||
airshipctl document pull --debug
|
|
@ -55,16 +55,21 @@
|
|||
roles:
|
||||
- zuul: airship/airshipctl
|
||||
pre-run:
|
||||
- playbooks/airship-treasuremap-ensure-checkout.yaml
|
||||
- playbooks/airship-treasuremap-deploy-docker.yaml
|
||||
- playbooks/airship-treasuremap-build-gate.yaml
|
||||
post-run: playbooks/airship-collect-logs.yaml
|
||||
run: playbooks/airship-treasuremap-gate-runner.yaml
|
||||
nodeset: airship-treasuremap-single-16GB-bionic-node
|
||||
vars:
|
||||
# NOTE(drewwalters96): Set airshipctl_ref to a commit SHA in order to pin
|
||||
# the cloned version of airshipctl to a known/compatible reference.
|
||||
# airshipctl_ref: ""
|
||||
site_name: test-site
|
||||
gate_scripts:
|
||||
- ./tools/deployment/01_install_kubectl.sh
|
||||
- ./tools/deployment/22_test_configs.sh
|
||||
- ./tools/deployment/23_pull_documents.sh
|
||||
- ./tools/deployment/24_build_ephemeral_iso.sh
|
||||
- ./tools/deployment/25_deploy_ephemeral_node.sh
|
||||
- ./tools/deployment/26_deploy_metal3_capi_ephemeral_node.sh
|
||||
|
@ -74,7 +79,6 @@
|
|||
- ./tools/deployment/33_cluster_move_target_node.sh
|
||||
- ./tools/deployment/34_deploy_worker_node.sh
|
||||
- ./tools/deployment/35_deploy_workload.sh
|
||||
|
||||
serve_dir: /srv/iso
|
||||
serve_port: 8099
|
||||
voting: false
|
||||
|
|
Loading…
Reference in New Issue