Add gate utility scripts to Treasuremap

These scripts allow one to stand up a treasuremap test-site

note: Removing the phase  lma-infra-target from script 31, since
it causes a wait to fail later on in the pipeline

Change-Id: I43374a874c110ab32d6158975c50fd4b89693479
This commit is contained in:
Steven Fitzpatrick 2021-02-26 16:17:05 +00:00
parent ea57ab4ff9
commit 52e072ef8a
7 changed files with 74 additions and 1 deletions

View File

@ -68,6 +68,7 @@
loop: loop:
- { name: 'target', path: 'ephemeral/controlplane' } - { name: 'target', path: 'ephemeral/controlplane' }
- { name: 'ephemeral', path: 'ephemeral/bootstrap' } - { name: 'ephemeral', path: 'ephemeral/bootstrap' }
- { name: 'worker', path: 'target/workers' }
loop_control: loop_control:
loop_var: roleinputvar loop_var: roleinputvar

1
roles Symbolic link
View File

@ -0,0 +1 @@
../airshipctl/roles/

View File

@ -29,4 +29,3 @@ kubectl \
./tools/deployment/31_deploy_initinfra_target_node.sh ./tools/deployment/31_deploy_initinfra_target_node.sh
airshipctl phase run lma-infra-target --debug

21
tools/gate/00_setup.sh Executable file
View File

@ -0,0 +1,21 @@
#!/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
export AIRSHIPCTL_PROJECT=${AIRSHIPCTL_PROJECT:="../airshipctl"}
export AIRSHIPCTL_WS=${AIRSHIPCTL_WS:-$PWD}
cd ${AIRSHIPCTL_PROJECT}
./tools/gate/00_setup.sh

20
tools/gate/10_build_gate.sh Executable file
View File

@ -0,0 +1,20 @@
#!/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
: ${AIRSHIPCTL_PROJECT:="../airshipctl"}
cd ${AIRSHIPCTL_PROJECT}
./tools/gate/10_build_gate.sh

View File

@ -0,0 +1,30 @@
#!/usr/bin/env bash
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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
TMP_DIR=${TMP_DIR:-"$(dirname $(mktemp -u))"}
ANSIBLE_HOSTS=${ANSIBLE_HOSTS:-"${TMP_DIR}/ansible_hosts"}
PLAYBOOK_CONFIG=${PLAYBOOK_CONFIG:-"${TMP_DIR}/config.yaml"}
export AIRSHIPCTL_WS=${AIRSHIPCTL_WS:-"../airshipctl"}
sudo -E --preserve-env=AIRSHIPCTL_WS ANSIBLE_STDOUT_CALLBACK=debug ansible-playbook -i "$ANSIBLE_HOSTS" \
playbooks/airship-treasuremap-gate-runner.yaml \
-e @"$PLAYBOOK_CONFIG" -v

View File

@ -0,0 +1 @@
../../../airshipctl/tools/gate/config_template.yaml