The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
#!/bin/bash -e # Script used to create a yum repository config entry for Cisco VTS CONTINUE_SCRIPT=true INTERACTIVE_MODE=false REPO_DIR="/etc/yum.repos.d/" RepoUrl="https://devhub.cisco.com/artifactory/vts-yum/2.6.0.vts260-os-newton/" RepoUrlDef=$RepoUrl RepoUserName="" RepoPassword="" packages="cisco-vts-overcloud-installer cisco-vts-tripleo-heat-templates-extra " #### # Help #### function show_help { echo "Options are:" echo " --RepoUser=Username for the repo hosting the Cisco VTS RPMS. OPTIONAL" echo " --RepoPass=Password for the repo hosting the Cisco VTS RPMS. OPTIONAL" echo " --RepoUrl=Base URL for the repo hosting the Cisco VTS RPMs. OPTIONAL. Defaults to ${RepoUrl}" echo " --Proxy=Host name/IP and port for the HTTP/HTTPS proxy. Eg proxy-server:3128. OPTIONAL." echo " --ProxyCreds=Proxy Username:Password. Eg user:password OPTIONAL." echo " -h or --help: Show this message" } #### # Repo create #### function create_repo_file { rm -f ${REPO_FILE} cat <<EOT >> ${REPO_FILE} [${repo}] name=${repo} baseurl=${RepoUrl} username=${RepoUserName} password=${RepoPassword} enabled = 0 gpgcheck = 0 metadata_expire = 86400 EOT } function export_proxy { if [[ -n "$Proxy" ]]; then echo "Exporting Proxy settings into environment variables" local_ips=`ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1'` no_proxy="localhost,127.0.0.1" for local_ip in ${local_ips[@]}; do no_proxy="${no_proxy},${local_ip}" done echo "no_proxy settings for local IPs: ${no_proxy}" if [[ -n "$ProxyCreds" ]]; then _proxy="http://${ProxyCreds}@${Proxy}" else _proxy="http://${Proxy}" fi echo "http and https proxy settings: ${_proxy}" export no_proxy="${no_proxy}" export {http,https,HTTP,HTTPS}_proxy="${_proxy}" fi } #### # Install the vts install tools #### function install_cisco_vts_install_helpers { echo "Installing via yum: ${packages}" yum install -y ${packages} --enablerepo ${repo} } #### # Main #### if [ $# -lt 1 ]; then INTERACTIVE_MODE=true echo "This script can be used in non-interactive mode (install-vts-helpers --help to display options)" read -p "To continue in Interactive mode press return; To quit press 'q': " Dummy if [ "$Dummy" = "q" ]; then exit 0 fi #show_help read -p "VTS Repo User [$RepoUserName]: " RepoUserName echo -n "VTS Repo Password [$RepoPassword]: " read -s RepoPassword echo read -p "VTS Repo URL [$RepoUrlDef]: " RepoUrl RepoUrl="${RepoUrl:-$RepoUrlDef}" read -p "Proxy IP:Port[optional]: " Proxy read -p "Proxy username[optional]: " ProxyUser echo -n "Proxy password[optional]: " read -s ProxyPass echo ProxyCreds=${ProxyUser}":"${ProxyPass} printf "\nChecking for mandatory input parameters .....\n" if [ -z "$RepoUserName" ]; then echo "VTS Repo User is mandatory" CONTINUE_SCRIPT=false fi if [ -z "$RepoPassword" ]; then echo "VTS Repo password is mandatory" CONTINUE_SCRIPT=false fi fi if [ "$CONTINUE_SCRIPT" = false ]; then echo "Exiting script" exit 1 fi # This block is relevant for non-interactive mode only if [ "$INTERACTIVE_MODE" = false ]; then for i in "$@" do case $i in --RepoUrl=*) RepoUrl="${i#*=}" ;; --RepoUser=*) RepoUserName="${i#*=}" ;; --RepoPass=*) RepoPassword="${i#*=}" ;; --Proxy=*) Proxy="${i#*=}" ;; --ProxyCreds=*) ProxyCreds="${i#*=}" ;; -h|--help) show_help CONTINUE_SCRIPT=false exit ;; *) echo "unknown option" show_help # unknown option CONTINUE_SCRIPT=false exit ;; esac done fi repo=`echo ${RepoUrl%/} | rev | cut -d/ -f1 | rev` REPO_FILE="${REPO_DIR}${repo}.repo" echo "Creating ${REPO_FILE}" create_repo_file export_proxy install_cisco_vts_install_helpers echo "Done"