Run shipyard from build VM (instead of Genesis)

Change-Id: I63126cbeaf95050f82bae2d1c6e8a7b3e49ed5b8
This commit is contained in:
Kaspars Skels 2019-02-11 17:43:31 -06:00
parent f475f40246
commit e6586077b9
4 changed files with 26 additions and 18 deletions

View File

@ -8,17 +8,20 @@ install_ingress_ca() {
return
fi
local_file="${TEMP_DIR}/ingress_ca.pem"
remote_file="${GENESIS_WORK_DIR}/ingress_ca.pem"
remote_file="${BUILD_WORK_DIR}/ingress_ca.pem"
cat <<< "$ingress_ca" > "$local_file"
rsync_cmd "$local_file" "${GENESIS_NAME}":"$remote_file"
rsync_cmd "$local_file" "${BUILD_NAME}":"$remote_file"
}
shipard_cmd_stdout() {
# needed to reach airship endpoints
dns_server=$(config_vm_ip "${BUILD_NAME}")
install_ingress_ca
ssh_cmd "${GENESIS_NAME}" \
ssh_cmd "${BUILD_NAME}" \
docker run -t --network=host \
-v "${GENESIS_WORK_DIR}:/work" \
-e OS_AUTH_URL=http://keystone.ucp.svc.cluster.local:80/v3 \
--dns ${dns_server} \
-v "${BUILD_WORK_DIR}:/work" \
-e OS_AUTH_URL=${AIRSHIP_KEYSTONE_URL} \
-e OS_USERNAME=shipyard \
-e OS_USER_DOMAIN_NAME=default \
-e OS_PASSWORD="${SHIPYARD_PASSWORD}" \
@ -40,10 +43,12 @@ shipyard_cmd() {
}
drydock_cmd_stdout() {
dns_server=$(config_vm_ip "${BUILD_NAME}")
install_ingress_ca
ssh_cmd "${GENESIS_NAME}" \
ssh_cmd "${BUILD_NAME}" \
docker run -t --network=host \
-v "${GENESIS_WORK_DIR}:/work" \
--dns ${dns_server} \
-v "${BUILD_WORK_DIR}:/work" \
-e DD_URL=http://drydock-api.ucp.svc.cluster.local:9000 \
-e OS_AUTH_URL=http://keystone.ucp.svc.cluster.local:80/v3 \
-e OS_USERNAME=shipyard \

View File

@ -3,7 +3,7 @@ export DEFINITION_DEPOT="${TEMP_DIR}/site_yaml/"
export CERT_DEPOT="${TEMP_DIR}/cert_yaml/"
export GATE_DEPOT="${TEMP_DIR}/gate_yaml/"
export SCRIPT_DEPOT="${TEMP_DIR}/scripts/"
export GENESIS_WORK_DIR=${GENESIS_WORK_DIR:-/work}
export BUILD_WORK_DIR=${BUILD_WORK_DIR:-/work}
export BASE_IMAGE_SIZE=${BASE_IMAGE_SIZE:-68719476736}
export BASE_IMAGE_URL=${BASE_IMAGE_URL:-https://cloud-images.ubuntu.com/releases/xenial/release/ubuntu-16.04-server-cloudimg-amd64-disk1.img}
export IMAGE_PROMENADE_CLI=${IMAGE_PROMENADE_CLI:-quay.io/airshipit/promenade:cfb8aa498c294c2adbc369ba5aaee19b49550d22}
@ -12,13 +12,15 @@ export IMAGE_SHIPYARD_CLI=${IMAGE_SHIPYARD_CLI:-quay.io/airshipit/shipyard:4dd6b
export IMAGE_COREDNS=${IMAGE_COREDNS:-docker.io/coredns/coredns:1.2.2}
export IMAGE_DRYDOCK_CLI=${IMAGE_DRYDOCK_CLI:-quay.io/airshipit/drydock:d93d6d5a0a370ced536180612d1ade708e29cd47}
export PROMENADE_DEBUG=${PROMENADE_DEBUG:-0}
export SHIPYARD_PASSWORD=${SHIPYARD_OS_PASSWORD:-password18}
export REGISTRY_DATA_DIR=${REGISTRY_DATA_DIR:-/mnt/registry}
export VIRSH_POOL=${VIRSH_POOL:-airship}
export VIRSH_POOL_PATH=${VIRSH_POOL_PATH:-/var/lib/libvirt/airship}
export VIRSH_CPU_OPTS=${VIRSH_CPU_OPTS:-host}
export UPSTREAM_DNS=${UPSTREAM_DNS:-"8.8.8.8 8.8.4.4"}
export SHIPYARD_PASSWORD=${SHIPYARD_OS_PASSWORD:-'password18'}
export AIRSHIP_KEYSTONE_URL=${AIRSHIP_KEYSTONE_URL:-'http://keystone.gate.local:80/v3'}
config_vm_memory() {
nodename=${1}
jq -cr ".vm.${nodename}.memory" < "${GATE_MANIFEST}"

View File

@ -1,4 +1,5 @@
export GENESIS_NAME=n0
export BUILD_NAME=build
export SSH_CONFIG_DIR=${WORKSPACE}/multi_nodes_gate/airship_gate/config-ssh
export TEMPLATE_DIR=${WORKSPACE}/multi_nodes_gate/airship_gate/templates
export XML_DIR=${WORKSPACE}/multi_nodes_gate/airship_gate/xml

View File

@ -53,25 +53,25 @@ check_configdocs_result(){
}
# Copy site design to genesis node
ssh_cmd "${GENESIS_NAME}" mkdir -p "${GENESIS_WORK_DIR}/site"
rsync_cmd "${DEFINITION_DEPOT}"/*.yaml "${GENESIS_NAME}:${GENESIS_WORK_DIR}/site/"
ssh_cmd "${BUILD_NAME}" mkdir -p "${BUILD_WORK_DIR}/site"
rsync_cmd "${DEFINITION_DEPOT}"/*.yaml "${BUILD_NAME}:${BUILD_WORK_DIR}/site/"
sleep 120
check_configdocs_result "$(shipyard_cmd create configdocs design --directory=${GENESIS_WORK_DIR}/site --replace)"
check_configdocs_result "$(shipyard_cmd create configdocs design --directory=${BUILD_WORK_DIR}/site --replace)"
if [[ "${OMIT_CERTS}" == "0" ]]
then
ssh_cmd "${GENESIS_NAME}" mkdir -p "${GENESIS_WORK_DIR}/certs"
rsync_cmd "${CERT_DEPOT}"/*.yaml "${GENESIS_NAME}:${GENESIS_WORK_DIR}/certs/"
check_configdocs_result "$(shipyard_cmd create configdocs certs --directory=${GENESIS_WORK_DIR}/certs --append)"
ssh_cmd "${BUILD_NAME}" mkdir -p "${BUILD_WORK_DIR}/certs"
rsync_cmd "${CERT_DEPOT}"/*.yaml "${BUILD_NAME}:${BUILD_WORK_DIR}/certs/"
check_configdocs_result "$(shipyard_cmd create configdocs certs --directory=${BUILD_WORK_DIR}/certs --append)"
fi
if [[ "${OMIT_GATE}" == "0" ]]
then
ssh_cmd "${GENESIS_NAME}" mkdir -p "${GENESIS_WORK_DIR}/gate"
rsync_cmd "${GATE_DEPOT}"/*.yaml "${GENESIS_NAME}:${GENESIS_WORK_DIR}/gate/"
check_configdocs_result "$(shipyard_cmd create configdocs gate --directory=${GENESIS_WORK_DIR}/gate --append)"
ssh_cmd "${BUILD_NAME}" mkdir -p "${BUILD_WORK_DIR}/gate"
rsync_cmd "${GATE_DEPOT}"/*.yaml "${BUILD_NAME}:${BUILD_WORK_DIR}/gate/"
check_configdocs_result "$(shipyard_cmd create configdocs gate --directory=${BUILD_WORK_DIR}/gate --append)"
fi
check_configdocs_result "$(shipyard_cmd commit configdocs)"