#!/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. # The makefile entrypoint driver for document validation # Expected to be run from the project root set -xe : ${AIRSHIPCTL_PROJECT:="../airshipctl"} : ${CURRENT_MANIFEST:="$(airshipctl config get-contexts --current 2> /dev/null | \ yq '.contexts."ephemeral-cluster".manifest' | \ sed 's/"//g')"} : ${PRIMARY_REPO:="$(airshipctl config get-manifest $CURRENT_MANIFEST 2> /dev/null | \ yq .${CURRENT_MANIFEST}.phaseRepositoryName | \ sed 's/"//g')"} : ${MANIFEST_REPO_URL:="$(airshipctl config get-manifest $CURRENT_MANIFEST 2> /dev/null | \ yq .${CURRENT_MANIFEST}.repositories.${PRIMARY_REPO}.url | \ sed 's/"//g')"} : ${MANIFEST_ROOT:="$(airshipctl config get-manifest $CURRENT_MANIFEST 2> /dev/null | \ yq .${CURRENT_MANIFEST}.targetPath | \ sed 's/"//g')"} : ${PROJECT:="treasuremap"} : ${SITE_ROOTS:="${PROJECT}/manifests/site"} export MANIFEST_ROOT=$MANIFEST_ROOT export SITE_ROOTS=$SITE_ROOTS export MANIFEST_REPO_URL=$MANIFEST_REPO_URL cd ${AIRSHIPCTL_PROJECT} # Validate only specific site if set if [ ! -z "$1" ]; then ./tools/validate_docs $1 else ./tools/validate_docs fi