diff --git a/TVOAppliance/README b/TVOAppliance/README new file mode 100644 index 000000000..64df7a64f --- /dev/null +++ b/TVOAppliance/README @@ -0,0 +1,33 @@ +============================================================================ +Steps to upgrade TVO packages to Yoga release from 4.2 GA / 4.2 HF +============================================================================ + +1. Download the hf_upgrade.sh script to your TVO appliance. +2. Make sure that it is having executable permissions. If not then apply executable permissions. + chmod +x ./hf_upgrade.sh +3. hf_upgrade.sh having command line options as, + --downloadonly | -d (It will only download the package and extract it in current folder) + --installonly | -i (It will install the package available in current directory. If machine is not on network then copy required package "offline_pkgs.tar.gz" in the current directory) + --all | -a (It will download and install the package on the current TVO appliance.) + +Example: + 1. Customer wants to download the package only to copy it to some other machine. + ./hf_upgrade.sh --downloadonly + ./hf_upgrade.sh -d + + 2. Customer wants to install the package which is copied / downloaded on the TVO appliance. + ./hf_upgrade.sh --installonly + ./hf_upgrade.sh -i + + 3. Customer is having network (internet connection) and wants to download + Install the upgrade package. + ./hf_upgrade.sh --all + ./hf_upgrade.sh -a + + +Note: +While running hf_upgrade.sh script in offline mode. We need to change the BRANCH_NAME inside hf_upgrade.sh script to download the package from correct location. + +For end customer usage set BRANCH_NAME="triliodata-4-2" inside hf_upgade.sh script. +For internal testing in trilio lab, set BRANCH_NAME as fury repo instead of 'triliodata-4-2' inside hf_upgrade.sh script. + + diff --git a/TVOAppliance/hf_upgrade.sh b/TVOAppliance/hf_upgrade.sh new file mode 100755 index 000000000..08b45b614 --- /dev/null +++ b/TVOAppliance/hf_upgrade.sh @@ -0,0 +1,237 @@ +#!/bin/bash + +BASE_DIR="$(pwd)" +PYTHON_VERSION="Python 3.8.12" +OFFLINE_PKG_NAME="4.2-offlinePkgs.tar.gz" +PKG_DIR_NAME="4.2.*offlinePkgs" +BRANCH_NAME="triliodata-4-2" +UUID_NUM=`uuidgen` + +#function to display usage... +function usage() +{ + echo "Usage: ./hf_upgrade.sh [ -h | --help ] + [ -d | --downloadonly ] + [ -i | --installonly ] + [ -a | --all ]" + exit 2 +} + + +#function to download the package and extract... +function download_package() +{ + echo "Downloading $outfile for 4.2 maintenance release" + + #run the wget command to download the package from rpm server. + wget_command_rpm_server=`wget --backups 0 http://repos.trilio.io:8283/$BRANCH_NAME/offlinePkgs/$OFFLINE_PKG_NAME` + +} + +function check_package_status() +{ + all_pkgs=`ls -1` + + # iterate through all packages to check installation status. + for pkg_name in $all_pkgs + do + if [[ $pkg_name = *"rpm"* ]]; then + #remove last 4 chars of (.rpm) + total_len="${#pkg_name}" + rpm_pkg_info="${pkg_name:0:$total_len-4}" + + #check result for this package + rpm_result=`rpm -qa | grep $rpm_pkg_info` + result=$? + if [[ $result == 1 ]]; then + echo "Package $rpm_pkg_info not found on the system." + # perform yum command to install package. + install_cmd=`yum -y install $rpm_pkg_info.rpm` + else + echo "Package $rpm_pkg_info.rpm present on the system." + fi + fi + done +} +#function to change system settings +function change_system_settings() +{ + #set sshd option UseDNS to "no" + sed -i '/UseDNS/c UseDNS no' /etc/ssh/sshd_config + #Create task flow dir and change permissions. Implemented from TVO-4.2.7 release + mkdir -p /var/lib/workloadmgr/taskflow + chown -R nova:nova /var/lib/workloadmgr/ +} + +#function to restart the services. +function restart_services() +{ + #get the service name passed. + service_name=$1 + + #check if the service is in active state or not. + systemctl is-active $service_name + + #check the result code. 0 - Success AND 3 - Inactive + if [ $? -eq 0 ] + then + echo "Service {$service_name} is in active state. Restarting {$service_name} service" + #restart the service as it is in active state. + systemctl restart $service_name + else + #print failure message and continue ahead. + echo "Service {$service_name} is in Inactive state. Cannot restart the service" + fi +} + + +#function to reconfigure s3 service path... +function reconfigure_s3_service_path() +{ + file_name="/etc/systemd/system/tvault-object-store.service" + src_string="ExecStart=/home/stack/myansible/bin/python3 /home/stack/myansible/lib/python3.6/site-packages/s3fuse/s3vaultfuse.py --config-file=/etc/workloadmgr/workloadmgr.conf" + dest_string="ExecStart=/home/stack/myansible/bin/python3 /home/stack/myansible/bin/s3vaultfuse.py --config-file=/etc/workloadmgr/workloadmgr.conf" + + sed -i "s~$src_string~$dest_string~g" $file_name + +} +#function to install the package on the system... +function install_upgrade_package() +{ + #it is expected that package is available in current directory. + outfile="$BASE_DIR/$OFFLINE_PKG_NAME" + if [[ -f $outfile ]] + then + echo "$outfile present. we can continue with the installation." + + echo "Extracting $outfile now" + #now the package is downloaded. Extract the package. + #1. create directory with unique number and extract package inside it. + mkdir $UUID_NUM + + extract_packages=`tar -xzf $outfile -C $UUID_NUM/` + else + echo "$outfile is not present. Cannot proceed with the installation. Exiting." + exit 2 + fi + + echo "Installing $outfile for 4.2 maintenance release" + + #get the current date and time. + date=`date '+%Y-%m-%d-%H-%M-%S'` + + #before performing further installation take backup. + tar -czvf /home/stack/tvault_backup_$date.tar.gz /etc/tvault /etc/tvault-config /etc/workloadmgr + + echo "Before installation disabling old and deleted MariaDB and Rabbitmq-server yum repositories" + yum-config-manager --disable bintray-rabbitmq-server + yum-config-manager --disable mariadb + + #make sure to be in base directory for installation. + cd $BASE_DIR/$UUID_NUM/$PKG_DIR_NAME*/ + + #extract Python-3.8.12.tgz - first check if python 3.8.12 version is availble or not. + python_version=`python3 --version` + if [ "$python_version" == "$PYTHON_VERSION" ]; then + echo "Python 3.8.12 package is already installed. We can skip Python package installation." + + else + echo "Python 3.8.12 package is missing. We need to install Python package." + + #extract offline_dist_pkgs.tar.gz file to install dependancy packages first. + extract_offline_dist_pkg=`tar -xzf offline_dist_pkgs.tar.gz` + cd offline_dist_pkgs*/ + #check if the packages are already installed or not. call function check_package_status() + check_package_status + + #move to base dir again + cd $BASE_DIR/$UUID_NUM/$PKG_DIR_NAME*/ + + #Install python 3.8.12 package on the TVO appliance. + extract_python_pkg=`tar -xf Python-3.8.12.tgz` + cd Python-3.8.12*/ + config_cmd=`./configure --enable-optimizations` + make_cmd=`sudo make altinstall` + + fi + + #move to base dir/UUID_NUM/PKG_DIR_NAME again for further installation. + cd $BASE_DIR/$UUID_NUM/$PKG_DIR_NAME*/ + + #move myansible env to myansible_old_$date folder. + mv /home/stack/myansible /home/stack/myansible_old_$date + mkdir -p /home/stack/myansible + + #extract the package at the / directory. + extract_myansible_pkg=`tar -xzf myansible_py38.tar.gz -C /` + + #set the default python3 + update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.8 0 + + #get the OLD and NEW user json. + USER_JSON_OLD=`/home/stack/myansible_old_$date/bin/python3 -c 'import tvault_configurator; print(tvault_configurator.__path__[0])'`/conf/users.json + + USER_JSON_NEW=`/home/stack/myansible/bin/python3 -c 'import tvault_configurator; print(tvault_configurator.__path__[0])'`/conf/users.json + + #replace / copy the user.json file from USER_JSON_OLD to USER_JSON_NEW path. + yes | cp $USER_JSON_OLD $USER_JSON_NEW --backup=numbered + + #function to change system settings (set sshd option UseDNS to "no") + change_system_settings + + #call function - before restarting service replace the service path in tvault-object-store.service file + reconfigure_s3_service_path + + #before restarting the s3 service reload the modified service file. + systemctl daemon-reload + + #restart all active services + SERVICE_NAMES=('tvault-config' 'wlm-api' 'wlm-workloads' 'wlm-cron' 'tvault-object-store' 'wlm-scheduler') + for service in "${SERVICE_NAMES[@]}" + do + restart_services $service + done + + if [ $(awk -F "=" '/config_status/ {print $2}' ${TVAULT_CONF} | xargs ) == "configured" ];then + echo "Performing DB upgrade steps" + #DB upgrade to be performed post upgrade of all packages is successful and services restarted only if TVO is already configured + sed -i "/script_location = /c \script_location = /home/stack/myansible/lib/python3.8/site-packages/workloadmgr/db/sqlalchemy/migrate_repo" $WORKLOADMGR_CONF + sed -i "/version_locations = /c \version_locations = /home/stack/myansible/lib/python3.8/site-packages/workloadmgr/db/sqlalchemy/migrate_repo/versions" $WORKLOADMGR_CONF + source /home/stack/myansible/bin/activate && alembic -c ${WORKLOADMGR_CONF} upgrade head + fi + echo "TVO appliance upgrade is complete. If TVO configuration is not done, please proceed with the same." +} + +######## Start of the script. ######## + +WORKLOADMGR_CONF=/etc/workloadmgr/workloadmgr.conf +TVAULT_CONF=/etc/tvault-config/tvault-config.conf +CMDLINE_ARGUMENTS=$(getopt -o hdia --long help,downloadonly,installonly,all -- "$@") + +CMD_OUTPUT=$? +if [ "$CMD_OUTPUT" != "0" ]; then + usage +fi + +eval set -- "$CMDLINE_ARGUMENTS" + +echo "TVO Upgrade from current release to latest 4.2 maintenance release" + + +#command line arguments. +if [ $# -le 1 ]; then + echo "Invalid number of arguments" + usage +fi + + +if [ $# -gt 0 ]; then + case "$1" in + -h|--help) usage; exit;; + -d|--downloadonly) download_package ;; + -i|--installonly) install_upgrade_package ;; + -a|--all) download_package; install_upgrade_package ;; + esac + shift +fi + diff --git a/ansible/environments/group_vars/all/vars.yml b/ansible/environments/group_vars/all/vars.yml index d696a324d..3548688c7 100644 --- a/ansible/environments/group_vars/all/vars.yml +++ b/ansible/environments/group_vars/all/vars.yml @@ -5,8 +5,9 @@ IP_ADDRESS: sample_tvault_ip_address ##Time Zone TIME_ZONE: "Etc/UTC" -#Update TVAULT package version here, we will install mentioned version plugins for Example# TVAULT_PACKAGE_VERSION: 3.3.36 -TVAULT_PACKAGE_VERSION: 4.1.4 +## Don't update or modify the value of TVAULT_PACKAGE_VERSION +## The default value of is '4.2.64' +TVAULT_PACKAGE_VERSION: 4.2.64 # Update Openstack dist code name like ussuri etc. OPENSTACK_DIST: ussuri @@ -73,6 +74,12 @@ ceph_backend_enabled: False ## e.g. '/openstack/venvs/horizon-23.1.0' horizon_virtual_env: '/openstack/venvs/horizon*' +## When More Than One Nova Virtual Env. On Compute Node(s) and +## User Wants To Specify Specific Nova Virtual Env. From Existing +## Then Only Uncomment the var nova_virtual_env and pass value like 'openstack/venvs/nova-23.2.0' + +#nova_virtual_env: 'openstack/venvs/nova-23.2.0' + #Set verbosity level and run playbooks with -vvv option to display custom debug messages verbosity_level: 3 diff --git a/ansible/main-install.yml b/ansible/main-install.yml index 83e1b41f5..8f60a19f2 100644 --- a/ansible/main-install.yml +++ b/ansible/main-install.yml @@ -1,6 +1,26 @@ --- + +- name: Installation dmapi on bare metal + hosts: tvault-dmapi_containers + gather_facts: "{{ osa_gather_facts | default(True) }}" + user: root + environment: "{{ deployment_environment_variables | default({}) }}" + vars_files: + - "defaults/repo_packages/openstack_services.yml" + - "defaults/{{ install_method }}_install.yml" + pre_tasks: + - include_tasks: "common-tasks/os-{{ container_tech | default('lxc') }}-container-setup.yml" + when: is_metal + + - include_tasks: common-tasks/unbound-clients.yml + when: + - hostvars['localhost']['resolvconf_enabled'] | bool + roles: + - role: ansible-datamover-api + when: is_metal + - name: Installation and setup of dmapi conatiner - hosts: dmapi_all + hosts: dmapi_all gather_facts: "{{ osa_gather_facts | default(True) }}" user: root environment: "{{ deployment_environment_variables | default({}) }}" @@ -16,6 +36,7 @@ - hostvars['localhost']['resolvconf_enabled'] | bool roles: - role: ansible-datamover-api + when: not is_metal - hosts: tvault_compute_hosts roles: diff --git a/ansible/roles/ansible-tvault-contego-extension/tasks/nfs.yml b/ansible/roles/ansible-tvault-contego-extension/tasks/nfs.yml index 2d60c256a..a34f24ce6 100644 --- a/ansible/roles/ansible-tvault-contego-extension/tasks/nfs.yml +++ b/ansible/roles/ansible-tvault-contego-extension/tasks/nfs.yml @@ -18,7 +18,7 @@ when: NFS_OPTS != "" - set_fact: - NFS_OPTIONS: "nolock,soft,timeo=180,intr,lookupcache=none" + NFS_OPTIONS: "nolock,soft,timeo=180,intr,lookupcache=none,nfsvers=3" when: NFS_OPTS == "" - debug: msg="value of NFS_OPTIONS is:{{NFS_OPTIONS}}" verbosity={{ verbosity_level }} diff --git a/ansible/roles/ansible-tvault-contego-extension/tasks/nova_compute_filter_file.yml b/ansible/roles/ansible-tvault-contego-extension/tasks/nova_compute_filter_file.yml index 4c608cb1b..6313cd8c4 100644 --- a/ansible/roles/ansible-tvault-contego-extension/tasks/nova_compute_filter_file.yml +++ b/ansible/roles/ansible-tvault-contego-extension/tasks/nova_compute_filter_file.yml @@ -1,8 +1,24 @@ -- name: Get nova venv path - shell: echo /openstack/venvs/nova* - register: venv_path -- set_fact: virtual_env_path={{venv_path.stdout}} +- set_fact: + virtual_env_path: "/openstack/venvs/nova-{{ venv_tag }}" + when: > + ( nova_virtual_env is undefined ) + +- set_fact: + virtual_env_path: "{{ nova_virtual_env }}" + when: > + ( nova_virtual_env is defined ) + +- name: Check stat virtual env path + stat: + path: "{{ virtual_env_path }}" + register: chk_nova_pth + +- name: Failed when nova virt env not found + fail: + msg: "Anisble Failed Cause Path {{ virtual_env_path }} Not Found" + when: > + ( chk_nova_pth.stat.exists == false ) - set_fact: virtual_env: ". {{virtual_env_path}}/bin/activate" @@ -11,4 +27,4 @@ - debug: msg: "NOVA_COMPUTE_FILTERS_FILE: {{NOVA_COMPUTE_FILTERS_FILE}}" - verbosity: "{{ verbosity_level }}" \ No newline at end of file + verbosity: "{{ verbosity_level }}" diff --git a/ansible/tvault_pre_install.yml b/ansible/tvault_pre_install.yml new file mode 100644 index 000000000..6252b594e --- /dev/null +++ b/ansible/tvault_pre_install.yml @@ -0,0 +1,41 @@ +--- + +- hosts: localhost + become: true + vars: + ansible_python_interpreter: /usr/bin/python3 + tasks: + - name: Add & enable epel repo + yum_repository: + name: epel + description: EPEL YUM Repo + baseurl: https://download.fedoraproject.org/pub/epel/$releasever/Everything/$basearch/ + when: > + (ansible_distribution_major_version>="8" and ansible_distribution=="CentOS") or + (ansible_distribution_major_version>="8" and ansible_distribution=="RedHat") + + - name: Install snapd package + package: + update_cache: yes + name: snapd + state: present + when: > + (ansible_distribution_major_version>="8" and ansible_distribution=="CentOS") or + (ansible_distribution_major_version>="8" and ansible_distribution=="RedHat") + + - name: Enable service httpd snapd + service: + name: snapd + enabled: yes + when: > + (ansible_distribution_major_version>="8" and ansible_distribution=="CentOS") or + (ansible_distribution_major_version>="8" and ansible_distribution=="RedHat") + + - name: Install lxc packages + package: + update_cache: yes + name: + - "lxc" + - "python3-lxc" + - "lxc-templates" + state: present diff --git a/kolla-ansible/ansible/roles/triliovault/defaults/main.yml b/kolla-ansible/ansible/roles/triliovault/defaults/main.yml index 50cf5c3ab..94da3fee2 100644 --- a/kolla-ansible/ansible/roles/triliovault/defaults/main.yml +++ b/kolla-ansible/ansible/roles/triliovault/defaults/main.yml @@ -52,6 +52,7 @@ triliovault_services: group: "{{ triliovault_datamover_group }}" image: "{{ triliovault_datamover_image_full }}" enabled: True + ipc_mode: "host" privileged: True volumes: "{{ triliovault_datamover_default_volumes }}" dimensions: "{{ triliovault_datamover_dimensions }}" @@ -59,15 +60,11 @@ triliovault_services: #################### # Docker #################### -triliovault_datamover_api_image: "{{ triliovault_docker_registry }}/trilio/{{ kolla_base_distro }}-binary-trilio-datamover-api" -triliovault_datamover_api_tag: "{{ triliovault_tag }}" -triliovault_datamover_api_image_full: "{{ triliovault_datamover_api_image }}:{{ triliovault_datamover_api_tag }}" +triliovault_datamover_image_full: "{{ triliovault_docker_registry }}/trilio/kolla-{{ kolla_base_distro }}-trilio-datamover:{{ triliovault_tag }}" +triliovault_datamover_api_image_full: "{{ triliovault_docker_registry }}/trilio/kolla-{{ kolla_base_distro }}-trilio-datamover-api:{{ triliovault_tag }}" -triliovault_datamover_image: "{{ triliovault_docker_registry }}/trilio/{{ kolla_base_distro }}-binary-trilio-datamover" -triliovault_datamover_tag: "{{ triliovault_tag }}" -triliovault_datamover_image_full: "{{ triliovault_datamover_image }}:{{ triliovault_datamover_tag }}" triliovault_datamover_api_dimensions: "{{ default_container_dimensions }}" triliovault_datamover_dimensions: "{{ default_container_dimensions }}" @@ -118,17 +115,23 @@ triliovault_datamover_api_port: 8784 triliovault_datamover_api_listen_port: "{{ triliovault_datamover_api_port }}" + + + #################### # Keystone #################### +triliovault_datamover_api_service_admin_endpoint_full: {'interface': 'admin', 'url': '{{ triliovault_datamover_api_admin_endpoint }}'} + +triliovault_datamover_api_service_endpoints: + - {'interface': 'internal', 'url': '{{ triliovault_datamover_api_internal_endpoint }}'} + - {'interface': 'public', 'url': '{{ triliovault_datamover_api_public_endpoint }}'} + triliovault_ks_services: - name: "dmapi" type: "datamover" description: "TrilioVault Datamover Api Service" - endpoints: - - {'interface': 'admin', 'url': '{{ triliovault_datamover_api_admin_endpoint }}'} - - {'interface': 'internal', 'url': '{{ triliovault_datamover_api_internal_endpoint }}'} - - {'interface': 'public', 'url': '{{ triliovault_datamover_api_public_endpoint }}'} + endpoints: "{{ triliovault_datamover_api_service_endpoints + ([triliovault_datamover_api_service_admin_endpoint_full] if openstack_release != 'zed' else []) }}" triliovault_keystone_user: "dmapi" @@ -177,6 +180,13 @@ triliovault_kolla_log_dir: "/var/log/kolla" triliovault_datamover_log_dir: "{{ triliovault_kolla_log_dir }}/triliovault-datamover" triliovault_datamover_api_log_dir: "{{ triliovault_kolla_log_dir }}/triliovault-datamover-api" +## Initializing kolla_install_type parameter as Zed release have removed this parameter. +## Following is the default value for kolla_install_type variable. +kolla_install_type: "source" + +## Container engine default value +kolla_container_engine: "docker" + ############ Following variables are user configurable ########## ############ Copy all the following variables in this file to "/etc/kolla/globals.yaml" and configure their values. ## Whether to enable TrilioVault or not on OpenStack cloud diff --git a/kolla-ansible/ansible/roles/triliovault/handlers/main.yml b/kolla-ansible/ansible/roles/triliovault/handlers/main.yml index 782a67a96..04a451c1e 100644 --- a/kolla-ansible/ansible/roles/triliovault/handlers/main.yml +++ b/kolla-ansible/ansible/roles/triliovault/handlers/main.yml @@ -31,6 +31,7 @@ privileged: "{{ service.privileged | default(False) }}" volumes: "{{ service.volumes|reject('equalto', '')|list }}" dimensions: "{{ service.dimensions }}" + ipc_mode: "{{ service.ipc_mode | default('') }}" auth_username: "{{ triliovault_docker_username }}" auth_password: "{{ triliovault_docker_password }}" auth_registry: "{{ triliovault_docker_registry }}" diff --git a/kolla-ansible/ansible/roles/triliovault/tasks/bootstrap.yml b/kolla-ansible/ansible/roles/triliovault/tasks/bootstrap.yml index 765b3bf08..8eaa14d9f 100644 --- a/kolla-ansible/ansible/roles/triliovault/tasks/bootstrap.yml +++ b/kolla-ansible/ansible/roles/triliovault/tasks/bootstrap.yml @@ -1,7 +1,8 @@ --- -- name: Creating triliovault datamover api database +- name: Creating triliovault datamover api database for openstack release zed or more become: true kolla_toolbox: + container_engine: "{{ kolla_container_engine }}" module_name: mysql_db module_args: login_host: "{{ database_address }}" @@ -13,8 +14,49 @@ delegate_to: "{{ groups[triliovault_datamover_api_group][0] }}" when: - not use_preconfigured_databases | bool + - openstack_release in ["zed", "antelope", "bobcat"] -- name: Creating triliovault datamover api database user and setting permissions +- name: Creating triliovault datamover api database for openstack release earlier than zed + become: true + kolla_toolbox: + module_name: mysql_db + module_args: + login_host: "{{ database_address }}" + login_port: "{{ database_port }}" + login_user: "{{ database_user }}" + login_password: "{{ database_password }}" + name: "{{ triliovault_database_name }}" + run_once: True + delegate_to: "{{ groups[triliovault_datamover_api_group][0] }}" + when: + - not use_preconfigured_databases | bool + - openstack_release in ["victoria", "wallaby", "yoga"] + + +- name: Creating triliovault datamover api database user and setting permissions for openstack release zed or more + become: true + kolla_toolbox: + container_engine: "{{ kolla_container_engine }}" + module_name: mysql_user + module_args: + login_host: "{{ database_address }}" + login_port: "{{ database_port }}" + login_user: "{{ database_user }}" + login_password: "{{ database_password }}" + name: "{{ triliovault_database_user }}" + password: "{{ triliovault_database_password }}" + host: "%" + priv: "{{ triliovault_database_name }}.*:ALL" + append_privs: "yes" + run_once: True + delegate_to: "{{ groups[triliovault_datamover_api_group][0] }}" + when: + - not use_preconfigured_databases | bool + - openstack_release in ["zed", "antelope", "bobcat"] + + + +- name: Creating triliovault datamover api database user and setting permissions for openstack release earlier than zed become: true kolla_toolbox: module_name: mysql_user @@ -32,5 +74,6 @@ delegate_to: "{{ groups[triliovault_datamover_api_group][0] }}" when: - not use_preconfigured_databases | bool + - openstack_release in ["victoria", "wallaby", "yoga"] - include_tasks: bootstrap_service.yml \ No newline at end of file diff --git a/kolla-ansible/ansible/roles/triliovault/tasks/precheck.yml b/kolla-ansible/ansible/roles/triliovault/tasks/precheck.yml index 7762d2103..3608e8260 100644 --- a/kolla-ansible/ansible/roles/triliovault/tasks/precheck.yml +++ b/kolla-ansible/ansible/roles/triliovault/tasks/precheck.yml @@ -8,6 +8,7 @@ - name: Get container facts become: true kolla_container_facts: + container_engine: "{{ kolla_container_engine }}" name: - triliovault_datamover_api register: container_facts diff --git a/kolla-ansible/ansible/triliovault_globals.yml b/kolla-ansible/ansible/triliovault_globals.yml index 8d91a8609..ab4adb667 100644 --- a/kolla-ansible/ansible/triliovault_globals.yml +++ b/kolla-ansible/ansible/triliovault_globals.yml @@ -3,7 +3,11 @@ ## Whether to enable TrilioVault or not on OpenStack cloud enable_triliovault: "yes" -triliovault_horizon_image_full: "{{ triliovault_docker_registry }}/trilio/{{ kolla_base_distro }}-binary-trilio-horizon-plugin:{{ triliovault_tag }}" +horizon_source_image_prefix: "kolla-{{ kolla_base_distro }}-trilio-horizon-plugin" +horizon_binary_image_prefix: "{{ kolla_base_distro }}-{{ kolla_install_type }}-trilio-horizon-plugin" + +triliovault_horizon_image_full: "{{ triliovault_docker_registry }}/trilio/{{ horizon_source_image_prefix if kolla_install_type == 'source' else horizon_binary_image_prefix }}:{{ triliovault_tag }}" + ## If you wants to enable triliovault horizon then please uncomment following variable named - 'horizon_image_full' ## By default triliovault horizon will not be enabled on openstack horizon @@ -35,7 +39,7 @@ triliovault_backup_target: 'nfs' triliovault_nfs_shares: '192.168.122.101:/opt/tvault' ## Valid for backup target 'nfs' only, Following parameter takes NFS mount options. ## Keep default values, unless you have a special need. -triliovault_nfs_options: 'nolock,soft,timeo=180,intr,lookupcache=none' +triliovault_nfs_options: 'nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10' ## Valid for 'nfs' backup target only. ## If backup target NFS share supports multiple endpoints/ips but in backend it's a single share then diff --git a/kolla-ansible/ansible/triliovault_globals_zed.yml b/kolla-ansible/ansible/triliovault_globals_zed.yml new file mode 100644 index 000000000..a677982f0 --- /dev/null +++ b/kolla-ansible/ansible/triliovault_globals_zed.yml @@ -0,0 +1,82 @@ +############ Following variables are user configurable ########## +############ Copy all the following variables in this file to "/etc/kolla/globals.yaml" and configure their values. +## Whether to enable TrilioVault or not on OpenStack cloud +enable_triliovault: "yes" + +horizon_source_image_prefix: "kolla-{{ kolla_base_distro }}-trilio-horizon-plugin" +horizon_binary_image_prefix: "{{ kolla_base_distro }}-{{ kolla_install_type }}-trilio-horizon-plugin" + +kolla_install_type: "source" +triliovault_horizon_image_full: "{{ triliovault_docker_registry }}/trilio/{{ horizon_source_image_prefix if kolla_install_type == 'source' else horizon_binary_image_prefix }}:{{ triliovault_tag }}" + + +## If you wants to enable triliovault horizon then please uncomment following variable named - 'horizon_image_full' +## By default triliovault horizon will not be enabled on openstack horizon +## NOTE: With this change, openstack horizon container will be replaced by triliovault horizon container. +## Don't worry, triliovault horizon container image uses upstream kolla horizon container as base image + +#horizon_image_full: "{{ triliovault_horizon_image_full }}" + +## Triliovault dmapi_workers count +## This parameter value used to spawn the number of dmapi processes to handle the incoming api requests. +## If your dmapi node has ‘n' cpu cores, It is recommended, to set this parameter to '4*n’. +## If dmapi_workers field is not present in config file. The Default value will be equals to number of cores present on the node +## Default value of dmapi_workers is 16 +dmapi_workers: '16' + +## TrilioVault's containers tag +## TrilioVault docker registry credentials. Request credentials from TrilioVault team. +triliovault_tag: "4.1.5-ussuri" +triliovault_docker_username: "" +triliovault_docker_password: "" +triliovault_docker_registry: "docker.io" + +## triliovault backup target possible values: 'nfs'/'amazon_s3'/'other_s3_compatible' +triliovault_backup_target: 'nfs' + +### 'NFS' backup target details +## Valid for backup target 'nfs' only, provide full NFS share path. +## If you want to use multiple nfs shares, then you can provide comma delimated list of shares to the following parameter +triliovault_nfs_shares: '192.168.122.101:/opt/tvault' +## Valid for backup target 'nfs' only, Following parameter takes NFS mount options. +## Keep default values, unless you have a special need. +triliovault_nfs_options: 'nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10' + +## Valid for 'nfs' backup target only. +## If backup target NFS share supports multiple endpoints/ips but in backend it's a single share then +## set 'is_multi_ip_nfs' paremeter to 'yes'. Otherwise it's value should be 'no' +multi_ip_nfs_enabled: 'no' + + +### 'amazon_s3/other_s3_compatible' backup target details +## Valid for 'amazon_s3'/'other_s3_compatible' backup target, provide S3 access key +triliovault_s3_access_key: '' +## Valid for 'amazon_s3'/'other_s3_compatible' backup target, provide S3 secret key +triliovault_s3_secret_key: '' +## Valid for 'amazon_s3'/'other_s3_compatible' backup target, provide S3 region +## if your s3 does not have any region, just keep the parameter as it is +triliovault_s3_region_name: 'us-east-1' +## Valid for 'amazon_s3'/'other_s3_compatible' backup target, provide S3 bucket name +triliovault_s3_bucket_name: '' +## Valid for 'other_s3_compatible' backup target only, provide S3 endpoint url +## This paramter is not valid for Amazon S3 backup target type, keep it as it is +triliovault_s3_endpoint_url: '' + +## S3 signature version +triliovault_s3_version: 'default' + +## S3 Auth version +triliovault_s3_auth_version: 'DEFAULT' + +## Valid for 'other_s3_compatible' backup target only, If SSL is enabled on S3 endpoint url then change it to 'True', otherwise keep it as 'False' +triliovault_s3_ssl_enabled: False +## Valid for 'ceph_s3' backup target only, if SSL is enabled on S3 endpoint URL and SSL certificates are self signed +# OR issued by a private authority then, user needs to copy the 'ceph s3 ca chain file' to "/etc/kolla/config/triliovault/" +# directory on ansible server. You need to create this directory if not exists already. +# And provide the cert file name as value of following parameter. +triliovault_s3_ssl_cert_file_name: 's3-cert.pem' + +## Valid for 'ceph_s3' backup target only, if SSL is enabled on S3 endpoint URL and SSL certificates are self signed or issued by private authority, +## then, user needs to set this parameter value to: True , otherwise keep it's value as False. +## Type: Boolean +triliovault_copy_ceph_s3_ssl_cert: False diff --git a/kolla-ansible/ansible/triliovault_site.yml b/kolla-ansible/ansible/triliovault_site.yml index 904100604..8cb8db651 100644 --- a/kolla-ansible/ansible/triliovault_site.yml +++ b/kolla-ansible/ansible/triliovault_site.yml @@ -28,4 +28,4 @@ roles: - { role: triliovault, tags: triliovault, - when: enable_triliovault | bool } \ No newline at end of file + when: enable_triliovault | bool } diff --git a/kolla-ansible/ansible/triliovault_site_yoga.yml b/kolla-ansible/ansible/triliovault_site_yoga.yml new file mode 100644 index 000000000..c0dfad6dc --- /dev/null +++ b/kolla-ansible/ansible/triliovault_site_yoga.yml @@ -0,0 +1,34 @@ +- name: Apply haproxy config for triliovault services + gather_facts: false + hosts: + - loadbalancer + - '&enable_loadbalancer_True' + serial: '{{ kolla_serial|default("0") }}' + tags: + - haproxy + - keepalived + - loadbalancer + roles: + - { role: loadbalancer, + when: enable_loadbalancer | bool } + tasks: + - include_role: + name: triliovault + tasks_from: loadbalancer + when: + - inventory_hostname in groups['triliovault-datamover-api'] + - enable_haproxy | bool + - enable_triliovault | bool + - kolla_action in ['deploy', 'reconfigure', 'upgrade', 'config'] + +- name: Apply role triliovault + gather_facts: false + hosts: + - triliovault-datamover-api + - triliovault-datamover + - enable_triliovault | bool + serial: '{{ kolla_serial|default("0") }}' + roles: + - { role: triliovault, + tags: triliovault, + when: enable_triliovault | bool } diff --git a/kolla-ansible/build_containers.sh b/kolla-ansible/build_containers.sh deleted file mode 100755 index 5413eb362..000000000 --- a/kolla-ansible/build_containers.sh +++ /dev/null @@ -1,69 +0,0 @@ -#!/bin/bash -x - -set -e - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=($(echo $1| tr "," " ")) - - - -current_dir=$(pwd) -base_dir="$(dirname $0)" - -if [ $base_dir = '.' ] -then -base_dir="$current_dir" -fi - -declare -a openstack_releases=($(echo $2| tr "," " ")) - -declare -a openstack_platforms=("centos" "ubuntu") -count=0 -## now loop through the above array -for openstack_release in "${openstack_releases[@]}" -do - tag=${tvault_version[$count]} - - for openstack_platform in "${openstack_platforms[@]}" - do - - build_dir=tmp_docker_${openstack_release}_${openstack_platform} - rm -rf $base_dir/${build_dir} - mkdir -p $base_dir/${build_dir} - cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ - cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ - cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - - docker pull kolla/${openstack_platform}-binary-nova-compute:${openstack_release} - docker pull kolla/${openstack_platform}-binary-horizon:${openstack_release} - docker pull kolla/${openstack_platform}-binary-nova-api:${openstack_release} - - #Build trilio-datamover containers - echo -e "Creating trilio-datamover container for kolla ${openstack_release} ${openstack_platform}" - cd $base_dir/${build_dir}/trilio-datamover/ - mv Dockerfile_${openstack_release}_${openstack_platform} Dockerfile - docker build --no-cache -t trilio/${openstack_platform}-binary-trilio-datamover:${tag}-${openstack_release} . - - - #Build trilio_datamover-api containers - echo -e "Creating trilio-datamover container-api for kolla ${openstack_release} ${openstack_platform}" - cd $base_dir/${build_dir}/trilio-datamover-api/ - mv Dockerfile_${openstack_release}_${openstack_platform} Dockerfile - docker build --no-cache -t trilio/${openstack_platform}-binary-trilio-datamover-api:${tag}-${openstack_release} . - - - echo -e "Creating trilio-horizon-plugin container for kolla ${openstack_release} ${openstack_platform}" - cd $base_dir/${build_dir}/trilio-horizon-plugin/ - mv Dockerfile_${openstack_release}_${openstack_platform} Dockerfile - docker build --no-cache -t trilio/${openstack_platform}-binary-trilio-horizon-plugin:${tag}-${openstack_release} . - # Clean the build_dir - rm -rf $base_dir/${build_dir} - - done - let count=count+1 -done diff --git a/kolla-ansible/publish_containers.sh b/kolla-ansible/publish_containers.sh deleted file mode 100755 index 8facc8020..000000000 --- a/kolla-ansible/publish_containers.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -set -e - - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=($(echo $1| tr "," " ")) - -declare -a openstack_releases=($(echo $2| tr "," " ")) -declare -a openstack_platforms=("centos" "ubuntu") -count=0 -## now loop through the above array -for openstack_release in "${openstack_releases[@]}" -do - tag=${tvault_version[$count]} - for openstack_platform in "${openstack_platforms[@]}" - do - docker tag trilio/${openstack_platform}-binary-trilio-datamover-api:${tag}-${openstack_release} \ - docker.io/trilio/${openstack_platform}-binary-trilio-datamover-api:${tag}-${openstack_release} - docker push docker.io/trilio/${openstack_platform}-binary-trilio-datamover-api:${tag}-${openstack_release} - - docker tag trilio/${openstack_platform}-binary-trilio-datamover-api:${tag}-${openstack_release} \ - docker.io/trilio/${openstack_platform}-binary-trilio-datamover-api:${tag}-${openstack_release} - docker push docker.io/trilio/${openstack_platform}-binary-trilio-datamover:${tag}-${openstack_release} - - docker tag trilio/${openstack_platform}-binary-trilio-horizon-plugin:${tag}-${openstack_release} \ - docker.io/trilio/${openstack_platform}-binary-trilio-horizon-plugin:${tag}-${openstack_release} - docker push docker.io/trilio/${openstack_platform}-binary-trilio-horizon-plugin:${tag}-${openstack_release} - done - let count=count+1 -done diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile b/kolla-ansible/trilio-datamover-api/Dockerfile deleted file mode 100644 index 52b703a8b..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM kolla/ubuntu-source-nova-api:train -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y dmapi --allow-unauthenticated - -RUN mkdir -p /var/log/dmapi/ \ - /var/cache/dmapi/ \ - /etc/nova \ - /var/log/kolla/dmapi \ - && chown -R nova:nova /var/log/dmapi/ \ - && chown -R nova:nova /var/log/kolla/dmapi \ - && chown nova:nova /var/cache/dmapi/ \ - && rm /etc/dmapi/dmapi.conf - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_pike_ubuntu b/kolla-ansible/trilio-datamover-api/Dockerfile_pike_ubuntu deleted file mode 100644 index 61e8a51db..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_pike_ubuntu +++ /dev/null @@ -1,47 +0,0 @@ -FROM kolla/ubuntu-binary-nova-api:pike -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y dmapi --allow-unauthenticated - -RUN mkdir -p /var/log/dmapi/ \ - /var/cache/dmapi/ \ - /etc/nova \ - /var/log/kolla/dmapi \ - && chown -R nova:nova /var/log/dmapi/ \ - && chown -R nova:nova /var/log/kolla/dmapi \ - && chown nova:nova /var/cache/dmapi/ \ - && rm /etc/dmapi/dmapi.conf - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_queens_centos b/kolla-ansible/trilio-datamover-api/Dockerfile_queens_centos deleted file mode 100644 index 023bcecbc..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_queens_centos +++ /dev/null @@ -1,52 +0,0 @@ -FROM kolla/centos-binary-nova-api:queens -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN yum-config-manager --disable opendaylight && yum-config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install dmapi -y - -RUN mkdir -p /var/log/dmapi/ \ - /var/cache/dmapi/ \ - /etc/nova \ - /var/log/kolla/dmapi \ - && chown -R nova:nova /var/log/dmapi/ \ - && chown -R nova:nova /var/log/kolla/dmapi \ - && chown nova:nova /var/cache/dmapi/ \ - && rm /etc/dmapi/dmapi.conf - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_queens_ubuntu b/kolla-ansible/trilio-datamover-api/Dockerfile_queens_ubuntu deleted file mode 100644 index ca4cc7acf..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_queens_ubuntu +++ /dev/null @@ -1,47 +0,0 @@ -FROM kolla/ubuntu-binary-nova-api:queens -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y dmapi --allow-unauthenticated - -RUN mkdir -p /var/log/dmapi/ \ - /var/cache/dmapi/ \ - /etc/nova \ - /var/log/kolla/dmapi \ - && chown -R nova:nova /var/log/dmapi/ \ - && chown -R nova:nova /var/log/kolla/dmapi \ - && chown nova:nova /var/cache/dmapi/ \ - && rm /etc/dmapi/dmapi.conf - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_rocky_centos b/kolla-ansible/trilio-datamover-api/Dockerfile_rocky_centos deleted file mode 100644 index dc20339be..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_rocky_centos +++ /dev/null @@ -1,52 +0,0 @@ -FROM kolla/centos-binary-nova-api:rocky -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN yum-config-manager --disable opendaylight && yum-config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install dmapi -y - -RUN mkdir -p /var/log/dmapi/ \ - /var/cache/dmapi/ \ - /etc/nova \ - /var/log/kolla/dmapi \ - && chown -R nova:nova /var/log/dmapi/ \ - && chown -R nova:nova /var/log/kolla/dmapi \ - && chown nova:nova /var/cache/dmapi/ \ - && rm /etc/dmapi/dmapi.conf - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_rocky_ubuntu b/kolla-ansible/trilio-datamover-api/Dockerfile_rocky_ubuntu deleted file mode 100644 index 372767312..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_rocky_ubuntu +++ /dev/null @@ -1,47 +0,0 @@ -FROM kolla/ubuntu-binary-nova-api:rocky -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y dmapi --allow-unauthenticated - -RUN mkdir -p /var/log/dmapi/ \ - /var/cache/dmapi/ \ - /etc/nova \ - /var/log/kolla/dmapi \ - && chown -R nova:nova /var/log/dmapi/ \ - && chown -R nova:nova /var/log/kolla/dmapi \ - && chown nova:nova /var/cache/dmapi/ \ - && rm /etc/dmapi/dmapi.conf - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_stein_centos b/kolla-ansible/trilio-datamover-api/Dockerfile_stein_centos deleted file mode 100644 index 5880cbf0a..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_stein_centos +++ /dev/null @@ -1,52 +0,0 @@ -FROM kolla/centos-binary-nova-api:stein -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN yum-config-manager --disable opendaylight && yum-config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install dmapi -y - -RUN mkdir -p /var/log/dmapi/ \ - /var/cache/dmapi/ \ - /etc/nova \ - /var/log/kolla/dmapi \ - && chown -R nova:nova /var/log/dmapi/ \ - && chown -R nova:nova /var/log/kolla/dmapi \ - && chown nova:nova /var/cache/dmapi/ \ - && rm /etc/dmapi/dmapi.conf - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_stein_ubuntu b/kolla-ansible/trilio-datamover-api/Dockerfile_stein_ubuntu deleted file mode 100644 index 02fcb9053..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_stein_ubuntu +++ /dev/null @@ -1,47 +0,0 @@ -FROM kolla/ubuntu-binary-nova-api:stein -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y dmapi --allow-unauthenticated - -RUN mkdir -p /var/log/dmapi/ \ - /var/cache/dmapi/ \ - /etc/nova \ - /var/log/kolla/dmapi \ - && chown -R nova:nova /var/log/dmapi/ \ - && chown -R nova:nova /var/log/kolla/dmapi \ - && chown nova:nova /var/cache/dmapi/ \ - && rm /etc/dmapi/dmapi.conf - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_train_centos b/kolla-ansible/trilio-datamover-api/Dockerfile_train_centos deleted file mode 100644 index ed89b5bd9..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_train_centos +++ /dev/null @@ -1,35 +0,0 @@ -FROM kolla/centos-binary-nova-api:train -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN yum-config-manager --disable opendaylight && yum-config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install dmapi -y - -RUN mkdir -p /var/cache/dmapi/ -RUN chown -R dmapi:dmapi /etc/nova/ && chown -R dmapi:dmapi /etc/dmapi && chown -R dmapi:dmapi /var/cache/dmapi/ - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_train_ubuntu b/kolla-ansible/trilio-datamover-api/Dockerfile_train_ubuntu deleted file mode 100644 index 57dfbf09f..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_train_ubuntu +++ /dev/null @@ -1,41 +0,0 @@ -FROM kolla/ubuntu-binary-nova-api:train -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y - -RUN apt-get install -y python3-dmapi --allow-unauthenticated - -RUN chown -R dmapi:dmapi /etc/nova/ && chown -R dmapi:dmapi /etc/dmapi - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -# /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_dmapi -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_ussuri_centos b/kolla-ansible/trilio-datamover-api/Dockerfile_ussuri_centos deleted file mode 100644 index 112222a57..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_ussuri_centos +++ /dev/null @@ -1,37 +0,0 @@ -FROM kolla/centos-binary-nova-api:ussuri -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN dnf clean all -RUN dnf config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install python3-dmapi -y - -## Kolla specifc settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start -COPY triliovault_datamover_api_extend_start.sh /usr/local/bin/kolla_triliovault_datamover_api_extend_start -RUN usermod -a -G kolla dmapi - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_ussuri_ubuntu b/kolla-ansible/trilio-datamover-api/Dockerfile_ussuri_ubuntu deleted file mode 100644 index 6ef20f4ad..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_ussuri_ubuntu +++ /dev/null @@ -1,34 +0,0 @@ -FROM kolla/ubuntu-binary-nova-api:ussuri -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y python3-dmapi --allow-unauthenticated - - -## Kolla specifc settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start -COPY triliovault_datamover_api_extend_start.sh /usr/local/bin/kolla_triliovault_datamover_api_extend_start -RUN usermod -a -G kolla dmapi - - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_victoria_centos b/kolla-ansible/trilio-datamover-api/Dockerfile_victoria_centos deleted file mode 100644 index 23a587b22..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_victoria_centos +++ /dev/null @@ -1,45 +0,0 @@ -FROM kolla/centos-binary-nova-api:victoria -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN dnf clean all -RUN dnf config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-Linux-* -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-Linux-* -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-NFV-OpenvSwitch.repo -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-NFV-OpenvSwitch.repo -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-OpenStack-* -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-OpenStack-* -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-OpsTools.repo -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-OpsTools.repo -RUN yum install python3-dmapi -y - -## Kolla specifc settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start -COPY triliovault_datamover_api_extend_start.sh /usr/local/bin/kolla_triliovault_datamover_api_extend_start -RUN usermod -a -G kolla dmapi - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_victoria_ubuntu b/kolla-ansible/trilio-datamover-api/Dockerfile_victoria_ubuntu deleted file mode 100644 index a12e929b0..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_victoria_ubuntu +++ /dev/null @@ -1,34 +0,0 @@ -FROM kolla/ubuntu-binary-nova-api:victoria -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y python3-dmapi --allow-unauthenticated - - -## Kolla specifc settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start -COPY triliovault_datamover_api_extend_start.sh /usr/local/bin/kolla_triliovault_datamover_api_extend_start -RUN usermod -a -G kolla dmapi - - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_wallaby_centos b/kolla-ansible/trilio-datamover-api/Dockerfile_wallaby_centos deleted file mode 100644 index 9158b7f65..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_wallaby_centos +++ /dev/null @@ -1,37 +0,0 @@ -FROM kolla/centos-binary-nova-api:wallaby -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN dnf clean all -RUN dnf config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install python3-dmapi -y - -## Kolla specifc settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start -COPY triliovault_datamover_api_extend_start.sh /usr/local/bin/kolla_triliovault_datamover_api_extend_start -RUN usermod -a -G kolla dmapi - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover-api/Dockerfile_wallaby_ubuntu b/kolla-ansible/trilio-datamover-api/Dockerfile_wallaby_ubuntu deleted file mode 100644 index 81469ac69..000000000 --- a/kolla-ansible/trilio-datamover-api/Dockerfile_wallaby_ubuntu +++ /dev/null @@ -1,34 +0,0 @@ -FROM kolla/ubuntu-binary-nova-api:wallaby -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TrilioData trilio-datamover-api" \ - description="TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages - -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y python3-dmapi --allow-unauthenticated - - -## Kolla specifc settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start -COPY triliovault_datamover_api_extend_start.sh /usr/local/bin/kolla_triliovault_datamover_api_extend_start -RUN usermod -a -G kolla dmapi - - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover-api/README.md b/kolla-ansible/trilio-datamover-api/README.md deleted file mode 100644 index ab7dcba11..000000000 --- a/kolla-ansible/trilio-datamover-api/README.md +++ /dev/null @@ -1,42 +0,0 @@ -## Assumptions -This container is only designed for and tested on Redhat OpenStack Platform 13. - -## Pre-requisites -1. Redhat OpenStack Platform 13 setup deployed with container approach -2. To build container you will need redhat subscription with OpenStack Platform suite - -## Command to build container -``` -git clone -cd /path/to/redhat-director-scripts/docker/trilio-dmapi/ -docker build \ ---build-arg redhat_username= --build-arg redhat_password= \ ---build-arg redhat_pool_id= -t shyambiradar/trilio-dmapi:queens . -``` - -## Command to run container - -If you are running this container on non RHOSP setup, create /var/log/containers/nova directory on node where you want to run this container. - -##Step1: -Create tvault-contego.conf with all parameters(backup target) at location "/var/lib/config-data/triliodm/etc/tvault-contego/tvault-contego.conf" -Use puppet for that:(use puppet/trilio) -puppet agent --test --tags dmapiconfig - -#### For NFS as backup target: -``` -docker run -v /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova:/etc/nova:ro \ --v /var/run/libvirt/:/var/run/libvirt/ -v /var/lib/config-data/triliodmaoi/etc/dmapi:/etc/dmapi:ro \ --v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin \ --v /sbin:/sbin --network host --privileged=true \ --dt --name dmapi shyambiradar/trilio-dmapi:queens -``` -#### For Amazon S3 as backup target: -``` -docker run -v /etc/nova:/etc/nova -v /var/run/libvirt/:/var/run/libvirt/ -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin -v /sbin:/sbin --network host --privileged=true -it --name debug shyambiradar/trilio-datamover:queens amazon_s3 -``` -#### Redhat Ceph S3 as backup target -``` -docker run -v /etc/nova:/etc/nova -v /var/run/libvirt/:/var/run/libvirt/ -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin -v /sbin:/sbin --network host --privileged=true -it --name debug shyambiradar/trilio-datamover:queens ceph_s3 - -``` diff --git a/kolla-ansible/trilio-datamover-api/build_container.sh b/kolla-ansible/trilio-datamover-api/build_container.sh deleted file mode 100755 index 29725ba19..000000000 --- a/kolla-ansible/trilio-datamover-api/build_container.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -set -e - -if [ $# -ne 2 ];then - echo -e "Script takes exactly 2 arguments\n" - echo -e "./build_container.sh " - echo -e "./build_container.sh shyambiradar/trilio-dmapi queens" - exit 1 -fi - -name=$1 -tag=$2 - -docker build --no-cache -t $name:$tag . -docker push $name:$tag diff --git a/kolla-ansible/trilio-datamover-api/dmapi.conf.sample b/kolla-ansible/trilio-datamover-api/dmapi.conf.sample deleted file mode 100644 index 028d6d066..000000000 --- a/kolla-ansible/trilio-datamover-api/dmapi.conf.sample +++ /dev/null @@ -1,50 +0,0 @@ -[DEFAULT] -dmapi_workers = 2 -transport_url = rabbit://openstack:PiTBwZyWUOPVhws2RdaM7IiB1cBV8mjAPqx3FO5b@192.168.122.150:5672 -dmapi_link_prefix = https://192.168.122.151:8784 -dmapi_enabled_ssl_apis = -dmapi_listen_port = 8784 -dmapi_enabled_apis = dmapi -bindir = /usr/bin -instance_name_template = instance-%08x -dmapi_listen = 192.168.122.150 -my_ip = 192.168.122.150 -rootwrap_config = /etc/dmapi/rootwrap.conf -debug = True -log_file = /var/log/kolla/trilio-datamover-api/dmapi.log -log_dir = /var/log/kolla/trilio-datamover-api - -[wsgi] -ssl_cert_file = -ssl_key_file = -api_paste_config = /etc/dmapi/api-paste.ini - -[database] -connection = mysql+pymysql://nova:j4VnZXx5yZ5bN9ziaoBr1xGyRZSayFevd0hzV80r@192.168.122.151:3306/nova - -[api_database] -connection = mysql+pymysql://nova_api:4nrCV5Jg56mJHp0jZUGzPoMcrtnpTgYQNQzFrZQS@192.168.122.151:3306/nova_api - -[keystone_authtoken] -memcached_servers = 192.168.122.150:11211 -signing_dir = /var/cache/dmapi -cafile = -project_name = service -project_domain_id = default -user_domain_name = Default -username = nova -password = P7mBA60BBDfP4Wo2eeVBWmzLDBln6Vke16UUEV9N -auth_uri = http://192.168.122.151:5000 -auth_url = http://192.168.122.151:35357 -auth_type = password -user_domain_id = default -memcache_security_strategy = ENCRYPT -memcache_secret_key = zXNAkiAP96xgFkEjoYlg5wWUJJVitvc2axTB3jRb -insecure = True - -[oslo_messaging_notifications] -transport_url = rabbit://openstack:PiTBwZyWUOPVhws2RdaM7IiB1cBV8mjAPqx3FO5b@192.168.122.150:5672 -driver = noop - -[oslo_middleware] -enable_proxy_headers_parsing = true diff --git a/kolla-ansible/trilio-datamover-api/dmapi_sudoers b/kolla-ansible/trilio-datamover-api/dmapi_sudoers deleted file mode 100644 index ce6421d35..000000000 --- a/kolla-ansible/trilio-datamover-api/dmapi_sudoers +++ /dev/null @@ -1 +0,0 @@ -dmapi ALL=(ALL) NOPASSWD: ALL \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover-api/extend_start.sh b/kolla-ansible/trilio-datamover-api/extend_start.sh deleted file mode 100644 index f76edb326..000000000 --- a/kolla-ansible/trilio-datamover-api/extend_start.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -if [[ ! -d "/var/log/kolla/triliovault-datamover-api" ]]; then - mkdir -p /var/log/kolla/triliovault-datamover-api -fi -if [[ $(stat -c %a /var/log/kolla/triliovault-datamover-api) != "755" ]]; then - chmod 755 /var/log/kolla/triliovault-datamover-api -fi - -. /usr/local/bin/kolla_triliovault_datamover_api_extend_start \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover-api/licensing.txt b/kolla-ansible/trilio-datamover-api/licensing.txt deleted file mode 100644 index a87288e84..000000000 --- a/kolla-ansible/trilio-datamover-api/licensing.txt +++ /dev/null @@ -1,10 +0,0 @@ -LicenseID TVAULT-59508796-8e7f-11e7-9a79- -Description TrilioVault License from TrilioData, Inc -CreationDate 2017-08-31 -LicenseEdition ENTERPRISE -LicenseTypeName EULA -Organisation Luxoft -LicenseExpiryDate 2020-05-27 -Licensed For 1 GB Backup Capacity -Evaluation False -License Key AAABUA0ODAoPeNp9Uk2PgjAQvfdXNNnr diff --git a/kolla-ansible/trilio-datamover-api/run_container.sh b/kolla-ansible/trilio-datamover-api/run_container.sh deleted file mode 100755 index d2ebb8400..000000000 --- a/kolla-ansible/trilio-datamover-api/run_container.sh +++ /dev/null @@ -1,5 +0,0 @@ -# This is the output of "runlike trilio_dmapi". It contains lots of stuff -# that would be set by default if omitted. Note the volume mounts though in -# particular. - -docker run --name=trilio_dmapi --hostname=node001 --user=nova --env=PATH=/var/lib/kolla/venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin --env=PIP_INDEX_URL=http://mirror.iad.rax.openstack.org:8080/pypi/simple --env=PIP_TRUSTED_HOST=mirror.iad.rax.openstack.org --env=KOLLA_BASE_DISTRO=ubuntu --env=KOLLA_INSTALL_TYPE=source --env=KOLLA_INSTALL_METATYPE=mixed --env='PS1=$(tput bold)($(printenv KOLLA_SERVICE_NAME))$(tput sgr0)[$(id -un)@$(hostname -s) $(pwd)]$ ' --env=DEBIAN_FRONTEND=noninteractive --volume=/etc/kolla/dmapi/dmapi.conf:/etc/dmapi/dmapi.conf --volume=/etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf --network=host --restart=no --label kolla_version="5.0.5" --label name="kolla/openstack-nova-api-triliodata-plugin" --label build-date="20190416" --label vendor="TrilioData" --label release="3.1" --label description="Red Hat OpenStack Platform 13.0 nova-api TrilioData trilio-datamover-api" --label maintainer="shyam.biradar@trilio.io" --label summary="Red Hat OpenStack Platform 13.0 nova-api TrilioData trilio-datamover-api" --label version="3.1.0" --log-opt max-size=10m --detach=true kolla/ubuntu-source-trilio-dmapi:pike /var/lib/kolla/venv/bin/python /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover-api/trilio.list b/kolla-ansible/trilio-datamover-api/trilio.list deleted file mode 100644 index c95b53900..000000000 --- a/kolla-ansible/trilio-datamover-api/trilio.list +++ /dev/null @@ -1 +0,0 @@ -deb [trusted=yes] https://apt.fury.io/triliodata-dev-stable-4-2/ / diff --git a/kolla-ansible/trilio-datamover-api/trilio.repo b/kolla-ansible/trilio-datamover-api/trilio.repo deleted file mode 100644 index fa008f8ac..000000000 --- a/kolla-ansible/trilio-datamover-api/trilio.repo +++ /dev/null @@ -1,5 +0,0 @@ -[triliovault-4-2] -name=triliovault-4-2 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliodata-dev-stable-4-2/yum/ -gpgcheck=0 -enabled=1 diff --git a/kolla-ansible/trilio-datamover-api/triliovault_datamover_api_extend_start.sh b/kolla-ansible/trilio-datamover-api/triliovault_datamover_api_extend_start.sh deleted file mode 100644 index e0c87685f..000000000 --- a/kolla-ansible/trilio-datamover-api/triliovault_datamover_api_extend_start.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases -# of the KOLLA_BOOTSTRAP variable being set, including empty. - -## TODO: Uncomment following code once we get dmapi-dbsync tool - -if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then - dmapi-dbsync - exit 0 -fi - -if [[ "${!KOLLA_UPGRADE[@]}" ]]; then - dmapi-dbsync - exit 0 -fi \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover/Dockerfile b/kolla-ansible/trilio-datamover/Dockerfile deleted file mode 100644 index f7dd44400..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile +++ /dev/null @@ -1,79 +0,0 @@ -FROM kolla/ubuntu-source-nova-compute:train -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -RUN rm -f /etc/nova/rootwrap.conf -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y tvault-contego --allow-unauthenticated - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_pike_ubuntu b/kolla-ansible/trilio-datamover/Dockerfile_pike_ubuntu deleted file mode 100644 index e34f83198..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_pike_ubuntu +++ /dev/null @@ -1,79 +0,0 @@ -FROM kolla/ubuntu-binary-nova-compute:pike -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y tvault-contego --allow-unauthenticated - - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_queens_centos b/kolla-ansible/trilio-datamover/Dockerfile_queens_centos deleted file mode 100644 index 1bfeabecb..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_queens_centos +++ /dev/null @@ -1,77 +0,0 @@ -FROM kolla/centos-binary-nova-compute:queens -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix unless upstream openstack repo's not available completely -RUN yum-config-manager --disable opendaylight && yum-config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-contego puppet-triliovault -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_queens_ubuntu b/kolla-ansible/trilio-datamover/Dockerfile_queens_ubuntu deleted file mode 100644 index 9ea009a42..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_queens_ubuntu +++ /dev/null @@ -1,79 +0,0 @@ -FROM kolla/ubuntu-binary-nova-compute:queens -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y tvault-contego --allow-unauthenticated - - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_rocky_centos b/kolla-ansible/trilio-datamover/Dockerfile_rocky_centos deleted file mode 100644 index 4624568d8..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_rocky_centos +++ /dev/null @@ -1,77 +0,0 @@ -FROM kolla/centos-binary-nova-compute:rocky -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN yum-config-manager --disable opendaylight && yum-config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-contego puppet-triliovault -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_rocky_ubuntu b/kolla-ansible/trilio-datamover/Dockerfile_rocky_ubuntu deleted file mode 100644 index e09c42f6d..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_rocky_ubuntu +++ /dev/null @@ -1,79 +0,0 @@ -FROM kolla/ubuntu-binary-nova-compute:rocky -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y tvault-contego --allow-unauthenticated - - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_stein_centos b/kolla-ansible/trilio-datamover/Dockerfile_stein_centos deleted file mode 100644 index 013bb4f7d..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_stein_centos +++ /dev/null @@ -1,77 +0,0 @@ -FROM kolla/centos-binary-nova-compute:stein -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN yum-config-manager --disable opendaylight && yum-config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-contego puppet-triliovault -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_stein_ubuntu b/kolla-ansible/trilio-datamover/Dockerfile_stein_ubuntu deleted file mode 100644 index 5b27b8044..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_stein_ubuntu +++ /dev/null @@ -1,79 +0,0 @@ -FROM kolla/ubuntu-binary-nova-compute:stein -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y tvault-contego --allow-unauthenticated - - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_train_centos b/kolla-ansible/trilio-datamover/Dockerfile_train_centos deleted file mode 100644 index 1272af2c3..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_train_centos +++ /dev/null @@ -1,77 +0,0 @@ -FROM kolla/centos-binary-nova-compute:train -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -# temporary fix -RUN yum-config-manager --disable opendaylight && yum-config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-contego puppet-triliovault -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_train_ubuntu b/kolla-ansible/trilio-datamover/Dockerfile_train_ubuntu deleted file mode 100644 index 70bcaf042..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_train_ubuntu +++ /dev/null @@ -1,78 +0,0 @@ -FROM kolla/ubuntu-binary-nova-compute:train -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y python3-tvault-contego python3-s3-fuse-plugin --allow-unauthenticated - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_ussuri_centos b/kolla-ansible/trilio-datamover/Dockerfile_ussuri_centos deleted file mode 100644 index 7ba92291a..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_ussuri_centos +++ /dev/null @@ -1,61 +0,0 @@ -FROM kolla/centos-binary-nova-compute:ussuri -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -RUN dnf clean all -RUN dnf config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages in CentOS 8 -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf install -y python3-tvault-contego puppet-triliovault python3-s3fuse-plugin - -## Kolla settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start - - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN dnf clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_ussuri_ubuntu b/kolla-ansible/trilio-datamover/Dockerfile_ussuri_ubuntu deleted file mode 100644 index 720571677..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_ussuri_ubuntu +++ /dev/null @@ -1,82 +0,0 @@ -FROM kolla/ubuntu-binary-nova-compute:ussuri -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y python3-tvault-contego python3-s3-fuse-plugin --allow-unauthenticated - - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -## Kolla settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_victoria_centos b/kolla-ansible/trilio-datamover/Dockerfile_victoria_centos deleted file mode 100644 index bbb783afc..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_victoria_centos +++ /dev/null @@ -1,70 +0,0 @@ -FROM kolla/centos-binary-nova-compute:victoria -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -RUN dnf clean all -RUN dnf config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages in CentOS 8 -ADD trilio.repo /etc/yum.repos.d/ -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-Ceph-Nautilus.repo -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-Ceph-Nautilus.repo -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-Linux-* -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-Linux-* -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-NFV-OpenvSwitch.repo -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-NFV-OpenvSwitch.repo -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-OpenStack-* -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-OpenStack-* -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-OpsTools.repo -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-OpsTools.repo -RUN dnf install -y python3-tvault-contego puppet-triliovault python3-s3fuse-plugin - -## Kolla settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start - - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN dnf clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/kolla-ansible/trilio-datamover/Dockerfile_victoria_ubuntu b/kolla-ansible/trilio-datamover/Dockerfile_victoria_ubuntu deleted file mode 100644 index 27a2606fa..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_victoria_ubuntu +++ /dev/null @@ -1,82 +0,0 @@ -FROM kolla/ubuntu-binary-nova-compute:victoria -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y python3-tvault-contego python3-s3-fuse-plugin --allow-unauthenticated - - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -## Kolla settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike - diff --git a/kolla-ansible/trilio-datamover/Dockerfile_wallaby_centos b/kolla-ansible/trilio-datamover/Dockerfile_wallaby_centos deleted file mode 100644 index b33854ef4..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_wallaby_centos +++ /dev/null @@ -1,60 +0,0 @@ -FROM kolla/centos-binary-nova-compute:wallaby -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -RUN dnf clean all -RUN dnf config-manager --save --setopt=epel.skip_if_unavailable=true - -##Install datamover packages in CentOS 8 -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf install -y python3-tvault-contego puppet-triliovault python3-s3fuse-plugin - -## Kolla settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start - - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN dnf clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover/Dockerfile_wallaby_ubuntu b/kolla-ansible/trilio-datamover/Dockerfile_wallaby_ubuntu deleted file mode 100644 index 5b622da32..000000000 --- a/kolla-ansible/trilio-datamover/Dockerfile_wallaby_ubuntu +++ /dev/null @@ -1,81 +0,0 @@ -FROM kolla/ubuntu-binary-nova-compute:wallaby -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="kolla/trilio-datamover" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TrilioData Datamover" \ - description="TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt-get update -y -RUN apt-get install -y python3-tvault-contego python3-s3-fuse-plugin --allow-unauthenticated - - -##Download virtenv -RUN mkdir -p /home/tvault \ - && curl -o /home/tvault/tvault-contego-virtenv.tar.gz http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/virtenv/queens/ubuntu/tvault-contego-virtenv.tar.gz \ - && tar -xzf /home/tvault/tvault-contego-virtenv.tar.gz -C /home/tvault/ \ - && chown -R nova:nova /home/tvault/ - -## Kolla settings -COPY extend_start.sh /usr/local/bin/kolla_extend_start - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ \ - && chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova \ - && usermod -aG kvm nova - -# ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -# RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf - -RUN mkdir -p /var/triliovault-mounts \ - && chown nova:nova /var/triliovault-mounts \ - && mkdir -p /var/triliovault \ - && chmod 777 /var/triliovault-mounts \ - && chown nova:nova /var/triliovault \ - && chmod 777 /var/triliovault - -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova - -################## -# REQUIRED MOUNTS# -################## -# /etc/kolla/datamover/nova.conf:/etc/nova/nova.conf -# /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf -# /etc/kolla/datamova/ceph.conf:/etc/ceph/ceph.conf -# /etc/kolla/datamova/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring -# iscsi_info:/etc/iscsi:rw -# /dev:/dev:rw -# nova_compute:/var/lib/nova/:rw -# /var/run/libvirt -# /etc/kolla/datamover/start_datamover_nfs:/opt/tvault/start_datamover_nfs - -## start_datamover_nfs was needed because it wasn't using NFS correctly - -############## -# RUN COMMAND# -############## -# docker run --network host --name trilio_datamover -d -v /etc/kolla/dmapi/nova.conf:/etc/nova/nova.conf -v /etc/kolla/datamover/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf kolla/ubuntu-source-trilio-datamover:pike \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover/README.md b/kolla-ansible/trilio-datamover/README.md deleted file mode 100644 index 3e8c9dc34..000000000 --- a/kolla-ansible/trilio-datamover/README.md +++ /dev/null @@ -1,42 +0,0 @@ -## Assumptions -This container is only designed for and tested on Redhat OpenStack Platform 13. - -## Pre-requisites -1. Redhat OpenStack Platform 13 setup deployed with container approach -2. To build container you will need redhat subscription with OpenStack Platform suite - -## Command to build container -``` -git clone -cd /path/to/redhat-director-scripts/docker/trilio-datamover/ -docker build \ ---build-arg redhat_username= --build-arg redhat_password= \ ---build-arg redhat_pool_id= -t shyambiradar/trilio-datamover:queens . -``` - -## Command to run container - -If you are running this container on non RHOSP setup, create /var/log/containers/nova directory on node where you want to run this container. - -##Step1: -Create tvault-contego.conf with all parameters(backup target) at location "/var/lib/config-data/triliodm/etc/tvault-contego/tvault-contego.conf" -Use puppet for that:(use puppet/trilio) -puppet agent --test --tags dmconfig - -#### For NFS as backup target: -``` -docker run -v /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova:/etc/nova:ro \ --v /var/run/libvirt/:/var/run/libvirt/ -v /var/lib/config-data/triliodm/etc/tvault-contego:/etc/tvault-contego:ro \ --v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin \ --v /sbin:/sbin --network host --privileged=true \ --dt --name dm shyambiradar/trilio-datamover:queens -``` -#### For Amazon S3 as backup target: -``` -docker run -v /etc/nova:/etc/nova -v /var/run/libvirt/:/var/run/libvirt/ -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin -v /sbin:/sbin --network host --privileged=true -it --name debug shyambiradar/trilio-datamover:queens amazon_s3 -``` -#### Redhat Ceph S3 as backup target -``` -docker run -v /etc/nova:/etc/nova -v /var/run/libvirt/:/var/run/libvirt/ -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin -v /sbin:/sbin --network host --privileged=true -it --name debug shyambiradar/trilio-datamover:queens ceph_s3 - -``` diff --git a/kolla-ansible/trilio-datamover/deploy.sh b/kolla-ansible/trilio-datamover/deploy.sh deleted file mode 100644 index ad9a6c8c1..000000000 --- a/kolla-ansible/trilio-datamover/deploy.sh +++ /dev/null @@ -1,79 +0,0 @@ -#!/bin/bash -x - -set -e - - -if [ $# -lt 1 ];then - echo "Script takes exactly 1 arguments" - echo -e "./deploy_trilio_on_kolla_ansible.sh " - exit 1 -fi - - -tag=$1 - -##Select backup target nfs/s3 for tvault backups -BACKUP_TARGET='nfs' - -#Python executable path inside container -PYTHON_PATH=/var/lib/kolla/venv/bin/python -DATAMOVER_CONFIG_DIR="/etc/kolla/trilio-datamover" -DATAMOVER_API_CONFIG_DIR="/etc/kolla/trilio-datamover-api" - -DATAMOVER_LOG_DIR="/var/log/kolla/trilio-datamover" -DATAMOVER_API_LOG_DIR="/var/log/kolla/trilio-datamover-api" - - - -echo -e "Trilio container tag provided:$tag" - -##Pull docker containers from dockerhub -docker pull shyambiradar/ubuntu-source-trilio-datamover:$tag -docker pull shyambiradar/ubuntu-source-trilio-datamover-api:$tag - - - -##Prepare config directories ##Please perform these steps manually on production enviornment -##These steps are only need if it's single node kolla-ansible deployed openstack cloud - -##Perform on all nodes where nova_compute service is deployed -mkdir -p $DATAMOVER_CONFIG_DIR -mkdir -p $DATAMOVER_LOG_DIR -chown nova:nova $DATAMOVER_LOG_DIR - -##Perform on all nodes where nova_api service is deployed -mkdir -p $DATAMOVER_API_CONFIG_DIR -mkdir -p $DATAMOVER_API_LOG_DIR -chown nova:nova $DATAMOVER_API_LOG_DIR - - -#### Run Datamover container -###Uncomment following command If ceph is backend storage for nova or cinder - -#docker run --network host --name trilio_datamover -d \ -#-v $DATAMOVER_CONFIG_DIR/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf \ -#-v $DATAMOVER_CONFIG_DIR/nova.conf:/etc/nova/nova.conf \ -#-v $DATAMOVER_CONFIG_DIR/ceph.conf:/etc/ceph/ceph.conf \ -#-v $DATAMOVER_CONFIG_DIR/ceph.client.nova.keyring:/etc/ceph/ceph.client.nova.keyring \ -#-v /dev:/dev:rw \ -#-v nova_compute:/var/lib/nova/:rw \ -#-v /var/log/kolla/:/var/log/kolla/ \ -#-v iscsi_info:/etc/iscsi:rw -v /var/run/libvirt \ -#shyambiradar/ubuntu-source-trilio-datamover:$tag /opt/tvault/start_datamover_nfs - -#If ceph storage is not used for nova, cinder -docker run --privileged --network host --name trilio_datamover -it \ --v $DATAMOVER_CONFIG_DIR/tvault-contego.conf:/etc/tvault-contego/tvault-contego.conf \ --v $DATAMOVER_CONFIG_DIR/nova.conf:/etc/nova/nova.conf \ --v /dev:/dev:rw \ --v nova_compute:/var/lib/nova/:rw \ --v /var/log/kolla/:/var/log/kolla/ \ --v iscsi_info:/etc/iscsi:rw -v /var/run/libvirt \ -shyambiradar/ubuntu-source-trilio-datamover:$tag /opt/tvault/start_datamover_nfs - - -#### Run Datamover Api container -docker run --network host --name trilio_datamover_api -d -v $DATAMOVER_API_CONFIG_DIR/nova.conf:/etc/nova/nova.conf \ --v $DATAMOVER_API_CONFIG_DIR/dmapi.conf:/etc/dmapi/dmapi.conf \ --v /var/log/kolla/:/var/log/kolla/ \ -shyambiradar/ubuntu-source-trilio-datamover-api:$tag $PYTHON_PATH /usr/bin/dmapi-api diff --git a/kolla-ansible/trilio-datamover/extend_start.sh b/kolla-ansible/trilio-datamover/extend_start.sh deleted file mode 100644 index 8bccc41df..000000000 --- a/kolla-ansible/trilio-datamover/extend_start.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -if [[ ! -d "/var/log/kolla/triliovault-datamover" ]]; then - mkdir -p /var/log/kolla/triliovault-datamover -fi -if [[ $(stat -c %a /var/log/kolla/triliovault-datamover) != "755" ]]; then - chmod 755 /var/log/kolla/triliovault-datamover -fi \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover/licensing.txt b/kolla-ansible/trilio-datamover/licensing.txt deleted file mode 100644 index a87288e84..000000000 --- a/kolla-ansible/trilio-datamover/licensing.txt +++ /dev/null @@ -1,10 +0,0 @@ -LicenseID TVAULT-59508796-8e7f-11e7-9a79- -Description TrilioVault License from TrilioData, Inc -CreationDate 2017-08-31 -LicenseEdition ENTERPRISE -LicenseTypeName EULA -Organisation Luxoft -LicenseExpiryDate 2020-05-27 -Licensed For 1 GB Backup Capacity -Evaluation False -License Key AAABUA0ODAoPeNp9Uk2PgjAQvfdXNNnr diff --git a/kolla-ansible/trilio-datamover/nova-sudoers b/kolla-ansible/trilio-datamover/nova-sudoers deleted file mode 100644 index 584f4e3ae..000000000 --- a/kolla-ansible/trilio-datamover/nova-sudoers +++ /dev/null @@ -1 +0,0 @@ -nova ALL = (root) NOPASSWD: /usr/bin/privsep-helper * diff --git a/kolla-ansible/trilio-datamover/start_datamover_nfs b/kolla-ansible/trilio-datamover/start_datamover_nfs deleted file mode 100644 index 7d03e78f6..000000000 --- a/kolla-ansible/trilio-datamover/start_datamover_nfs +++ /dev/null @@ -1,3 +0,0 @@ -/usr/bin/python3 /usr/bin/tvault-contego \ ---config-file=/etc/nova/nova.conf \ ---config-file=/etc/tvault-contego/tvault-contego.conf \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover/start_datamover_s3 b/kolla-ansible/trilio-datamover/start_datamover_s3 deleted file mode 100644 index c5347e87c..000000000 --- a/kolla-ansible/trilio-datamover/start_datamover_s3 +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -# Start the first process -/opt/tvault/start_tvault_object_store & -status=$? -if [ $status -ne 0 ]; then - echo "Failed to start tvault-object-store service: $status" - exit $status -fi - -# Start the second process -/opt/tvault/start_datamover_nfs & -status=$? -if [ $status -ne 0 ]; then - echo "Failed to start tvault contego service: $status" - exit $status -fi - -# Naive check runs checks once a minute to see if either of the processes exited. -# This illustrates part of the heavy lifting you need to do if you want to run -# more than one service in a container. The container exits with an error -# if it detects that either of the processes has exited. -# Otherwise it loops forever, waking up every 60 seconds - -while sleep 60; do - ps aux | grep contego | grep -q -v grep - PROCESS_1_STATUS=$? - ps aux | grep vaultfuse | grep -q -v grep - PROCESS_2_STATUS=$? - # If the greps above find anything, they exit with 0 status - # If they are not both 0, then something is wrong - if [ $PROCESS_1_STATUS -ne 0 -o $PROCESS_2_STATUS -ne 0 ]; then - echo "One of the processes has already exited." - exit 1 - fi -done diff --git a/kolla-ansible/trilio-datamover/start_tvault_object_store b/kolla-ansible/trilio-datamover/start_tvault_object_store deleted file mode 100644 index 19c684115..000000000 --- a/kolla-ansible/trilio-datamover/start_tvault_object_store +++ /dev/null @@ -1,3 +0,0 @@ -/usr/bin/python3 \ -/usr/bin/s3vaultfuse.py \ ---config-file=/etc/tvault-contego/tvault-contego.conf \ No newline at end of file diff --git a/kolla-ansible/trilio-datamover/trilio.filters b/kolla-ansible/trilio-datamover/trilio.filters deleted file mode 100644 index c2780cc64..000000000 --- a/kolla-ansible/trilio-datamover/trilio.filters +++ /dev/null @@ -1,10 +0,0 @@ -[Filters] -# mount and unmout filter -mount: CommandFilter, mount, root -umount: CommandFilter, umount, root -rescan-scsi-bus.sh: CommandFilter, /usr/bin/rescan-scsi-bus.sh, root -multipath: CommandFilter, multipath, root -qemu-img: CommandFilter, qemu-img, root -qemu-nbd: CommandFilter, qemu-nbd, root -rbd: CommandFilter, rbd, root -multipathd: CommandFilter, multipathd, root diff --git a/kolla-ansible/trilio-datamover/trilio.list b/kolla-ansible/trilio-datamover/trilio.list deleted file mode 100644 index c95b53900..000000000 --- a/kolla-ansible/trilio-datamover/trilio.list +++ /dev/null @@ -1 +0,0 @@ -deb [trusted=yes] https://apt.fury.io/triliodata-dev-stable-4-2/ / diff --git a/kolla-ansible/trilio-datamover/trilio.repo b/kolla-ansible/trilio-datamover/trilio.repo deleted file mode 100644 index fa008f8ac..000000000 --- a/kolla-ansible/trilio-datamover/trilio.repo +++ /dev/null @@ -1,5 +0,0 @@ -[triliovault-4-2] -name=triliovault-4-2 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliodata-dev-stable-4-2/yum/ -gpgcheck=0 -enabled=1 diff --git a/kolla-ansible/trilio-datamover/tvault-contego.conf b/kolla-ansible/trilio-datamover/tvault-contego.conf deleted file mode 100644 index 262318b4f..000000000 --- a/kolla-ansible/trilio-datamover/tvault-contego.conf +++ /dev/null @@ -1,23 +0,0 @@ -[DEFAULT] -#vault_storage_type = - -vault_data_directory_old = /var/triliovault -vault_data_directory = /var/triliovault-mounts -log_file = /var/log/nova/tvault-contego.log -debug = False -verbose = True -max_uploads_pending = 3 -max_commit_pending = 3 - -########For backup target type 's3' -#vault_s3_auth_version = DEFAULT -#vault_s3_access_key_id = -#vault_s3_secret_access_key = -#vault_s3_region_name = -#vault_s3_bucket = -#vault_s3_endpoint_url = -#vault_s3_ssl = - -########For backup target type 'nfs' -#vault_storage_nfs_export = -#vault_storage_nfs_options = diff --git a/kolla-ansible/trilio-datamover/tvault-contego.conf.nfs.sample b/kolla-ansible/trilio-datamover/tvault-contego.conf.nfs.sample deleted file mode 100644 index c6d686c15..000000000 --- a/kolla-ansible/trilio-datamover/tvault-contego.conf.nfs.sample +++ /dev/null @@ -1,22 +0,0 @@ -[DEFAULT] -vault_storage_type = nfs -vault_storage_nfs_export = 192.168.122.1:/var/nfs -vault_data_directory_old = /var/triliovault -vault_data_directory = /var/triliovault-mounts -log_file = /var/log/kolla/trilio-datamover/tvault-contego.log -debug = False -verbose = True -max_uploads_pending = 3 -max_commit_pending = 3 -vault_s3_auth_version = DEFAULT -vault_s3_access_key_id = -vault_s3_secret_access_key = -vault_s3_region_name = us-east-2 -vault_s3_bucket = -qemu_agent_ping_timeout = 900 - -[contego_sys_admin] -helper_command = sudo /var/lib/kolla/venv/bin/privsep-helper - -[conductor] -use_local = True diff --git a/kolla-ansible/trilio-datamover/tvault-contego.conf.s3.sample b/kolla-ansible/trilio-datamover/tvault-contego.conf.s3.sample deleted file mode 100644 index 0afdae690..000000000 --- a/kolla-ansible/trilio-datamover/tvault-contego.conf.s3.sample +++ /dev/null @@ -1,27 +0,0 @@ -[DEFAULT] -vault_storage_type = s3 -vault_storage_nfs_export = TrilioVault -vault_data_directory_old = /var/triliovault -vault_data_directory = /var/triliovault-mounts -log_file = /var/log/kolla/trilio-datamover/tvault-contego.log -debug = False -verbose = True -max_uploads_pending = 3 -max_commit_pending = 3 -vault_s3_auth_version = DEFAULT -vault_s3_access_key_id = -vault_s3_secret_access_key = -vault_s3_region_name = -vault_s3_bucket = - -vault_s3_endpoint_url = -vault_s3_signature_version = "default" -vault_s3_ssl = True - -qemu_agent_ping_timeout=900 - -[contego_sys_admin] -helper_command = sudo /var/lib/kolla/venv/bin/privsep-helper - -[conductor] -use_local = True diff --git a/kolla-ansible/trilio-horizon-plugin/Dockerfile b/kolla-ansible/trilio-horizon-plugin/Dockerfile deleted file mode 100644 index 9a4a0ba45..000000000 --- a/kolla-ansible/trilio-horizon-plugin/Dockerfile +++ /dev/null @@ -1,23 +0,0 @@ -FROM registry.access.redhat.com/rhosp13/openstack-horizon -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" \ - description="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-horizon-plugin python-workloadmgrclient -y -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/kolla-ansible/trilio-horizon-plugin/Dockerfile_ussuri_centos b/kolla-ansible/trilio-horizon-plugin/Dockerfile_ussuri_centos deleted file mode 100644 index b11f490c4..000000000 --- a/kolla-ansible/trilio-horizon-plugin/Dockerfile_ussuri_centos +++ /dev/null @@ -1,28 +0,0 @@ -FROM kolla/centos-binary-horizon:ussuri -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="centos-binary-trilio-horizon-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioVault Horizon Plugin" \ - description="TrilioVault Horizon Plugin for Kolla-ansible deployed OpenStack on centos platform" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf config-manager --set-enabled epel -RUN dnf install python3-tvault-horizon-plugin-el8 -y -RUN rm /etc/yum.repos.d/trilio.repo -RUN dnf config-manager --set-disabled epel - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/kolla-ansible/trilio-horizon-plugin/Dockerfile_ussuri_ubuntu b/kolla-ansible/trilio-horizon-plugin/Dockerfile_ussuri_ubuntu deleted file mode 100644 index bc01b91f3..000000000 --- a/kolla-ansible/trilio-horizon-plugin/Dockerfile_ussuri_ubuntu +++ /dev/null @@ -1,27 +0,0 @@ -FROM kolla/ubuntu-binary-horizon:ussuri -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="ubuntu-binary-trilio-horizon-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioVault Horizon Plugin" \ - description="TrilioVault Horizon Plugin for Kolla-ansible deployed OpenStack on ubuntu platform" - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt update -y -RUN apt-get install -y python3-tvault-horizon-plugin python3-workloadmgrclient --allow-unauthenticated - - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/kolla-ansible/trilio-horizon-plugin/Dockerfile_victoria_centos b/kolla-ansible/trilio-horizon-plugin/Dockerfile_victoria_centos deleted file mode 100644 index eb8ecc799..000000000 --- a/kolla-ansible/trilio-horizon-plugin/Dockerfile_victoria_centos +++ /dev/null @@ -1,36 +0,0 @@ -FROM kolla/centos-binary-horizon:victoria -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="centos-binary-trilio-horizon-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioVault Horizon Plugin" \ - description="TrilioVault Horizon Plugin for Kolla-ansible deployed OpenStack on centos platform" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf config-manager --set-enabled epel -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-Linux-* -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-Linux-* -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-NFV-OpenvSwitch.repo -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-NFV-OpenvSwitch.repo -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-OpenStack-* -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-OpenStack-* -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-OpsTools.repo -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-OpsTools.repo -RUN dnf install python3-tvault-horizon-plugin-el8 -y -RUN rm /etc/yum.repos.d/trilio.repo -RUN dnf config-manager --set-disabled epel - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/kolla-ansible/trilio-horizon-plugin/Dockerfile_victoria_ubuntu b/kolla-ansible/trilio-horizon-plugin/Dockerfile_victoria_ubuntu deleted file mode 100644 index c7873cf88..000000000 --- a/kolla-ansible/trilio-horizon-plugin/Dockerfile_victoria_ubuntu +++ /dev/null @@ -1,27 +0,0 @@ -FROM kolla/ubuntu-binary-horizon:victoria -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="ubuntu-binary-trilio-horizon-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TrilioVault Horizon Plugin" \ - description="TrilioVault Horizon Plugin for Kolla-ansible deployed OpenStack on ubuntu platform" - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt update -y -RUN apt-get install -y python3-tvault-horizon-plugin python3-workloadmgrclient --allow-unauthenticated - - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/kolla-ansible/trilio-horizon-plugin/Dockerfile_wallaby_centos b/kolla-ansible/trilio-horizon-plugin/Dockerfile_wallaby_centos deleted file mode 100644 index d6f5cd519..000000000 --- a/kolla-ansible/trilio-horizon-plugin/Dockerfile_wallaby_centos +++ /dev/null @@ -1,28 +0,0 @@ -FROM kolla/centos-binary-horizon:wallaby -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="centos-binary-trilio-horizon-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TrilioVault Horizon Plugin" \ - description="TrilioVault Horizon Plugin for Kolla-ansible deployed OpenStack on centos platform" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf config-manager --set-enabled epel -RUN dnf install python3-tvault-horizon-plugin-el8 -y -RUN rm /etc/yum.repos.d/trilio.repo -RUN dnf config-manager --set-disabled epel - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses \ No newline at end of file diff --git a/kolla-ansible/trilio-horizon-plugin/Dockerfile_wallaby_ubuntu b/kolla-ansible/trilio-horizon-plugin/Dockerfile_wallaby_ubuntu deleted file mode 100644 index a2ada012a..000000000 --- a/kolla-ansible/trilio-horizon-plugin/Dockerfile_wallaby_ubuntu +++ /dev/null @@ -1,27 +0,0 @@ -FROM kolla/ubuntu-binary-horizon:wallaby -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="ubuntu-binary-trilio-horizon-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TrilioVault Horizon Plugin" \ - description="TrilioVault Horizon Plugin for Kolla-ansible deployed OpenStack on ubuntu platform" - -##Install datamover packages -ADD trilio.list /etc/apt/sources.list.d/ -RUN apt update -y -RUN apt-get install -y python3-tvault-horizon-plugin python3-workloadmgrclient --allow-unauthenticated - - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/bin/python3 /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses \ No newline at end of file diff --git a/kolla-ansible/trilio-horizon-plugin/build_container.sh b/kolla-ansible/trilio-horizon-plugin/build_container.sh deleted file mode 100644 index b83cdb112..000000000 --- a/kolla-ansible/trilio-horizon-plugin/build_container.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash -x - -set -e - -if [ $# -ne 2 ];then - echo -e "Script takes exactly 2 arguments\n" - echo -e "./build_container.sh " - echo -e "./build_container.sh trilio/openstack-horizon-with-trilio-plugin queens" - exit 1 -fi - -name=$1 -tag=$2 - -docker build --no-cache -t $name:$tag . -docker push $name:$tag diff --git a/kolla-ansible/trilio-horizon-plugin/horizon_template_overrides.j2 b/kolla-ansible/trilio-horizon-plugin/horizon_template_overrides.j2 deleted file mode 100644 index 6585d601b..000000000 --- a/kolla-ansible/trilio-horizon-plugin/horizon_template_overrides.j2 +++ /dev/null @@ -1,11 +0,0 @@ -{% extends parent_template %} - - -{% block horizon_header %} -RUN subscription-manager register --user= \ ---password= && subscription-manager attach --pool -{% endblock %} - - -# Horizon -{% set horizon_packages_append = ['tvault-horizon-plugin'] %} diff --git a/kolla-ansible/trilio-horizon-plugin/licensing.txt b/kolla-ansible/trilio-horizon-plugin/licensing.txt deleted file mode 100644 index a87288e84..000000000 --- a/kolla-ansible/trilio-horizon-plugin/licensing.txt +++ /dev/null @@ -1,10 +0,0 @@ -LicenseID TVAULT-59508796-8e7f-11e7-9a79- -Description TrilioVault License from TrilioData, Inc -CreationDate 2017-08-31 -LicenseEdition ENTERPRISE -LicenseTypeName EULA -Organisation Luxoft -LicenseExpiryDate 2020-05-27 -Licensed For 1 GB Backup Capacity -Evaluation False -License Key AAABUA0ODAoPeNp9Uk2PgjAQvfdXNNnr diff --git a/kolla-ansible/trilio-horizon-plugin/trilio.list b/kolla-ansible/trilio-horizon-plugin/trilio.list deleted file mode 100644 index c95b53900..000000000 --- a/kolla-ansible/trilio-horizon-plugin/trilio.list +++ /dev/null @@ -1 +0,0 @@ -deb [trusted=yes] https://apt.fury.io/triliodata-dev-stable-4-2/ / diff --git a/kolla-ansible/trilio-horizon-plugin/trilio.repo b/kolla-ansible/trilio-horizon-plugin/trilio.repo deleted file mode 100644 index fa008f8ac..000000000 --- a/kolla-ansible/trilio-horizon-plugin/trilio.repo +++ /dev/null @@ -1,5 +0,0 @@ -[triliovault-4-2] -name=triliovault-4-2 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliodata-dev-stable-4-2/yum/ -gpgcheck=0 -enabled=1 diff --git a/redhat-director-scripts/docker/build_containers.sh b/redhat-director-scripts/docker/build_containers.sh deleted file mode 100755 index 58e04f00e..000000000 --- a/redhat-director-scripts/docker/build_containers.sh +++ /dev/null @@ -1,168 +0,0 @@ -#!/bin/bash - -set -e - -echo -e "\nPREREQUISITES:\n\tPlease make sure that you logged in to docker.io and registry.redhat.io" -echo -e "\tdocker.io should be logged in with user having pull and push permissions to https://hub.docker.com/u/trilio/dashboard/" -echo -e "\tregistry.redhat.io registry login needs user with only pull permissions" -echo -e "\tYou can use following commands:" -echo -e "\n\t- docker login docker.io\n\t- docker login registry.redhat.io\n\t- podman login docker.io\n\t- podman login registry.redhat.io\n" - - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=$1 - - -current_dir=$(pwd) -base_dir="$(dirname $0)" - -if [ $base_dir = '.' ] -then -base_dir="$current_dir" -fi - -#declare -a openstack_releases=("rhosp13") - -#declare -a openstack_platforms=("centos" "ubuntu") - -################## Build RHOSP14 containers #################### - -## Work dir preparation for for rhosp14 -build_dir=tmp_docker_rhosp14_${tvault_version} -rm -rf $base_dir/${build_dir} -mkdir -p $base_dir/${build_dir} - -cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ -cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ -cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - -#Build trilio-datamover containers for rhosp14 - -echo -e "Creating trilio-datamover container for rhosp14" -cd $base_dir/${build_dir}/trilio-datamover/ -rm Dockerfile -cp Dockerfile_rhosp14 Dockerfile -docker build --no-cache -t docker.io/trilio/trilio-datamover:${tvault_version}-rhosp14 . -docker push docker.io/trilio/trilio-datamover:${tvault_version}-rhosp14 - - - -#Build trilio_datamover-api containers for rhosp14 - -echo -e "Creating trilio-datamover-api container for rhosp14" -cd $base_dir/${build_dir}/trilio-datamover-api/ -rm Dockerfile -cp Dockerfile_rhosp14 Dockerfile -docker build --no-cache -t docker.io/trilio/trilio-datamover-api:${tvault_version}-rhosp14 . -docker push docker.io/trilio/trilio-datamover-api:${tvault_version}-rhosp14 - -## Build horizon plugin container for rhosp14 - -echo -e "Creating trilio horizon plugin container for rhosp14" -cd $base_dir/${build_dir}/trilio-horizon-plugin/ -rm Dockerfile -cp Dockerfile_rhosp14 Dockerfile -docker build --no-cache -t docker.io/trilio/trilio-horizon-plugin:${tvault_version}-rhosp14 . -docker push docker.io/trilio/trilio-horizon-plugin:${tvault_version}-rhosp14 - -# Clean the build_dir -rm -rf $base_dir/${build_dir} - -################## Build TripleO Rocky containers #################### - -## Work dir preparation for for tripleorocky -build_dir=tmp_docker_tripleorocky_${tvault_version} -rm -rf $base_dir/${build_dir} -mkdir -p $base_dir/${build_dir} - -cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ -cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ -cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - -#Build trilio-datamover containers for Tripleo rocky - -echo -e "Creating trilio-datamover container for Tripleo rocky" -cd $base_dir/${build_dir}/trilio-datamover/ -rm Dockerfile -cp Dockerfile_tripleorocky Dockerfile -docker build --no-cache -t docker.io/trilio/trilio-datamover-tripleo:${tvault_version}-rocky . -docker push docker.io/trilio/trilio-datamover-tripleo:${tvault_version}-rocky - - - -#Build trilio_datamover-api containers for tripleo rocky - -echo -e "Creating trilio-datamover-api container for Tripleo rocky" -cd $base_dir/${build_dir}/trilio-datamover-api/ -rm Dockerfile -cp Dockerfile_tripleorocky Dockerfile -docker build --no-cache -t docker.io/trilio/trilio-datamover-api-tripleo:${tvault_version}-rocky . -docker push docker.io/trilio/trilio-datamover-api-tripleo:${tvault_version}-rocky - -## Build horizon plugin container for tripleo rocky - -echo -e "Creating trilio horizon plugin container for Tripleo rocky" -cd $base_dir/${build_dir}/trilio-horizon-plugin/ -rm Dockerfile -cp Dockerfile_tripleorocky Dockerfile -docker build --no-cache -t docker.io/trilio/trilio-horizon-plugin-tripleo:${tvault_version}-rocky . -docker push docker.io/trilio/trilio-horizon-plugin-tripleo:${tvault_version}-rocky - -# Clean the build_dir -rm -rf $base_dir/${build_dir} - - -<<'COMMENT' -################################################################################################# - -################## Build RHOSP15 containers #################### - -## Work dir preparation for for rhosp15 -build_dir=tmp_docker_rhosp15_${tvault_version} -rm -rf $base_dir/${build_dir} -mkdir -p $base_dir/${build_dir} - -cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ -cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ -cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - -#Build trilio-datamover containers for rhosp15 - -echo -e "Creating trilio-datamover container for rhosp15" -cd $base_dir/${build_dir}/trilio-datamover/ -rm Dockerfile -cp Dockerfile_rhosp15 Dockerfile -buildah bud -t docker.io/trilio/trilio-datamover:${tvault_version}-rhosp15 . -podman push docker.io/trilio/trilio-datamover:${tvault_version}-rhosp15 - - - -#Build trilio_datamover-api containers for rhosp15 - -echo -e "Creating trilio-datamover-api container for rhosp15" -cd $base_dir/${build_dir}/trilio-datamover-api/ -rm Dockerfile -cp Dockerfile_rhosp15 Dockerfile -buildah bud -t docker.io/trilio/trilio-datamover-api:${tvault_version}-rhosp15 . -podman push docker.io/trilio/trilio-datamover-api:${tvault_version}-rhosp15 - -## Build horizon plugin container for rhosp15 - -echo -e "Creating trilio horizon plugin container for rhosp15" -cd $base_dir/${build_dir}/trilio-horizon-plugin/ -rm Dockerfile -cp Dockerfile_rhosp15 Dockerfile -buildah bud -t docker.io/trilio/trilio-horizon-plugin:${tvault_version}-rhosp15 . -podman push docker.io/trilio/trilio-horizon-plugin:${tvault_version}-rhosp15 - -# Clean the build_dir -rm -rf $base_dir/${build_dir} - -COMMENT -############################################# - diff --git a/redhat-director-scripts/docker/build_rhosp13_containers.sh b/redhat-director-scripts/docker/build_rhosp13_containers.sh deleted file mode 100755 index 2aefb7557..000000000 --- a/redhat-director-scripts/docker/build_rhosp13_containers.sh +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/bash - -set -e - -echo -e "\nPREREQUISITES:\n\tPlease make sure that you logged in to docker.io and registry.redhat.io" -echo -e "\tdocker.io should be logged in with user having pull and push permissions to https://hub.docker.com/u/trilio/dashboard/" -echo -e "\tregistry.redhat.io registry login needs user with only pull permissions" -echo -e "\tYou can use following commands:" -echo -e "\n\t- docker login docker.io\n\t- docker login registry.redhat.io\n\t- podman login docker.io\n\t- podman login registry.redhat.io\n" - - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=$1 - - -current_dir=$(pwd) -base_dir="$(dirname $0)" - -if [ $base_dir = '.' ] -then -base_dir="$current_dir" -fi - -#declare -a openstack_releases=("rhosp13") - -#declare -a openstack_platforms=("centos" "ubuntu") - -##################### Create containers for rhosp13 ################ -declare -a repositories=("registry.redhat.io/rhosp13/openstack-base" "registry.access.redhat.com/rhosp13/openstack-nova-api" "registry.access.redhat.com/rhosp13/openstack-horizon") -for repository in "${repositories[@]}" -do - docker pull ${repository}:latest -done - -build_dir=tmp_docker_${tvault_version} -rm -rf $base_dir/${build_dir} -mkdir -p $base_dir/${build_dir} -cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ -cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ -cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - -##Build trilio-datamover containers - -echo -e "Creating trilio-datamover container for rhosp13" -cd $base_dir/${build_dir}/trilio-datamover/ -rm Dockerfile -cp Dockerfile_rhosp13 Dockerfile -docker build --no-cache -t trilio/trilio-datamover:${tvault_version}-rhosp13 . - -#Build trilio_datamover-api containers - -echo -e "Creating trilio-datamover-api container for rhosp13" -cd $base_dir/${build_dir}/trilio-datamover-api/ -rm Dockerfile -cp Dockerfile_rhosp13 Dockerfile -docker build --no-cache -t trilio/trilio-datamover-api:${tvault_version}-rhosp13 . - - -## Build horizon plugin - -echo -e "Creating trilio horizon plugin container for rhosp13" -cd $base_dir/${build_dir}/trilio-horizon-plugin/ -rm Dockerfile -cp Dockerfile_rhosp13 Dockerfile -docker build --no-cache -t trilio/trilio-horizon-plugin:${tvault_version}-rhosp13 . - - - -# Clean the build_dir -rm -rf $base_dir/${build_dir} - diff --git a/redhat-director-scripts/docker/build_rhosp15.sh b/redhat-director-scripts/docker/build_rhosp15.sh deleted file mode 100755 index 3df4cd4c6..000000000 --- a/redhat-director-scripts/docker/build_rhosp15.sh +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash -x - -set -e - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_rhosp15.sh " - exit 1 -fi - -TVAULT_VERSION=$1 - - -current_dir=$(pwd) -base_dir="$(dirname $0)" - -if [ $base_dir = '.' ] -then -base_dir="$current_dir" -fi - -build_dir=tmp_docker_rhosp15_${TVAULT_VERSION} -rm -rf $base_dir/${build_dir} -mkdir -p $base_dir/${build_dir} - -cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ -cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ -cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - -#Build trilio-datamover containers for rhosp15 - -echo -e "Creating trilio-datamover container for rhosp15" -cd $base_dir/${build_dir}/trilio-datamover/ -rm Dockerfile -cp Dockerfile_rhosp15 Dockerfile -buildah bud -t docker.io/trilio/trilio-datamover:${TVAULT_VERSION}-rhosp15 . -podman push docker.io/trilio/trilio-datamover:${TVAULT_VERSION}-rhosp15 - - - -#Build trilio_datamover-api containers for rhosp15 - -echo -e "Creating trilio-datamover-api container for rhosp15" -cd $base_dir/${build_dir}/trilio-datamover-api/ -rm Dockerfile -cp Dockerfile_rhosp15 Dockerfile -buildah bud -t docker.io/trilio/trilio-datamover-api:${TVAULT_VERSION}-rhosp15 . -podman push docker.io/trilio/trilio-datamover-api:${TVAULT_VERSION}-rhosp15 - -## Build horizon plugin - -echo -e "Creating trilio horizon plugin container for rhosp15" -cd $base_dir/${build_dir}/trilio-horizon-plugin/ -rm Dockerfile -cp Dockerfile_rhosp15 Dockerfile -buildah bud -t docker.io/trilio/trilio-horizon-plugin:${TVAULT_VERSION}-rhosp15 . -podman push docker.io/trilio/trilio-horizon-plugin:${TVAULT_VERSION}-rhosp15 - -# Clean the build_dir -rm -rf $base_dir/${build_dir} diff --git a/redhat-director-scripts/docker/build_rhosp16_containers.sh b/redhat-director-scripts/docker/build_rhosp16_containers.sh deleted file mode 100755 index 74d06e66c..000000000 --- a/redhat-director-scripts/docker/build_rhosp16_containers.sh +++ /dev/null @@ -1,79 +0,0 @@ -#!/bin/bash - -set -e - -echo -e "\nPREREQUISITES:\n\tPlease make sure that you logged in to docker.io and registry.redhat.io" -echo -e "\tdocker.io should be logged in with user having pull and push permissions to https://hub.docker.com/u/trilio/dashboard/" -echo -e "\tregistry.redhat.io registry login needs user with only pull permissions" -echo -e "\tYou can use following commands:" -echo -e "\n\t- podman login docker.io\n\t- podman login registry.redhat.io\n" - - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=$1 - - -current_dir=$(pwd) -base_dir="$(dirname $0)" - -if [ $base_dir = '.' ] -then -base_dir="$current_dir" -fi - -declare -a openstack_releases=("rhosp16.1" "rhosp16.2") - -declare -a rhosp_releases=("16.1" "16.2") - -declare -a repositories=("registry.redhat.io/rhosp-rhel8/openstack-base" "registry.redhat.io/rhosp-rhel8/openstack-nova-api" "registry.redhat.io/rhosp-rhel8/openstack-horizon") - -for rhosp_release in "${rhosp_releases[@]}" -do - for repository in "${repositories[@]}" - do - podman pull --authfile /root/redhat-auth.json ${repository}:${rhosp_release} - done -done - -## now loop through the above array -for openstack_release in "${openstack_releases[@]}" -do - build_dir=tmp_docker_${openstack_release} - rm -rf $base_dir/${build_dir} - mkdir -p $base_dir/${build_dir} - cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ - cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ - cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - - #Build trilio-datamover containers - echo -e "Creating trilio-datamover container for ${openstack_release}" - cd $base_dir/${build_dir}/trilio-datamover/ - cp Dockerfile_${openstack_release} Dockerfile - buildah bud --format docker -t docker.io/trilio/trilio-datamover:${tvault_version}-${openstack_release} . - podman push --authfile /root/auth.json docker.io/trilio/trilio-datamover:${tvault_version}-${openstack_release} - - - #Build trilio_datamover-api containers - echo -e "Creating trilio-datamover container-api for ${openstack_release}" - cd $base_dir/${build_dir}/trilio-datamover-api/ - cp Dockerfile_${openstack_release} Dockerfile - buildah bud --format docker -t docker.io/trilio/trilio-datamover-api:${tvault_version}-${openstack_release} . - podman push --authfile /root/auth.json docker.io/trilio/trilio-datamover-api:${tvault_version}-${openstack_release} - - #Build trilio_horizon_plugin containers - echo -e "Creating trilio-horizon-plugin container for ${openstack_release}" - cd $base_dir/${build_dir}/trilio-horizon-plugin/ - cp Dockerfile_${openstack_release} Dockerfile - buildah bud --format docker -t docker.io/trilio/trilio-horizon-plugin:${tvault_version}-${openstack_release} . - podman push --authfile /root/auth.json docker.io/trilio/trilio-horizon-plugin:${tvault_version}-${openstack_release} - - # Clean the build_dir - rm -rf $base_dir/${build_dir} - -done - diff --git a/redhat-director-scripts/docker/build_tripleo_containers.sh b/redhat-director-scripts/docker/build_tripleo_containers.sh deleted file mode 100755 index e443d8234..000000000 --- a/redhat-director-scripts/docker/build_tripleo_containers.sh +++ /dev/null @@ -1,86 +0,0 @@ -#!/bin/bash -x - -set -e - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=$1 - - -current_dir=$(pwd) -base_dir="$(dirname $0)" - -if [ $base_dir = '.' ] -then -base_dir="$current_dir" -fi - - -openstack_distro="tripleo" - -declare -a openstack_releases=("train") -#Commenting for 4.2.HF2 only -#declare -a openstack_releases=("train" "wallaby") - -declare -a openstack_platforms=("centos7") -#Commenting for 4.2.HF2 only -#declare -a openstack_platforms=("centos7" "centos8s") - -declare -a base_containers=("docker.io/tripleotrain/centos-binary-nova-compute:current-tripleo-rdo" "docker.io/tripleotrain/centos-binary-nova-api:current-tripleo-rdo" "docker.io/tripleotrain/centos-binary-horizon:current-tripleo-rdo") - -#Commenting for 4.2.HF2 only -#declare -a base_containers=("docker.io/tripleotrain/centos-binary-nova-compute:current-tripleo-rdo" "docker.io/tripleotrain/centos-binary-nova-api:current-tripleo-rdo" "docker.io/tripleotrain/centos-binary-horizon:current-tripleo-rdo" "docker.io/tripleotraincentos8/centos-binary-nova-compute:current-tripleo-rdo" "docker.io/tripleotraincentos8/centos-binary-nova-api:current-tripleo-rdo" "docker.io/tripleotraincentos8/centos-binary-horizon:current-tripleo-rdo" "docker.io/tripleowallaby/openstack-nova-compute:current-tripleo-rdo" "docker.io/tripleowallaby/openstack-nova-api:current-tripleo-rdo" "docker.io/tripleowallaby/openstack-horizon:current-tripleo-rdo") - - -for base_container in "${base_containers[@]}" -do - podman pull ${base_container} -done -count=0 -## now loop through the above array -for openstack_release in "${openstack_releases[@]}" -do - build_dir=tmp_docker_${openstack_distro}_${openstack_releases[$count]}_${openstack_platforms[$count]} - rm -rf $base_dir/${build_dir} - mkdir -p $base_dir/${build_dir} - cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ - cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ - cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - - #Build trilio-datamover containers - echo -e "Creating trilio-datamover container for tripleo ${openstack_releases[$count]} ${openstack_platforms[$count]}" - cd $base_dir/${build_dir}/trilio-datamover/ - mv Dockerfile_${openstack_distro}_${openstack_releases[$count]}_${openstack_platforms[$count]} Dockerfile - curl https://trunk.rdoproject.org/centos8/component/tripleo/current/delorean.repo > delorean-component-tripleo.repo - curl -O http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/centos-gpg-keys-8-4.el8.noarch.rpm - curl -O http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/centos-stream-repos-8-4.el8.noarch.rpm - buildah bud --format docker -t trilio/${openstack_distro}-${openstack_releases[$count]}-${openstack_platforms[$count]}-trilio-datamover:${tvault_version}-${openstack_distro} . - - - #Build trilio_datamover-api containers - echo -e "Creating trilio-datamover container-api for tripleo ${openstack_releases[$count]} ${openstack_platforms[$count]}" - cd $base_dir/${build_dir}/trilio-datamover-api/ - mv Dockerfile_${openstack_distro}_${openstack_releases[$count]}_${openstack_platforms[$count]} Dockerfile - curl -O http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/centos-gpg-keys-8-4.el8.noarch.rpm - curl -O http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/centos-stream-repos-8-4.el8.noarch.rpm - curl https://trunk.rdoproject.org/centos8/component/tripleo/current/delorean.repo > delorean-component-tripleo.repo - buildah bud --format docker -t trilio/${openstack_distro}-${openstack_releases[$count]}-${openstack_platforms[$count]}-trilio-datamover-api:${tvault_version}-${openstack_distro} . - - - #Build trilio_horizon_plugin containers - echo -e "Creating trilio-horizon-plugin container for tripleo ${openstack_releases[$count]} ${openstack_platforms[$count]}" - cd $base_dir/${build_dir}/trilio-horizon-plugin/ - mv Dockerfile_${openstack_distro}_${openstack_releases[$count]}_${openstack_platforms[$count]} Dockerfile - curl -O http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/centos-gpg-keys-8-4.el8.noarch.rpm - curl -O http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/centos-stream-repos-8-4.el8.noarch.rpm - curl https://trunk.rdoproject.org/centos8/component/tripleo/current/delorean.repo > delorean-component-tripleo.repo - buildah bud --format docker -t trilio/${openstack_distro}-${openstack_releases[$count]}-${openstack_platforms[$count]}-trilio-horizon-plugin:${tvault_version}-${openstack_distro} . - - # Clean the build_dir - rm -rf $base_dir/${build_dir} - let count=count+1 -done diff --git a/redhat-director-scripts/docker/publish_containers.sh b/redhat-director-scripts/docker/publish_containers.sh deleted file mode 100755 index 49672b261..000000000 --- a/redhat-director-scripts/docker/publish_containers.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -set -e - - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=$1 - - -docker tag trilio/trilio-datamover-api:${tvault_version}-rhosp13 docker.io/trilio/trilio-datamover-api:${tvault_version}-rhosp13 -docker tag trilio/trilio-datamover:${tvault_version}-rhosp13 \ -docker.io/trilio/trilio-datamover:${tvault_version}-rhosp13 -docker tag trilio/trilio-horizon-plugin:${tvault_version}-rhosp13 docker.io/trilio/trilio-horizon-plugin:${tvault_version}-rhosp13 - -docker push docker.io/trilio/trilio-datamover-api:${tvault_version}-rhosp13 -docker push docker.io/trilio/trilio-datamover:${tvault_version}-rhosp13 -docker push docker.io/trilio/trilio-horizon-plugin:${tvault_version}-rhosp13 diff --git a/redhat-director-scripts/docker/publish_tripleo_containers.sh b/redhat-director-scripts/docker/publish_tripleo_containers.sh deleted file mode 100755 index 5ffe4d29a..000000000 --- a/redhat-director-scripts/docker/publish_tripleo_containers.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash - -set -e - - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=$1 - - -openstack_distro="tripleo" - -declare -a openstack_releases=("train") -#Commenting for 4.2.HF2 only -#declare -a openstack_releases=("train" "wallaby") - -declare -a openstack_platforms=("centos7") -#Commenting for 4.2.HF2 only -#declare -a openstack_platforms=("centos7" "centos8s") - -count=0 -## now loop through the above array -for openstack_release in "${openstack_releases[@]}" -do - - container_prefix="${openstack_distro}-${openstack_releases[$count]}-${openstack_platforms[$count]}" - podman tag trilio/${container_prefix}-trilio-datamover-api:${tvault_version}-${openstack_distro} \ - docker.io/trilio/${container_prefix}-trilio-datamover-api:${tvault_version}-${openstack_distro} - podman push --authfile /root/auth.json docker.io/trilio/${container_prefix}-trilio-datamover-api:${tvault_version}-${openstack_distro} - - podman tag trilio/${container_prefix}-trilio-datamover:${tvault_version}-${openstack_distro} \ - docker.io/trilio/${container_prefix}-trilio-datamover:${tvault_version}-${openstack_distro} - podman push --authfile /root/auth.json docker.io/trilio/${container_prefix}-trilio-datamover:${tvault_version}-${openstack_distro} - - podman tag trilio/${container_prefix}-trilio-horizon-plugin:${tvault_version}-${openstack_distro} \ - docker.io/trilio/${container_prefix}-trilio-horizon-plugin:${tvault_version}-${openstack_distro} - podman push --authfile /root/auth.json docker.io/trilio/${container_prefix}-trilio-horizon-plugin:${tvault_version}-${openstack_distro} - let count=count+1 -done diff --git a/redhat-director-scripts/docker/test_build_rhosp16.sh b/redhat-director-scripts/docker/test_build_rhosp16.sh deleted file mode 100755 index 1913e71d4..000000000 --- a/redhat-director-scripts/docker/test_build_rhosp16.sh +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/bash - -set -e - -echo -e "\nPREREQUISITES:\n\tPlease make sure that you logged in to docker.io and registry.redhat.io" -echo -e "\tdocker.io should be logged in with user having pull and push permissions to https://hub.docker.com/u/trilio/dashboard/" -echo -e "\tregistry.redhat.io registry login needs user with only pull permissions" -echo -e "\tYou can use following commands:" -echo -e "\n\t- docker login docker.io\n\t- docker login registry.redhat.io\n\t- podman login docker.io\n\t- podman login registry.redhat.io\n" - - -if [ $# -lt 1 ];then - echo "Script takes exacyly 1 argument" - echo -e "./build_container.sh " - exit 1 -fi - -tvault_version=$1 - - -current_dir=$(pwd) -base_dir="$(dirname $0)" - -if [ $base_dir = '.' ] -then -base_dir="$current_dir" -fi - -#declare -a openstack_releases=("rhosp13") - -#declare -a openstack_platforms=("centos" "ubuntu") - - -################# Create containers for RHOSP16 ####################### -## Work dir preparation for for rhosp16 -build_dir=tmp_docker_rhosp16_${tvault_version} -rm -rf $base_dir/${build_dir} -mkdir -p $base_dir/${build_dir} - -cp -R $base_dir/trilio-datamover $base_dir/${build_dir}/ -cp -R $base_dir/trilio-datamover-api $base_dir/${build_dir}/ -cp -R $base_dir/trilio-horizon-plugin $base_dir/${build_dir}/ - -podman login registry.redhat.io -podman pull registry.redhat.io/rhosp-rhel8/openstack-nova-compute:16.0 -podman pull registry.redhat.io/rhosp-rhel8/openstack-nova-api:16.0 -podman pull registry.redhat.io/rhosp-rhel8/openstack-horizon:16.0 - -#Build trilio-datamover containers for rhosp16 - -echo -e "Creating trilio-datamover container for rhosp16" -cd $base_dir/${build_dir}/trilio-datamover/ -rm Dockerfile -cp Dockerfile_rhosp16 Dockerfile -buildah bud --format docker -t docker.io/trilio/trilio-datamover:${tvault_version}-rhosp16 . -openstack tripleo container image push --local docker.io/trilio/trilio-datamover:${tvault_version}-rhosp16 - - - -#Build trilio_datamover-api containers for rhosp16 - -echo -e "Creating trilio-datamover-api container for rhosp16" -cd $base_dir/${build_dir}/trilio-datamover-api/ -rm Dockerfile -cp Dockerfile_rhosp16 Dockerfile -buildah bud --format docker -t docker.io/trilio/trilio-datamover-api:${tvault_version}-rhosp16 . -openstack tripleo container image push --local docker.io/trilio/trilio-datamover-api:${tvault_version}-rhosp16 - -## Build horizon plugin container for rhosp16 - -echo -e "Creating trilio horizon plugin container for rhosp16" -cd $base_dir/${build_dir}/trilio-horizon-plugin/ -rm Dockerfile -cp Dockerfile_rhosp16 Dockerfile -buildah bud --format docker -t docker.io/trilio/trilio-horizon-plugin:${tvault_version}-rhosp16 . -openstack tripleo container image push --local docker.io/trilio/trilio-horizon-plugin:${tvault_version}-rhosp16 - -# Clean the build_dir -rm -rf $base_dir/${build_dir} - diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile deleted file mode 100644 index afa7093c7..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile +++ /dev/null @@ -1,31 +0,0 @@ -FROM registry.access.redhat.com/rhosp13/openstack-nova-api -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 nova-api TrilioData trilio-datamover-api" \ - description="Red Hat OpenStack Platform 14.0 nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install dmapi -y -RUN mkdir -p /var/log/trilio-datamover-api -RUN chown -R nova:nova /var/log/trilio-datamover-api/ -RUN mkdir -p /var/cache/dmapi/ -RUN chown nova:nova /var/cache/dmapi/ -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp13 b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp13 deleted file mode 100644 index 6b824b2d8..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp13 +++ /dev/null @@ -1,30 +0,0 @@ -FROM registry.access.redhat.com/rhosp13/openstack-nova-api -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 nova-api TrilioData trilio-datamover-api" \ - description="Red Hat OpenStack Platform 14.0 nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install dmapi -y -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical - -RUN rm -f /etc/yum.repos.d/trilio.repo -RUN usermod -a -G kolla dmapi - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp14 b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp14 deleted file mode 100644 index 92505ee72..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp14 +++ /dev/null @@ -1,31 +0,0 @@ -FROM registry.redhat.io/rhosp14/openstack-nova-api -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp14/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 nova-api TrilioData trilio-datamover-api" \ - description="Red Hat OpenStack Platform 14.0 nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install dmapi -y -RUN mkdir -p /var/log/trilio-datamover-api -RUN chown -R nova:nova /var/log/trilio-datamover-api/ -RUN mkdir -p /var/cache/dmapi/ -RUN chown nova:nova /var/cache/dmapi/ -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp15 b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp15 deleted file mode 100644 index f9e5529d8..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp15 +++ /dev/null @@ -1,31 +0,0 @@ -FROM registry.redhat.io/rhosp15-rhel8/openstack-nova-api -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 nova-api TrilioData trilio-datamover-api" \ - description="Red Hat OpenStack Platform 14.0 nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install python3-dmapi -y -RUN mkdir -p /var/log/trilio-datamover-api -RUN chown -R nova:nova /var/log/trilio-datamover-api/ -RUN mkdir -p /var/cache/dmapi/ -RUN chown nova:nova /var/cache/dmapi/ -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16 b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16 deleted file mode 100644 index 8a522114d..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16 +++ /dev/null @@ -1,29 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-nova-api:16.0 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp16/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 16.0 nova-api TrilioData trilio-datamover-api" \ - description="Red Hat OpenStack Platform 16.0 nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf install python3-dmapi -y -RUN yum -y --skip-broken --nobest update-minimal --security --sec-severity=Important --sec-severity=Critical -RUN rm -f /etc/yum.repos.d/trilio.repo -RUN usermod -a -G kolla dmapi - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16.1 b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16.1 deleted file mode 100644 index f29b4b4ad..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16.1 +++ /dev/null @@ -1,29 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-nova-api:16.1 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp16/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="Red Hat OpenStack Platform 16.1 nova-api TrilioData trilio-datamover-api" \ - description="Red Hat OpenStack Platform 16.1 nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf install python3-dmapi -y -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical -RUN rm -f /etc/yum.repos.d/trilio.repo -RUN usermod -a -G kolla dmapi - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16.2 b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16.2 deleted file mode 100644 index 08bb96b7d..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_rhosp16.2 +++ /dev/null @@ -1,29 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-nova-api:16.2 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp16/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="Red Hat OpenStack Platform 16.2 nova-api TrilioData trilio-datamover-api" \ - description="Red Hat OpenStack Platform 16.2 nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf install python3-dmapi -y -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical --nobest --skip-broken -RUN rm -f /etc/yum.repos.d/trilio.repo -RUN usermod -a -G kolla dmapi - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_train_centos7 b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_train_centos7 deleted file mode 100644 index 2238f782a..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_train_centos7 +++ /dev/null @@ -1,38 +0,0 @@ -FROM docker.io/tripleotrain/centos-binary-nova-api:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/centos-binary-nova-compute-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TripleO Train nova-api TrilioData trilio-datamover-api" \ - description="TripleO Train nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -RUN yum clean all && yum-config-manager --save --setopt=delorean.skip_if_unavailable=true -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install dmapi -y -RUN rm -f /etc/yum.repos.d/trilio.repo -RUN usermod -a -G kolla dmapi -RUN yum clean all - - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_api_tripleo_centos7 /opt/tvault/start_datamover_api -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_api - - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_train_centos8 b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_train_centos8 deleted file mode 100644 index d1e82dc88..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_train_centos8 +++ /dev/null @@ -1,41 +0,0 @@ -FROM docker.io/tripleotraincentos8/centos-binary-nova-api:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/centos-binary-nova-compute-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TripleO Train nova-api TrilioData trilio-datamover-api" \ - description="TripleO Train nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -RUN dnf clean all -ADD trilio.repo delorean-component-tripleo.repo /etc/yum.repos.d/ -RUN dnf install -y python3-tripleo-repos -RUN tripleo-repos -b train current && tripleo-repos -b train current ceph -RUN sed -i 's#baseurl.*#baseurl=http://mirror.centos.org/centos-8/8/storage/x86_64/ceph-nautilus/#g' /etc/yum.repos.d/tripleo-centos-ceph-nautilus.repo - -RUN dnf install python3-dmapi -y -RUN rm -f /etc/yum.repos.d/trilio.repo -RUN usermod -a -G kolla dmapi -RUN dnf clean all - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_api_tripleo_centos8 /opt/tvault/start_datamover_api -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_api - - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_wallaby_centos8s b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_wallaby_centos8s deleted file mode 100644 index 3a5fd9386..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleo_wallaby_centos8s +++ /dev/null @@ -1,44 +0,0 @@ -FROM docker.io/tripleowallaby/openstack-nova-api:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/openstack-nova-api-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TripleO Wallaby nova-api TrilioData trilio-datamover-api" \ - description="TripleO Wallaby nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -RUN dnf clean all -ADD trilio.repo delorean-component-tripleo.repo /etc/yum.repos.d/ -ADD centos-gpg-keys-8-4.el8.noarch.rpm centos-stream-repos-8-4.el8.noarch.rpm /root/ -RUN rpm -ivh /root/centos-stream-repos-8-4.el8.noarch.rpm /root/centos-gpg-keys-8-4.el8.noarch.rpm -RUN rm -f centos-gpg-keys-8-4.el8.noarch.rpm centos-gpg-keys-8-4.el8.noarch.rpm -RUN dnf install -y python3-tripleo-repos -RUN tripleo-repos -b wallaby current ceph - - -RUN dnf install python3-dmapi -y -RUN rm -f /etc/yum.repos.d/trilio.repo -RUN usermod -a -G kolla dmapi -RUN dnf clean all - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_api_tripleo_centos8 /opt/tvault/start_datamover_api -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_api - - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER dmapi \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleorocky b/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleorocky deleted file mode 100644 index fa8a9ef96..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/Dockerfile_tripleorocky +++ /dev/null @@ -1,32 +0,0 @@ -FROM docker.io/tripleorocky/centos-binary-nova-api:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp14/openstack-nova-api-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="TripleO OpenStack Platform Rocky nova-api TrilioData trilio-datamover-api" \ - description="TripleO OpenStack Platform Rocky nova-api TrilioData trilio-datamover-api" - - -# switch to root and install a custom RPM, etc. -USER root - - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum-config-manager --save --setopt=delorean.skip_if_unavailable=true -RUN yum install dmapi -y -RUN mkdir -p /var/log/trilio-datamover-api -RUN chown -R nova:nova /var/log/trilio-datamover-api/ -RUN mkdir -p /var/cache/dmapi/ -RUN chown nova:nova /var/cache/dmapi/ -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Copy license file -RUN mkdir /licenses -COPY licensing.txt /licenses - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover-api/README.md b/redhat-director-scripts/docker/trilio-datamover-api/README.md deleted file mode 100644 index ab7dcba11..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/README.md +++ /dev/null @@ -1,42 +0,0 @@ -## Assumptions -This container is only designed for and tested on Redhat OpenStack Platform 13. - -## Pre-requisites -1. Redhat OpenStack Platform 13 setup deployed with container approach -2. To build container you will need redhat subscription with OpenStack Platform suite - -## Command to build container -``` -git clone -cd /path/to/redhat-director-scripts/docker/trilio-dmapi/ -docker build \ ---build-arg redhat_username= --build-arg redhat_password= \ ---build-arg redhat_pool_id= -t shyambiradar/trilio-dmapi:queens . -``` - -## Command to run container - -If you are running this container on non RHOSP setup, create /var/log/containers/nova directory on node where you want to run this container. - -##Step1: -Create tvault-contego.conf with all parameters(backup target) at location "/var/lib/config-data/triliodm/etc/tvault-contego/tvault-contego.conf" -Use puppet for that:(use puppet/trilio) -puppet agent --test --tags dmapiconfig - -#### For NFS as backup target: -``` -docker run -v /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova:/etc/nova:ro \ --v /var/run/libvirt/:/var/run/libvirt/ -v /var/lib/config-data/triliodmaoi/etc/dmapi:/etc/dmapi:ro \ --v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin \ --v /sbin:/sbin --network host --privileged=true \ --dt --name dmapi shyambiradar/trilio-dmapi:queens -``` -#### For Amazon S3 as backup target: -``` -docker run -v /etc/nova:/etc/nova -v /var/run/libvirt/:/var/run/libvirt/ -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin -v /sbin:/sbin --network host --privileged=true -it --name debug shyambiradar/trilio-datamover:queens amazon_s3 -``` -#### Redhat Ceph S3 as backup target -``` -docker run -v /etc/nova:/etc/nova -v /var/run/libvirt/:/var/run/libvirt/ -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin -v /sbin:/sbin --network host --privileged=true -it --name debug shyambiradar/trilio-datamover:queens ceph_s3 - -``` diff --git a/redhat-director-scripts/docker/trilio-datamover-api/build_container.sh b/redhat-director-scripts/docker/trilio-datamover-api/build_container.sh deleted file mode 100755 index 29725ba19..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/build_container.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -set -e - -if [ $# -ne 2 ];then - echo -e "Script takes exactly 2 arguments\n" - echo -e "./build_container.sh " - echo -e "./build_container.sh shyambiradar/trilio-dmapi queens" - exit 1 -fi - -name=$1 -tag=$2 - -docker build --no-cache -t $name:$tag . -docker push $name:$tag diff --git a/redhat-director-scripts/docker/trilio-datamover-api/delorean-component-tripleo.repo b/redhat-director-scripts/docker/trilio-datamover-api/delorean-component-tripleo.repo deleted file mode 100644 index 34acbf0fd..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/delorean-component-tripleo.repo +++ /dev/null @@ -1,6 +0,0 @@ -[delorean-component-tripleo] -name=delorean-puppet-apache-e44f1001e4b822767fced91afe7e216aa1b647a0 -baseurl=https://trunk.rdoproject.org/centos8/component/tripleo/e4/4f/e44f1001e4b822767fced91afe7e216aa1b647a0_642db7af -enabled=1 -gpgcheck=0 -priority=1 \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover-api/licensing.txt b/redhat-director-scripts/docker/trilio-datamover-api/licensing.txt deleted file mode 100644 index a87288e84..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/licensing.txt +++ /dev/null @@ -1,10 +0,0 @@ -LicenseID TVAULT-59508796-8e7f-11e7-9a79- -Description TrilioVault License from TrilioData, Inc -CreationDate 2017-08-31 -LicenseEdition ENTERPRISE -LicenseTypeName EULA -Organisation Luxoft -LicenseExpiryDate 2020-05-27 -Licensed For 1 GB Backup Capacity -Evaluation False -License Key AAABUA0ODAoPeNp9Uk2PgjAQvfdXNNnr diff --git a/redhat-director-scripts/docker/trilio-datamover-api/run_container.sh b/redhat-director-scripts/docker/trilio-datamover-api/run_container.sh deleted file mode 100755 index e8a6fbc99..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/run_container.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash -x - - -if [ ! -f /var/lib/config-data/triliodmapi/etc/dmapi/dmapi.conf ]; then - echo "Before running this script, create dmapi.conf file at :\"/var/lib/config-data/triliodmapi/etc/dmapi/dmapi.conf\"" - exit 1 -fi - -if [ ! -d /var/lib/config-data/puppet-generated/nova/etc/nova ]; then - echo "Script is expecting nova.conf to be available at /var/lib/config-data/puppet-generated/nova/etc/nova" -fi - -docker run -v /var/lib/config-data/puppet-generated/nova/etc/nova:/etc/nova:ro \ --v /var/lib/config-data/triliodmapi/etc/dmapi/:/etc/dmapi:ro -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin \ --v /sbin:/sbin --network host --privileged=true \ --dt --name dmapi shyambiradar/trilio-dmapi:queens diff --git a/redhat-director-scripts/docker/trilio-datamover-api/start_datamover_api_tripleo_centos7 b/redhat-director-scripts/docker/trilio-datamover-api/start_datamover_api_tripleo_centos7 deleted file mode 100644 index 11fbfc3de..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/start_datamover_api_tripleo_centos7 +++ /dev/null @@ -1 +0,0 @@ -/usr/bin/python /usr/bin/dmapi-api \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover-api/start_datamover_api_tripleo_centos8 b/redhat-director-scripts/docker/trilio-datamover-api/start_datamover_api_tripleo_centos8 deleted file mode 100644 index 7dca421ee..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/start_datamover_api_tripleo_centos8 +++ /dev/null @@ -1 +0,0 @@ -/usr/bin/python3 /usr/bin/dmapi-api \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover-api/trilio.repo b/redhat-director-scripts/docker/trilio-datamover-api/trilio.repo deleted file mode 100644 index eaaa8b9a8..000000000 --- a/redhat-director-scripts/docker/trilio-datamover-api/trilio.repo +++ /dev/null @@ -1,5 +0,0 @@ -[triliovault-4-2] -name=triliovault-4-2 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliodata-dev-hotfix1-4-2/yum/ -gpgcheck=0 -enabled=1 \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile b/redhat-director-scripts/docker/trilio-datamover/Dockerfile deleted file mode 100644 index 5922bc101..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile +++ /dev/null @@ -1,55 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-nova-compute:16.0 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp16/openstack-nova-compute-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 16.0 nova-compute TrilioData Datamover" \ - description="Red Hat OpenStack Platform 16.0 nova-compute TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ - -RUN dnf clean all -RUN dnf config-manager --enable openstack-16-for-rhel-8-x86_64-rpms --enable rhel-8-for-x86_64-baseos-rpms -RUN yum install python3-tvault-contego puppet-triliovault python3-s3fuse-plugin -y -RUN dnf config-manager --disable openstack-16-for-rhel-8-x86_64-rpms --disable rhel-8-for-x86_64-baseos-rpms - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp13 b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp13 deleted file mode 100644 index a503fab58..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp13 +++ /dev/null @@ -1,61 +0,0 @@ -FROM registry.redhat.io/rhosp13/openstack-base:13.0 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-nova-compute-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 nova-compute TrilioData Datamover" \ - description="Red Hat OpenStack Platform 14.0 nova-compute TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum clean all -RUN yum-config-manager --enable rhel-7-server-openstack-13-rpms --enable rhel-7-server-rpms --enable rhel-7-server-extras-rpms --enable rhel-ha-for-rhel-7-server-rpms -RUN yum install python3 openstack-nova-common python-nova python2-novaclient python-pyudev fuse nfs-utils -y -RUN usermod -u 42436 nova && groupmod -g 42436 nova && usermod -aG disk,libvirt,kolla nova -RUN yum install tvault-contego puppet-triliovault python-s3fuse-plugin-cent7 qemu-img-rhev ceph-common libvirt-python python2-cinderclient -y -RUN python3 -m venv /home/tvault/.s3venv -RUN /home/tvault/.s3venv/bin/pip install --upgrade pip -RUN /home/tvault/.s3venv/bin/pip install --extra-index-url "https://pypi.fury.io/triliodata-stable-4-2/" s3fuse --upgrade --no-cache-dir -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical -RUN yum-config-manager --disable rhel-7-server-openstack-13-rpms --disable rhel-7-server-rpms --disable rhel-7-server-extras-rpms --disable rhel-ha-for-rhel-7-server-rpms - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN chown root:nova /usr/share/nova/nova-dist.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp14 b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp14 deleted file mode 100644 index 03249b046..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp14 +++ /dev/null @@ -1,51 +0,0 @@ -FROM registry.redhat.io/rhosp14/openstack-nova-compute -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-nova-compute-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 nova-compute TrilioData Datamover" \ - description="Red Hat OpenStack Platform 14.0 nova-compute TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-contego puppet-triliovault -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp15 b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp15 deleted file mode 100644 index d018bc94d..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp15 +++ /dev/null @@ -1,51 +0,0 @@ -FROM registry.redhat.io/rhosp15-rhel8/openstack-nova-compute -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-nova-compute-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 nova-compute TrilioData Datamover" \ - description="Red Hat OpenStack Platform 14.0 nova-compute TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install python3-tvault-contego puppet-triliovault -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16 b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16 deleted file mode 100644 index 1f8242b6e..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16 +++ /dev/null @@ -1,58 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-nova-compute:16.0 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp16/openstack-nova-compute-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 16.0 nova-compute TrilioData Datamover" \ - description="Red Hat OpenStack Platform 16.0 nova-compute TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ - -RUN dnf clean all -RUN dnf config-manager --enable openstack-16-for-rhel-8-x86_64-rpms --enable rhel-8-for-x86_64-baseos-rpms -RUN dnf install python3-tvault-contego puppet-triliovault python3-s3fuse-plugin -y -RUN yum -y --skip-broken --nobest update-minimal --security --sec-severity=Important --sec-severity=Critical -RUN dnf config-manager --disable openstack-16-for-rhel-8-x86_64-rpms --disable rhel-8-for-x86_64-baseos-rpms - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs /opt/tvault/ -ADD start_tvault_object_store_rhel8 /opt/tvault/start_tvault_object_store -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers-rhel8 /etc/sudoers.d/nova-sudoers -RUN chown root:root /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16.1 b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16.1 deleted file mode 100644 index b7b42334c..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16.1 +++ /dev/null @@ -1,63 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-base:16.1 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="trilio/openstack-nova-compute-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="Red Hat OpenStack Platform 16.1 nova-compute TrilioData Datamover" \ - description="Red Hat OpenStack Platform 16.1 nova-compute TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ - -RUN dnf clean all -RUN dnf config-manager --enable openstack-16.1-for-rhel-8-x86_64-rpms --enable rhel-8-for-x86_64-baseos-rpms --enable advanced-virt-for-rhel-8-x86_64-rpms --enable rhceph-4-tools-for-rhel-8-x86_64-rpms --enable fast-datapath-for-rhel-8-x86_64-rpms -RUN dnf install openstack-nova-common python3-nova python3-novaclient udev fuse -y -RUN usermod -u 42436 nova && groupmod -g 42436 nova && usermod -aG disk,libvirt,kolla nova -RUN dnf install python3-tvault-contego puppet-triliovault python3-s3fuse-plugin qemu-img ceph-common python3-libvirt-6.0.0-1.module+el8.3.0+6423+e4cb6418 python3-cinderclient qemu-kvm-block-rbd -y -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical --exclude=python3-libvirt -RUN dnf config-manager --disable openstack-16.1-for-rhel-8-x86_64-rpms --disable rhel-8-for-x86_64-baseos-rpms --disable advanced-virt-for-rhel-8-x86_64-rpms --disable rhceph-4-tools-for-rhel-8-x86_64-rpms --disable fast-datapath-for-rhel-8-x86_64-rpms - - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs /opt/tvault/ -RUN sed -i '0,/^/s//sudo \/usr\/sbin\/modprobe nbd nbds_max=128\n\n/' /opt/tvault/start_datamover_nfs -ADD start_tvault_object_store_rhel8 /opt/tvault/start_tvault_object_store -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers-rhel8 /etc/sudoers.d/nova-sudoers -RUN chown root:root /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN chown root:nova /usr/share/nova/nova-dist.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16.2 b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16.2 deleted file mode 100644 index 8ed2cb545..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_rhosp16.2 +++ /dev/null @@ -1,62 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-base:16.2 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="trilio/openstack-nova-compute-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="Red Hat OpenStack Platform 16.2 nova-compute TrilioData Datamover" \ - description="Red Hat OpenStack Platform 16.2 nova-compute TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ - -RUN dnf clean all -RUN dnf config-manager --enable openstack-16.2-for-rhel-8-x86_64-rpms --enable rhel-8-for-x86_64-baseos-rpms --enable advanced-virt-for-rhel-8-x86_64-rpms --enable rhceph-4-tools-for-rhel-8-x86_64-rpms --enable fast-datapath-for-rhel-8-x86_64-rpms -RUN dnf install openstack-nova-common python3-nova python3-novaclient udev fuse -y -RUN usermod -u 42436 nova && groupmod -g 42436 nova && usermod -aG disk,libvirt,kolla nova -RUN dnf install python3-tvault-contego puppet-triliovault python3-s3fuse-plugin qemu-img ceph-common python3-libvirt-7.0.0-1.module+el8.4.0+9469+2eaf72bc python3-cinderclient qemu-kvm-block-rbd -y -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical --exclude=python3-libvirt -RUN dnf config-manager --disable openstack-16.2-for-rhel-8-x86_64-rpms --disable rhel-8-for-x86_64-baseos-rpms --disable advanced-virt-for-rhel-8-x86_64-rpms --disable rhceph-4-tools-for-rhel-8-x86_64-rpms --disable fast-datapath-for-rhel-8-x86_64-rpms - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 /opt/tvault/ -ADD start_tvault_object_store_python3 /opt/tvault/start_tvault_object_store -ADD start_datamover_nfs_python3 /opt/tvault/start_datamover_nfs -RUN sed -i '0,/^/s//sudo \/usr\/sbin\/modprobe nbd nbds_max=128\n\n/' /opt/tvault/start_datamover_nfs -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers-rhel8 /etc/sudoers.d/nova-sudoers -RUN chown root:root /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN chown root:nova /usr/share/nova/nova-dist.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_train_centos7 b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_train_centos7 deleted file mode 100644 index e7a496ba7..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_train_centos7 +++ /dev/null @@ -1,59 +0,0 @@ -FROM docker.io/tripleotrain/centos-binary-nova-compute:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/centos-binary-nova-compute-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TripleO Train nova-compute plugin TrilioData Datamover" \ - description="TripleO Train nova-compute plugin TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ - -RUN yum clean all -RUN yum install python3 -y -RUN yum install tvault-contego puppet-triliovault python-s3fuse-plugin-cent7 -y -RUN python3 -m venv /home/tvault/.s3venv -RUN /home/tvault/.s3venv/bin/pip install --upgrade pip -RUN /home/tvault/.s3venv/bin/pip install --extra-index-url "https://pypi.fury.io/triliodata-stable-4-2/" s3fuse --upgrade --no-cache-dir - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs /opt/tvault/ -ADD start_tvault_object_store /opt/tvault/start_tvault_object_store -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -RUN chown root:root /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_train_centos8 b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_train_centos8 deleted file mode 100644 index 95f665abd..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_train_centos8 +++ /dev/null @@ -1,59 +0,0 @@ -FROM docker.io/tripleotraincentos8/centos-binary-nova-compute:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/centos-binary-nova-compute-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TripleO Train nova-compute plugin TrilioData Datamover" \ - description="TripleO Train nova-compute plugin TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -RUN dnf clean all -ADD trilio.repo delorean-component-tripleo.repo /etc/yum.repos.d/ -RUN dnf install -y python3-tripleo-repos -RUN tripleo-repos -b train current && tripleo-repos -b train current ceph -RUN sed -i 's#baseurl.*#baseurl=http://mirror.centos.org/centos-8/8/storage/x86_64/ceph-nautilus/#g' /etc/yum.repos.d/tripleo-centos-ceph-nautilus.repo -RUN dnf install python3-tvault-contego puppet-triliovault python3-s3fuse-plugin -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 /opt/tvault/ -ADD start_tvault_object_store_tripleo_centos8 /opt/tvault/start_tvault_object_store -ADD start_datamover_nfs_tripleo_centos8 /opt/tvault/start_datamover_nfs -RUN sed -i '0,/^/s//sudo \/usr\/sbin\/modprobe nbd nbds_max=128\n\n/' /opt/tvault/start_datamover_nfs -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers-rhel8 /etc/sudoers.d/nova-sudoers -RUN chown root:root /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN dnf clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_wallaby_centos8s b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_wallaby_centos8s deleted file mode 100644 index 9ea6cf0ad..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleo_wallaby_centos8s +++ /dev/null @@ -1,62 +0,0 @@ -FROM docker.io/tripleowallaby/openstack-nova-compute:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/openstack-nova-compute-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TripleO Wallaby nova-compute plugin TrilioData Datamover" \ - description="TripleO Wallaby nova-compute plugin TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -RUN dnf clean all -ADD trilio.repo delorean-component-tripleo.repo /etc/yum.repos.d/ -ADD centos-gpg-keys-8-4.el8.noarch.rpm centos-stream-repos-8-4.el8.noarch.rpm /root/ -RUN rpm -ivh /root/centos-stream-repos-8-4.el8.noarch.rpm /root/centos-gpg-keys-8-4.el8.noarch.rpm -RUN rm -f centos-gpg-keys-8-4.el8.noarch.rpm centos-gpg-keys-8-4.el8.noarch.rpm -RUN dnf install -y python3-tripleo-repos -RUN tripleo-repos -b wallaby current ceph - -RUN dnf install python3-tvault-contego puppet-triliovault python3-s3fuse-plugin -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 /opt/tvault/ -ADD start_tvault_object_store_tripleo_centos8 /opt/tvault/start_tvault_object_store -ADD start_datamover_nfs_tripleo_centos8 /opt/tvault/start_datamover_nfs -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store -RUN sed -i '0,/^/s//sudo \/usr\/sbin\/modprobe nbd nbds_max=128\n\n/' /opt/tvault/start_datamover_nfs - -##Copy conf files -ADD nova-sudoers-rhel8 /etc/sudoers.d/nova-sudoers -RUN chown root:root /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN dnf clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleorocky b/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleorocky deleted file mode 100644 index 47fc42b7b..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/Dockerfile_tripleorocky +++ /dev/null @@ -1,52 +0,0 @@ -FROM docker.io/tripleorocky/centos-binary-nova-compute:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="triliorocky/openstack-nova-compute-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="TripleO OpenStack Platform Rocky nova-compute TrilioData Datamover" \ - description="TripleO OpenStack Platform Rocky nova-compute TrilioData Datamover" - -# switch to root and install a custom RPM, etc. -USER root - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum-config-manager --save --setopt=delorean.skip_if_unavailable=true -RUN yum install tvault-contego puppet-triliovault -y - -#Copy executable files -RUN mkdir -p /opt/tvault/ -ADD start_datamover_s3 start_datamover_nfs start_tvault_object_store /opt/tvault/ -RUN chown -R nova:nova /opt/tvault/ -RUN chmod 755 /opt/tvault/start_datamover_s3 /opt/tvault/start_datamover_nfs /opt/tvault/start_tvault_object_store - -##Copy conf files -ADD nova-sudoers /etc/sudoers.d/nova-sudoers -ADD trilio.filters /usr/share/nova/rootwrap/trilio.filters -RUN usermod -aG disk nova -ADD tvault-contego.conf /etc/tvault-contego/tvault-contego.conf -RUN chown nova:nova /etc/tvault-contego/tvault-contego.conf -RUN mkdir -p /var/triliovault-mounts -RUN chown nova:nova /var/triliovault-mounts -RUN mkdir -p /var/triliovault -RUN chmod 777 /var/triliovault-mounts -RUN chown nova:nova /var/triliovault -RUN chmod 777 /var/triliovault -RUN mkdir -p /var/log/trilio-datamover -RUN chown nova:nova /var/log/trilio-datamover -ADD log-rotate-conf /etc/logrotate.d/tvault-contego - -##Clean subscription -RUN yum clean all -RUN rm -f /etc/yum.repos.d/trilio.repo - -##Add license -RUN mkdir /licenses -COPY licensing.txt /licenses - - -##Become nova user for further operations -USER nova diff --git a/redhat-director-scripts/docker/trilio-datamover/README.md b/redhat-director-scripts/docker/trilio-datamover/README.md deleted file mode 100644 index 3e8c9dc34..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/README.md +++ /dev/null @@ -1,42 +0,0 @@ -## Assumptions -This container is only designed for and tested on Redhat OpenStack Platform 13. - -## Pre-requisites -1. Redhat OpenStack Platform 13 setup deployed with container approach -2. To build container you will need redhat subscription with OpenStack Platform suite - -## Command to build container -``` -git clone -cd /path/to/redhat-director-scripts/docker/trilio-datamover/ -docker build \ ---build-arg redhat_username= --build-arg redhat_password= \ ---build-arg redhat_pool_id= -t shyambiradar/trilio-datamover:queens . -``` - -## Command to run container - -If you are running this container on non RHOSP setup, create /var/log/containers/nova directory on node where you want to run this container. - -##Step1: -Create tvault-contego.conf with all parameters(backup target) at location "/var/lib/config-data/triliodm/etc/tvault-contego/tvault-contego.conf" -Use puppet for that:(use puppet/trilio) -puppet agent --test --tags dmconfig - -#### For NFS as backup target: -``` -docker run -v /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova:/etc/nova:ro \ --v /var/run/libvirt/:/var/run/libvirt/ -v /var/lib/config-data/triliodm/etc/tvault-contego:/etc/tvault-contego:ro \ --v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin \ --v /sbin:/sbin --network host --privileged=true \ --dt --name dm shyambiradar/trilio-datamover:queens -``` -#### For Amazon S3 as backup target: -``` -docker run -v /etc/nova:/etc/nova -v /var/run/libvirt/:/var/run/libvirt/ -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin -v /sbin:/sbin --network host --privileged=true -it --name debug shyambiradar/trilio-datamover:queens amazon_s3 -``` -#### Redhat Ceph S3 as backup target -``` -docker run -v /etc/nova:/etc/nova -v /var/run/libvirt/:/var/run/libvirt/ -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin -v /sbin:/sbin --network host --privileged=true -it --name debug shyambiradar/trilio-datamover:queens ceph_s3 - -``` diff --git a/redhat-director-scripts/docker/trilio-datamover/build_container.sh b/redhat-director-scripts/docker/trilio-datamover/build_container.sh deleted file mode 100755 index a9b652a62..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/build_container.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -set -e - -if [ $# -lt 2 ];then - echo "Script takes exacyly 5 arguments" - echo -e "./build_container.sh " - exit 1 -fi - -name=$1 -tag=$2 -docker build --no-cache -t $name:$tag . -docker push $name:$tag diff --git a/redhat-director-scripts/docker/trilio-datamover/delorean-component-tripleo.repo b/redhat-director-scripts/docker/trilio-datamover/delorean-component-tripleo.repo deleted file mode 100644 index 34acbf0fd..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/delorean-component-tripleo.repo +++ /dev/null @@ -1,6 +0,0 @@ -[delorean-component-tripleo] -name=delorean-puppet-apache-e44f1001e4b822767fced91afe7e216aa1b647a0 -baseurl=https://trunk.rdoproject.org/centos8/component/tripleo/e4/4f/e44f1001e4b822767fced91afe7e216aa1b647a0_642db7af -enabled=1 -gpgcheck=0 -priority=1 \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover/licensing.txt b/redhat-director-scripts/docker/trilio-datamover/licensing.txt deleted file mode 100644 index a87288e84..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/licensing.txt +++ /dev/null @@ -1,10 +0,0 @@ -LicenseID TVAULT-59508796-8e7f-11e7-9a79- -Description TrilioVault License from TrilioData, Inc -CreationDate 2017-08-31 -LicenseEdition ENTERPRISE -LicenseTypeName EULA -Organisation Luxoft -LicenseExpiryDate 2020-05-27 -Licensed For 1 GB Backup Capacity -Evaluation False -License Key AAABUA0ODAoPeNp9Uk2PgjAQvfdXNNnr diff --git a/redhat-director-scripts/docker/trilio-datamover/log-rotate-conf b/redhat-director-scripts/docker/trilio-datamover/log-rotate-conf deleted file mode 100644 index 66c8366ab..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/log-rotate-conf +++ /dev/null @@ -1,9 +0,0 @@ -/var/log/nova/tvault-contego.log { -daily -missingok -notifempty -copytruncate -size=25M -rotate 3 -compress -} diff --git a/redhat-director-scripts/docker/trilio-datamover/nova-sudoers b/redhat-director-scripts/docker/trilio-datamover/nova-sudoers deleted file mode 100644 index 46a5894ec..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/nova-sudoers +++ /dev/null @@ -1,2 +0,0 @@ -nova ALL = (root) NOPASSWD: /usr/bin/privsep-helper * -nova ALL = (root) NOPASSWD: /usr/sbin/modprobe * diff --git a/redhat-director-scripts/docker/trilio-datamover/nova-sudoers-rhel8 b/redhat-director-scripts/docker/trilio-datamover/nova-sudoers-rhel8 deleted file mode 100644 index 46a5894ec..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/nova-sudoers-rhel8 +++ /dev/null @@ -1,2 +0,0 @@ -nova ALL = (root) NOPASSWD: /usr/bin/privsep-helper * -nova ALL = (root) NOPASSWD: /usr/sbin/modprobe * diff --git a/redhat-director-scripts/docker/trilio-datamover/run_container.sh b/redhat-director-scripts/docker/trilio-datamover/run_container.sh deleted file mode 100755 index 27f1daee4..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/run_container.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash -x - -##Before running this scripts create conteo conf file in directory "/var/lib/config-data/triliodm/etc/tvault-contego" - -if [ ! -f /var/lib/config-data/triliodm/etc/tvault-contego/tvault-contego.conf ]; then - echo "Before running this script, create tvault-contego.conf file in directory:\"/var/lib/config-data/triliodm/etc/tvault-contego\"" - exit 1 -fi - -docker run -v /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova:/etc/nova:ro \ --v /var/run/libvirt/:/var/run/libvirt/ -v /var/lib/config-data/triliodm/etc/tvault-contego:/etc/tvault-contego:ro -v /usr/sbin:/usr/sbin -v /usr/bin:/usr/bin -v /bin:/bin \ --v /sbin:/sbin --network host --privileged=true \ --dt --name dm shyambiradar/trilio-datamover:queens diff --git a/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs b/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs deleted file mode 100644 index 35bf64e90..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs +++ /dev/null @@ -1,3 +0,0 @@ -/usr/bin/python /usr/bin/tvault-contego \ ---config-file=/usr/share/nova/nova-dist.conf --config-file=/etc/nova/nova.conf \ ---config-file=/etc/tvault-contego/tvault-contego.conf diff --git a/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs_python3 b/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs_python3 deleted file mode 100644 index 1560b3ffb..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs_python3 +++ /dev/null @@ -1,3 +0,0 @@ -/usr/bin/python3 /usr/bin/tvault-contego \ ---config-file=/usr/share/nova/nova-dist.conf --config-file=/etc/nova/nova.conf \ ---config-file=/etc/tvault-contego/tvault-contego.conf \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs_tripleo_centos8 b/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs_tripleo_centos8 deleted file mode 100644 index 1560b3ffb..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/start_datamover_nfs_tripleo_centos8 +++ /dev/null @@ -1,3 +0,0 @@ -/usr/bin/python3 /usr/bin/tvault-contego \ ---config-file=/usr/share/nova/nova-dist.conf --config-file=/etc/nova/nova.conf \ ---config-file=/etc/tvault-contego/tvault-contego.conf \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover/start_datamover_s3 b/redhat-director-scripts/docker/trilio-datamover/start_datamover_s3 deleted file mode 100644 index c5347e87c..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/start_datamover_s3 +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -# Start the first process -/opt/tvault/start_tvault_object_store & -status=$? -if [ $status -ne 0 ]; then - echo "Failed to start tvault-object-store service: $status" - exit $status -fi - -# Start the second process -/opt/tvault/start_datamover_nfs & -status=$? -if [ $status -ne 0 ]; then - echo "Failed to start tvault contego service: $status" - exit $status -fi - -# Naive check runs checks once a minute to see if either of the processes exited. -# This illustrates part of the heavy lifting you need to do if you want to run -# more than one service in a container. The container exits with an error -# if it detects that either of the processes has exited. -# Otherwise it loops forever, waking up every 60 seconds - -while sleep 60; do - ps aux | grep contego | grep -q -v grep - PROCESS_1_STATUS=$? - ps aux | grep vaultfuse | grep -q -v grep - PROCESS_2_STATUS=$? - # If the greps above find anything, they exit with 0 status - # If they are not both 0, then something is wrong - if [ $PROCESS_1_STATUS -ne 0 -o $PROCESS_2_STATUS -ne 0 ]; then - echo "One of the processes has already exited." - exit 1 - fi -done diff --git a/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store b/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store deleted file mode 100644 index 159126805..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store +++ /dev/null @@ -1,3 +0,0 @@ -/home/tvault/.s3venv/bin/python3 \ -/home/tvault/.s3venv/bin/s3vaultfuse.py \ ---config-file=/etc/tvault-contego/tvault-contego.conf diff --git a/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_python3 b/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_python3 deleted file mode 100644 index 19c684115..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_python3 +++ /dev/null @@ -1,3 +0,0 @@ -/usr/bin/python3 \ -/usr/bin/s3vaultfuse.py \ ---config-file=/etc/tvault-contego/tvault-contego.conf \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_rhel8 b/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_rhel8 deleted file mode 100644 index b2089bc68..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_rhel8 +++ /dev/null @@ -1,3 +0,0 @@ -/usr/bin/python \ -/usr/bin/s3vaultfuse.py \ ---config-file=/etc/tvault-contego/tvault-contego.conf diff --git a/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_tripleo_centos8 b/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_tripleo_centos8 deleted file mode 100644 index 19c684115..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/start_tvault_object_store_tripleo_centos8 +++ /dev/null @@ -1,3 +0,0 @@ -/usr/bin/python3 \ -/usr/bin/s3vaultfuse.py \ ---config-file=/etc/tvault-contego/tvault-contego.conf \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover/trilio.filters b/redhat-director-scripts/docker/trilio-datamover/trilio.filters deleted file mode 100644 index c2780cc64..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/trilio.filters +++ /dev/null @@ -1,10 +0,0 @@ -[Filters] -# mount and unmout filter -mount: CommandFilter, mount, root -umount: CommandFilter, umount, root -rescan-scsi-bus.sh: CommandFilter, /usr/bin/rescan-scsi-bus.sh, root -multipath: CommandFilter, multipath, root -qemu-img: CommandFilter, qemu-img, root -qemu-nbd: CommandFilter, qemu-nbd, root -rbd: CommandFilter, rbd, root -multipathd: CommandFilter, multipathd, root diff --git a/redhat-director-scripts/docker/trilio-datamover/trilio.repo b/redhat-director-scripts/docker/trilio-datamover/trilio.repo deleted file mode 100644 index eaaa8b9a8..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/trilio.repo +++ /dev/null @@ -1,5 +0,0 @@ -[triliovault-4-2] -name=triliovault-4-2 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliodata-dev-hotfix1-4-2/yum/ -gpgcheck=0 -enabled=1 \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-datamover/tvault-contego.conf b/redhat-director-scripts/docker/trilio-datamover/tvault-contego.conf deleted file mode 100644 index 262318b4f..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/tvault-contego.conf +++ /dev/null @@ -1,23 +0,0 @@ -[DEFAULT] -#vault_storage_type = - -vault_data_directory_old = /var/triliovault -vault_data_directory = /var/triliovault-mounts -log_file = /var/log/nova/tvault-contego.log -debug = False -verbose = True -max_uploads_pending = 3 -max_commit_pending = 3 - -########For backup target type 's3' -#vault_s3_auth_version = DEFAULT -#vault_s3_access_key_id = -#vault_s3_secret_access_key = -#vault_s3_region_name = -#vault_s3_bucket = -#vault_s3_endpoint_url = -#vault_s3_ssl = - -########For backup target type 'nfs' -#vault_storage_nfs_export = -#vault_storage_nfs_options = diff --git a/redhat-director-scripts/docker/trilio-datamover/tvault-contego.service b/redhat-director-scripts/docker/trilio-datamover/tvault-contego.service deleted file mode 100644 index 33981f4e3..000000000 --- a/redhat-director-scripts/docker/trilio-datamover/tvault-contego.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Tvault contego -After=openstack-nova-compute.service -StartLimitIntervalSec=120 -StartLimitInterval=120 -StartLimitBurst=3 - -[Service] -User=nova -Group=nova -Type=simple -ExecStart=/home/tvault/.virtenv/bin/python /home/tvault/.virtenv/bin/tvault-contego --config-file=/usr/share/nova/nova-dist.conf --config-file=/etc/nova/nova.conf --config-file=/etc/tvault-contego/tvault-contego.conf -TimeoutStopSec=20 -KillMode=process -Restart=on-failure -[Install] -WantedBy=multi-user.target diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile deleted file mode 100644 index 9a4a0ba45..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile +++ /dev/null @@ -1,23 +0,0 @@ -FROM registry.access.redhat.com/rhosp13/openstack-horizon -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" \ - description="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-horizon-plugin python-workloadmgrclient -y -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp13 b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp13 deleted file mode 100644 index 330767d5a..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp13 +++ /dev/null @@ -1,28 +0,0 @@ -FROM registry.access.redhat.com/rhosp13/openstack-horizon -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" \ - description="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-horizon-plugin workloadmgrclient -y -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/share/openstack-dashboard/manage.py compress --force - - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp14 b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp14 deleted file mode 100644 index 4020f7b48..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp14 +++ /dev/null @@ -1,23 +0,0 @@ -FROM registry.redhat.io/rhosp14/openstack-horizon -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp14/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" \ - description="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-horizon-plugin workloadmgrclient -y -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp15 b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp15 deleted file mode 100644 index 558ad607e..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp15 +++ /dev/null @@ -1,23 +0,0 @@ -FROM registry.redhat.io/rhosp15-rhel8/openstack-horizon -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp13/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" \ - description="Red Hat OpenStack Platform 14.0 horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install python3-tvault-horizon-plugin python3-workloadmgrclient -y -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16 b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16 deleted file mode 100644 index de4b5a368..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16 +++ /dev/null @@ -1,26 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-horizon:16.0 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp16/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="Red Hat OpenStack Platform 16.0 horizon TrilioData TrilioVault Horizon Plugin" \ - description="Red Hat OpenStack Platform 16.0 horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf install python3-tvault-horizon-plugin-el8 -y -RUN yum -y --skip-broken --nobest update-minimal --security --sec-severity=Important --sec-severity=Critical -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/share/openstack-dashboard/manage.py compress --force - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16.1 b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16.1 deleted file mode 100644 index a73548ba9..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16.1 +++ /dev/null @@ -1,26 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-horizon:16.1 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="trilio/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="Red Hat OpenStack Platform 16.1 horizon TrilioData TrilioVault Horizon Plugin" \ - description="Red Hat OpenStack Platform 16.1 horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf install python3-tvault-horizon-plugin-el8 -y -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/share/openstack-dashboard/manage.py compress --force - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16.2 b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16.2 deleted file mode 100644 index a16e5ac1c..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_rhosp16.2 +++ /dev/null @@ -1,26 +0,0 @@ -FROM registry.redhat.io/rhosp-rhel8/openstack-horizon:16.2 -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="trilio/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="Red Hat OpenStack Platform 16.2 horizon TrilioData TrilioVault Horizon Plugin" \ - description="Red Hat OpenStack Platform 16.2 horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN dnf install python3-tvault-horizon-plugin-el8 -y -RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/share/openstack-dashboard/manage.py compress --force - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_train_centos7 b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_train_centos7 deleted file mode 100644 index 64cf78977..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_train_centos7 +++ /dev/null @@ -1,28 +0,0 @@ -FROM docker.io/tripleotrain/centos-binary-horizon:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/centos-binary-nova-compute-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TripleO Train Horizon plugin TrilioVault Horizon Plugin" \ - description="TripleO Train Horizon plugin TrilioVault Horizon Plugin" - -##Install datamover packages -RUN yum clean all -ADD trilio.repo /etc/yum.repos.d/ -RUN yum install tvault-horizon-plugin workloadmgrclient -y -RUN rm /etc/yum.repos.d/trilio.repo -RUN yum clean all - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_train_centos8 b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_train_centos8 deleted file mode 100644 index fcf9628ae..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_train_centos8 +++ /dev/null @@ -1,31 +0,0 @@ -FROM docker.io/tripleotraincentos8/centos-binary-horizon:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/centos-binary-nova-compute-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.1.0" \ - release="4.1" \ - summary="TripleO Train Horizon plugin TrilioData Datamover" \ - description="TripleO Train Horizon plugin TrilioData Datamover" - -##Install datamover packages -RUN dnf clean all -ADD trilio.repo delorean-component-tripleo.repo /etc/yum.repos.d/ -RUN dnf install -y python3-tripleo-repos -RUN tripleo-repos -b train current && tripleo-repos -b train current ceph -RUN sed -i 's#baseurl.*#baseurl=http://mirror.centos.org/centos-8/8/storage/x86_64/ceph-nautilus/#g' /etc/yum.repos.d/tripleo-centos-ceph-nautilus.repo -RUN dnf install python3-tvault-horizon-plugin-el8 -y -RUN rm /etc/yum.repos.d/trilio.repo -RUN dnf clean all - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_wallaby_centos8s b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_wallaby_centos8s deleted file mode 100644 index 699eb40c7..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleo_wallaby_centos8s +++ /dev/null @@ -1,34 +0,0 @@ -FROM docker.io/tripleowallaby/openstack-horizon:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="tripleo/openstack-nova-compute-triliodata" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.2.0" \ - release="4.2" \ - summary="TripleO Wallaby Horizon plugin TrilioData Datamover" \ - description="TripleO Wallaby Horizon plugin TrilioData Datamover" - -##Install datamover packages -RUN dnf clean all -ADD trilio.repo delorean-component-tripleo.repo /etc/yum.repos.d/ -ADD centos-gpg-keys-8-4.el8.noarch.rpm centos-stream-repos-8-4.el8.noarch.rpm /root/ -RUN rpm -ivh /root/centos-stream-repos-8-4.el8.noarch.rpm /root/centos-gpg-keys-8-4.el8.noarch.rpm -RUN rm -f centos-gpg-keys-8-4.el8.noarch.rpm centos-gpg-keys-8-4.el8.noarch.rpm -RUN dnf install -y python3-tripleo-repos -RUN tripleo-repos -b wallaby current ceph - -RUN dnf install python3-tvault-horizon-plugin-el8 -y -RUN rm /etc/yum.repos.d/trilio.repo -RUN dnf clean all - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ -RUN /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput -RUN /usr/share/openstack-dashboard/manage.py compress --force - - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleorocky b/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleorocky deleted file mode 100644 index 2a7ea3a19..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/Dockerfile_tripleorocky +++ /dev/null @@ -1,24 +0,0 @@ -FROM docker.io/tripleorocky/centos-binary-horizon:current-tripleo-rdo -MAINTAINER TrilioData shyam.biradar@trilio.io - -LABEL name="rhosp14/openstack-horizon-triliodata-plugin" \ - maintainer="shyam.biradar@trilio.io" \ - vendor="TrilioData" \ - version="4.0.0" \ - release="4.0" \ - summary="TripleO OpenStack Platform Rocky horizon TrilioData TrilioVault Horizon Plugin" \ - description="TripleO OpenStack Platform Rocky horizon TrilioData TrilioVault Horizon Plugin" - -##Install datamover packages -ADD trilio.repo /etc/yum.repos.d/ -RUN yum-config-manager --save --setopt=delorean.skip_if_unavailable=true -RUN yum install tvault-horizon-plugin workloadmgrclient -y -RUN rm /etc/yum.repos.d/trilio.repo - -##Move necessary files -ADD usr/share/openstack-dashboard/openstack_dashboard/local/enabled/* /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/ -ADD usr/share/openstack-dashboard/openstack_dashboard/templatetags/* /usr/share/openstack-dashboard/openstack_dashboard/templatetags/ - -## Add license -RUN mkdir /licenses -COPY licensing.txt /licenses diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/build_container.sh b/redhat-director-scripts/docker/trilio-horizon-plugin/build_container.sh deleted file mode 100755 index b83cdb112..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/build_container.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash -x - -set -e - -if [ $# -ne 2 ];then - echo -e "Script takes exactly 2 arguments\n" - echo -e "./build_container.sh " - echo -e "./build_container.sh trilio/openstack-horizon-with-trilio-plugin queens" - exit 1 -fi - -name=$1 -tag=$2 - -docker build --no-cache -t $name:$tag . -docker push $name:$tag diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/delorean-component-tripleo.repo b/redhat-director-scripts/docker/trilio-horizon-plugin/delorean-component-tripleo.repo deleted file mode 100644 index 34acbf0fd..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/delorean-component-tripleo.repo +++ /dev/null @@ -1,6 +0,0 @@ -[delorean-component-tripleo] -name=delorean-puppet-apache-e44f1001e4b822767fced91afe7e216aa1b647a0 -baseurl=https://trunk.rdoproject.org/centos8/component/tripleo/e4/4f/e44f1001e4b822767fced91afe7e216aa1b647a0_642db7af -enabled=1 -gpgcheck=0 -priority=1 \ No newline at end of file diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/horizon_template_overrides.j2 b/redhat-director-scripts/docker/trilio-horizon-plugin/horizon_template_overrides.j2 deleted file mode 100644 index 6585d601b..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/horizon_template_overrides.j2 +++ /dev/null @@ -1,11 +0,0 @@ -{% extends parent_template %} - - -{% block horizon_header %} -RUN subscription-manager register --user= \ ---password= && subscription-manager attach --pool -{% endblock %} - - -# Horizon -{% set horizon_packages_append = ['tvault-horizon-plugin'] %} diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/kolla-build.conf b/redhat-director-scripts/docker/trilio-horizon-plugin/kolla-build.conf deleted file mode 100644 index d4a18b07e..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/kolla-build.conf +++ /dev/null @@ -1,9 +0,0 @@ -[DEFAULT] -base=rhel -type=binary -namespace=rhosp13 -registry=registry.access.redhat.com -tag=13.0-45 -template_override=horizon_template_overrides.j2 -rpm_setup_config=trilio.repo -push=False diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/kolla_build_container.sh b/redhat-director-scripts/docker/trilio-horizon-plugin/kolla_build_container.sh deleted file mode 100644 index c8b139c92..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/kolla_build_container.sh +++ /dev/null @@ -1,2 +0,0 @@ -#cp kolla-build.conf /etc/kolla/ -#python /home/stack/kolla/tools/build.py --template-override horizon_template_overrides.j2 horizon diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/licensing.txt b/redhat-director-scripts/docker/trilio-horizon-plugin/licensing.txt deleted file mode 100644 index a87288e84..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/licensing.txt +++ /dev/null @@ -1,10 +0,0 @@ -LicenseID TVAULT-59508796-8e7f-11e7-9a79- -Description TrilioVault License from TrilioData, Inc -CreationDate 2017-08-31 -LicenseEdition ENTERPRISE -LicenseTypeName EULA -Organisation Luxoft -LicenseExpiryDate 2020-05-27 -Licensed For 1 GB Backup Capacity -Evaluation False -License Key AAABUA0ODAoPeNp9Uk2PgjAQvfdXNNnr diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/trilio.repo b/redhat-director-scripts/docker/trilio-horizon-plugin/trilio.repo deleted file mode 100644 index fa6cf98ff..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/trilio.repo +++ /dev/null @@ -1,5 +0,0 @@ -[triliovault-4-2] -name=triliovault-4-2 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliodata-dev-hotfix1-4-2/yum/ -gpgcheck=0 -enabled=1 diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel.py b/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel.py deleted file mode 100644 index 83107de44..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel.py +++ /dev/null @@ -1,10 +0,0 @@ -# The slug of the panel to be added to HORIZON_CONFIG. Required. -PANEL = 'workloads_admin' -# The slug of the dashboard the PANEL associated with. Required. -PANEL_DASHBOARD = 'admin' -# The slug of the panel group the PANEL is associated with. -PANEL_GROUP = 'backups-admin' -# Python panel class of the PANEL to be added. -ADD_PANEL = ('dashboards.workloads_admin.panel.Workloads_admin') -ADD_INSTALLED_APPS = ['dashboards'] -DISABLED = False diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel_group.py b/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel_group.py deleted file mode 100644 index 9d8429742..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel_group.py +++ /dev/null @@ -1,8 +0,0 @@ -from django.utils.translation import ugettext_lazy as _ -# The slug of the panel group to be added to HORIZON_CONFIG. Required. -PANEL_GROUP = 'backups-admin' -# The display name of the PANEL_GROUP. Required. -PANEL_GROUP_NAME = _('Backups-Admin') -# The slug of the dashboard the PANEL_GROUP associated with. Required. -PANEL_GROUP_DASHBOARD = 'admin' -DISABLED = False diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel.py b/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel.py deleted file mode 100644 index 7c101db90..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel.py +++ /dev/null @@ -1,9 +0,0 @@ -# The slug of the panel to be added to HORIZON_CONFIG. Required. -PANEL = 'workloads' -# The slug of the dashboard the PANEL associated with. Required. -PANEL_DASHBOARD = 'project' -# The slug of the panel group the PANEL is associated with. -PANEL_GROUP = 'backups' -# Python panel class of the PANEL to be added. -ADD_PANEL = ('dashboards.workloads.panel.Workloads') -DISABLED = False diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel_group.py b/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel_group.py deleted file mode 100644 index ea77c0bcd..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel_group.py +++ /dev/null @@ -1,8 +0,0 @@ -from django.utils.translation import ugettext_lazy as _ -# The slug of the panel group to be added to HORIZON_CONFIG. Required. -PANEL_GROUP = 'backups' -# The display name of the PANEL_GROUP. Required. -PANEL_GROUP_NAME = _('Backups') -# The slug of the dashboard the PANEL_GROUP associated with. Required. -PANEL_GROUP_DASHBOARD = 'project' -DISABLED = False diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_settings_panel.py b/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_settings_panel.py deleted file mode 100644 index 2221e0a33..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_settings_panel.py +++ /dev/null @@ -1,9 +0,0 @@ -# The slug of the panel to be added to HORIZON_CONFIG. Required. -PANEL = 'settings' -# The slug of the dashboard the PANEL associated with. Required. -PANEL_DASHBOARD = 'project' -# The slug of the panel group the PANEL is associated with. -PANEL_GROUP = 'backups' -# Python panel class of the PANEL to be added. -ADD_PANEL = ('dashboards.settings.panel.Settings') -DISABLED = False diff --git a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/templatetags/tvault_filter.py b/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/templatetags/tvault_filter.py deleted file mode 100644 index 4f1707626..000000000 --- a/redhat-director-scripts/docker/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/templatetags/tvault_filter.py +++ /dev/null @@ -1,125 +0,0 @@ -from django import template -from openstack_dashboard import api -from openstack_dashboard import policy -from datetime import datetime -from django.template.defaultfilters import stringfilter -import pytz -from django.utils.translation import ugettext_lazy as _ -import logging - -register = template.Library() - -LOG = logging.getLogger(__name__) - -@register.filter(name='getusername') -def get_user_name(user_id, request): - user_name = user_id - if policy.check((("identity", "identity:get_user"),), request): - try: - user = api.keystone.user_get(request, user_id) - if user: - user_name = user.username - except Exception as ex: - LOG.exception(ex) - pass - else: - LOG.debug(_("Insufficient privilege level to view user information.")) - return user_name - -@register.filter(name='getprojectname') -def get_project_name(project_id, request): - project_name = project_id - try: - project_info = api.keystone.tenant_get(request, project_id, admin = True) - if project_info: - project_name = project_info.name - except Exception as ex: - LOG.exception(ex) - pass - return project_name - -def get_time_zone(request): - tz = 'UTC' - try: - tz = request._get_cookies()['django_timezone'] - except: - try: - tz = request.COOKIES['django_timezone'] - except Exception as ex: - LOG.exception(ex) - pass - - return tz - -def get_local_time(record_time, input_format, output_format, tz): - """ - Convert and return the date and time - from GMT to local time - """ - try: - if not record_time or record_time is None or record_time == '': - return '' - else: - if not input_format \ - or input_format == None \ - or input_format == '': - input_format = '%Y-%m-%dT%H:%M:%S.%f'; - if not output_format \ - or output_format == None \ - or output_format == '': - output_format = "%m/%d/%Y %I:%M:%S %p"; - - local_time = datetime.strptime( - record_time, input_format) - local_tz = pytz.timezone(tz) - from_zone = pytz.timezone('UTC') - local_time = local_time.replace(tzinfo=from_zone) - local_time = local_time.astimezone(local_tz) - local_time = datetime.strftime( - local_time, output_format) - return local_time - except Exception as ex: - LOG.exception(ex) - pass - return record_time - -@register.filter(name='gettime') -def get_time_for_audit(time_stamp, request): - display_time = time_stamp - try: - time_zone_of_ui = get_time_zone(request) - display_time = get_local_time(time_stamp, '%I:%M:%S.%f %p - %m/%d/%Y','%I:%M:%S %p - %m/%d/%Y', time_zone_of_ui) - except Exception as ex: - LOG.exception(ex) - pass - return display_time - -@register.filter(name='getsnapshotquantifier') -def display_time_quantifier(seconds): - intervals = ( - ('weeks', 604800), # 60 * 60 * 24 * 7 - ('days', 86400), # 60 * 60 * 24 - ('hours', 3600), # 60 * 60 - ('minutes', 60), - ('seconds', 1), - ) - - result = [] - granularity = 4 - for name, count in intervals: - value = seconds // count - if value: - seconds -= value * count - if value == 1: - name = name.rstrip('s') - result.append("{} {}".format(value, name)) - else: - # Add a blank if we're in the middle of other values - if len(result) > 0: - result.append(None) - return ', '.join([x for x in result[:granularity] if x is not None]) - -@register.filter(name='custom_split') -@stringfilter -def custom_split(value, key): - key=int(key) - return value.split('_')[key] diff --git a/redhat-director-scripts/rhosp16.1/environments/trilio_datamover_opt_volumes.yaml b/redhat-director-scripts/rhosp16.1/environments/trilio_datamover_opt_volumes.yaml new file mode 100644 index 000000000..2e0f96201 --- /dev/null +++ b/redhat-director-scripts/rhosp16.1/environments/trilio_datamover_opt_volumes.yaml @@ -0,0 +1,8 @@ +parameter_defaults: + ## User can specify list of extra volumes that he/she wants to mount on 'trilio_datamover' container. + TrilioDatamoverOptVolumes: + +# Example: +# TrilioDatamoverOptVolumes: +# - /opt/dir1:/opt/dir1 +# - /mnt/dir2:/var/dir2 diff --git a/redhat-director-scripts/rhosp16.1/environments/trilio_env.yaml b/redhat-director-scripts/rhosp16.1/environments/trilio_env.yaml index c030d6424..3fb914635 100644 --- a/redhat-director-scripts/rhosp16.1/environments/trilio_env.yaml +++ b/redhat-director-scripts/rhosp16.1/environments/trilio_env.yaml @@ -12,7 +12,7 @@ parameter_defaults: ExtraConfig: horizon::customization_module: 'dashboards.overrides' - ## Define network map for trilio datamover api service + ## Define network map for trilio datamover api service. ServiceNetMap: TrilioDatamoverApiNetwork: internal_api diff --git a/redhat-director-scripts/rhosp16.1/services/trilio-datamover.yaml b/redhat-director-scripts/rhosp16.1/services/trilio-datamover.yaml index 77ade00cc..2735fc0d7 100644 --- a/redhat-director-scripts/rhosp16.1/services/trilio-datamover.yaml +++ b/redhat-director-scripts/rhosp16.1/services/trilio-datamover.yaml @@ -111,6 +111,10 @@ parameters: default: [] description: list of optional vo type: comma_delimited_list + TrilioDatamoverOptVolumes: + default: [] + description: list of optional volumes to be mounted + type: comma_delimited_list TrilioDatamoverNfsMap: default: {} description: Mapping of datamover node -> NFS share. Typically set @@ -218,6 +222,7 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - {get_param: NovaComputeOptVolumes} + - {get_param: TrilioDatamoverOptVolumes} - - /var/lib/kolla/config_files/trilio_dm.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/nova_libvirt/:/var/lib/kolla/config_files/nova_libvirt:ro diff --git a/redhat-director-scripts/rhosp16.2/environments/trilio_datamover_opt_volumes.yaml b/redhat-director-scripts/rhosp16.2/environments/trilio_datamover_opt_volumes.yaml new file mode 100644 index 000000000..2e0f96201 --- /dev/null +++ b/redhat-director-scripts/rhosp16.2/environments/trilio_datamover_opt_volumes.yaml @@ -0,0 +1,8 @@ +parameter_defaults: + ## User can specify list of extra volumes that he/she wants to mount on 'trilio_datamover' container. + TrilioDatamoverOptVolumes: + +# Example: +# TrilioDatamoverOptVolumes: +# - /opt/dir1:/opt/dir1 +# - /mnt/dir2:/var/dir2 diff --git a/redhat-director-scripts/rhosp16.2/services/trilio-datamover-api.yaml b/redhat-director-scripts/rhosp16.2/services/trilio-datamover-api.yaml index 4ce5773e9..b59a057b5 100644 --- a/redhat-director-scripts/rhosp16.2/services/trilio-datamover-api.yaml +++ b/redhat-director-scripts/rhosp16.2/services/trilio-datamover-api.yaml @@ -131,7 +131,9 @@ outputs: dmapi: password: {get_param: TrilioDatamoverPassword} region: {get_param: KeystoneRegion} - service: 'datamover' + service: 'datamover' + TrilioVaultWLM: + service: 'workloads' config_settings: trilio::dmapi::dmapi_port: {get_param: DmApiPort} trilio::dmapi::dmapi_ssl_port: {get_param: DmApiSslPort} diff --git a/redhat-director-scripts/rhosp16.2/services/trilio-datamover.yaml b/redhat-director-scripts/rhosp16.2/services/trilio-datamover.yaml index 77ade00cc..2735fc0d7 100644 --- a/redhat-director-scripts/rhosp16.2/services/trilio-datamover.yaml +++ b/redhat-director-scripts/rhosp16.2/services/trilio-datamover.yaml @@ -111,6 +111,10 @@ parameters: default: [] description: list of optional vo type: comma_delimited_list + TrilioDatamoverOptVolumes: + default: [] + description: list of optional volumes to be mounted + type: comma_delimited_list TrilioDatamoverNfsMap: default: {} description: Mapping of datamover node -> NFS share. Typically set @@ -218,6 +222,7 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - {get_param: NovaComputeOptVolumes} + - {get_param: TrilioDatamoverOptVolumes} - - /var/lib/kolla/config_files/trilio_dm.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/nova_libvirt/:/var/lib/kolla/config_files/nova_libvirt:ro diff --git a/redhat-director-scripts/rhosp17.0/environments/endpoint_map.yaml b/redhat-director-scripts/rhosp17.0/environments/endpoint_map.yaml new file mode 100644 index 000000000..0c346a785 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/endpoint_map.yaml @@ -0,0 +1,11348 @@ +### DO NOT MODIFY THIS FILE +### This file is automatically generated from endpoint_data.yaml +### by the script build_endpoint_map.py + +heat_template_version: wallaby +description: A map of OpenStack endpoints. Since the endpoints are URLs, + we need to have brackets around IPv6 IP addresses. The inputs to these + parameters come from net_ip_uri_map, which will include these brackets + in IPv6 addresses. +parameters: + NetIpMap: + type: json + default: {} + description: The Net IP map + ServiceNetMap: + type: json + default: {} + description: The Service Net map + EndpointMap: + type: json + default: + AodhAdmin: + protocol: http + port: '8042' + host: IP_ADDRESS + AodhInternal: + protocol: http + port: '8042' + host: IP_ADDRESS + AodhPublic: + protocol: http + port: '8042' + host: IP_ADDRESS + BarbicanAdmin: + protocol: http + port: '9311' + host: IP_ADDRESS + BarbicanInternal: + protocol: http + port: '9311' + host: IP_ADDRESS + BarbicanPublic: + protocol: http + port: '9311' + host: IP_ADDRESS + CephDashboardInternal: + protocol: http + port: '8444' + host: IP_ADDRESS + CephGrafanaInternal: + protocol: http + port: '3100' + host: IP_ADDRESS + CephRgwAdmin: + protocol: http + port: '8080' + host: IP_ADDRESS + CephRgwInternal: + protocol: http + port: '8080' + host: IP_ADDRESS + CephRgwPublic: + protocol: http + port: '8080' + host: IP_ADDRESS + CinderAdmin: + protocol: http + port: '8776' + host: IP_ADDRESS + CinderInternal: + protocol: http + port: '8776' + host: IP_ADDRESS + CinderPublic: + protocol: http + port: '8776' + host: IP_ADDRESS + DesignateAdmin: + protocol: http + port: '9001' + host: IP_ADDRESS + DesignateInternal: + protocol: http + port: '9001' + host: IP_ADDRESS + DesignatePublic: + protocol: http + port: '9001' + host: IP_ADDRESS + DockerRegistryInternal: + protocol: http + port: '8787' + host: IP_ADDRESS + GaneshaInternal: + protocol: nfs + port: '2049' + host: IP_ADDRESS + GlanceAdmin: + protocol: http + port: '9292' + host: IP_ADDRESS + GlanceInternal: + protocol: http + port: '9292' + host: IP_ADDRESS + GlancePublic: + protocol: http + port: '9292' + host: IP_ADDRESS + GnocchiAdmin: + protocol: http + port: '8041' + host: IP_ADDRESS + GnocchiInternal: + protocol: http + port: '8041' + host: IP_ADDRESS + GnocchiPublic: + protocol: http + port: '8041' + host: IP_ADDRESS + HeatAdmin: + protocol: http + port: '8004' + host: IP_ADDRESS + HeatInternal: + protocol: http + port: '8004' + host: IP_ADDRESS + HeatPublic: + protocol: http + port: '8004' + host: IP_ADDRESS + HeatCfnAdmin: + protocol: http + port: '8000' + host: IP_ADDRESS + HeatCfnInternal: + protocol: http + port: '8000' + host: IP_ADDRESS + HeatCfnPublic: + protocol: http + port: '8000' + host: IP_ADDRESS + HorizonPublic: + protocol: http + port: '80' + host: IP_ADDRESS + IronicAdmin: + protocol: http + port: '6385' + host: IP_ADDRESS + IronicInternal: + protocol: http + port: '6385' + host: IP_ADDRESS + IronicPublic: + protocol: http + port: '6385' + host: IP_ADDRESS + IronicInspectorAdmin: + protocol: http + port: '5050' + host: IP_ADDRESS + IronicInspectorInternal: + protocol: http + port: '5050' + host: IP_ADDRESS + IronicInspectorPublic: + protocol: http + port: '5050' + host: IP_ADDRESS + KeystoneAdmin: + protocol: http + port: '35357' + host: IP_ADDRESS + KeystoneInternal: + protocol: http + port: '5000' + host: IP_ADDRESS + KeystonePublic: + protocol: http + port: '5000' + host: IP_ADDRESS + ManilaAdmin: + protocol: http + port: '8786' + host: IP_ADDRESS + ManilaInternal: + protocol: http + port: '8786' + host: IP_ADDRESS + ManilaPublic: + protocol: http + port: '8786' + host: IP_ADDRESS + MetricsQdrPublic: + protocol: amqp + port: '5666' + host: IP_ADDRESS + MysqlInternal: + protocol: mysql+pymysql + port: '3306' + host: IP_ADDRESS + NeutronAdmin: + protocol: http + port: '9696' + host: IP_ADDRESS + NeutronInternal: + protocol: http + port: '9696' + host: IP_ADDRESS + NeutronPublic: + protocol: http + port: '9696' + host: IP_ADDRESS + NovaAdmin: + protocol: http + port: '8774' + host: IP_ADDRESS + NovaInternal: + protocol: http + port: '8774' + host: IP_ADDRESS + NovaPublic: + protocol: http + port: '8774' + host: IP_ADDRESS + NovaMetadataInternal: + protocol: http + port: '8775' + host: IP_ADDRESS + NovaVNCProxyAdmin: + protocol: http + port: '6080' + host: IP_ADDRESS + NovaVNCProxyInternal: + protocol: http + port: '6080' + host: IP_ADDRESS + NovaVNCProxyPublic: + protocol: http + port: '6080' + host: IP_ADDRESS + NovajoinAdmin: + protocol: http + port: '9090' + host: IP_ADDRESS + NovajoinInternal: + protocol: http + port: '9090' + host: IP_ADDRESS + NovajoinPublic: + protocol: http + port: '9090' + host: IP_ADDRESS + OctaviaAdmin: + protocol: http + port: '9876' + host: IP_ADDRESS + OctaviaInternal: + protocol: http + port: '9876' + host: IP_ADDRESS + OctaviaPublic: + protocol: http + port: '9876' + host: IP_ADDRESS + PlacementAdmin: + protocol: http + port: '8778' + host: IP_ADDRESS + PlacementInternal: + protocol: http + port: '8778' + host: IP_ADDRESS + PlacementPublic: + protocol: http + port: '8778' + host: IP_ADDRESS + SwiftAdmin: + protocol: http + port: '8080' + host: IP_ADDRESS + SwiftInternal: + protocol: http + port: '8080' + host: IP_ADDRESS + SwiftPublic: + protocol: http + port: '8080' + host: IP_ADDRESS + TrilioDatamoverAdmin: + protocol: http + port: '8784' + host: IP_ADDRESS + TrilioDatamoverInternal: + protocol: http + port: '8784' + host: IP_ADDRESS + TrilioDatamoverPublic: + protocol: http + port: '8784' + host: IP_ADDRESS + description: Mapping of service endpoint -> protocol. Typically set + via parameter_defaults in the resource registry. + CloudEndpoints: + type: json + default: {} + description: A map containing the DNS names for the different endpoints + (external, internal_api, etc.) +outputs: + endpoint_map: + value: + AodhAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - AodhApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - AodhApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - AodhAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - AodhApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - AodhApiNetwork + port: + get_param: + - EndpointMap + - AodhAdmin + - port + protocol: + get_param: + - EndpointMap + - AodhAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - AodhAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - AodhApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - AodhApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - AodhAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - AodhAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - AodhApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - AodhApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - AodhAdmin + - port + AodhInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - AodhApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - AodhApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - AodhInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - AodhApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - AodhApiNetwork + port: + get_param: + - EndpointMap + - AodhInternal + - port + protocol: + get_param: + - EndpointMap + - AodhInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - AodhInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - AodhApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - AodhApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - AodhInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - AodhInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - AodhApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - AodhApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - AodhInternal + - port + AodhPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - AodhPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - AodhPublic + - port + protocol: + get_param: + - EndpointMap + - AodhPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - AodhPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - AodhPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - AodhPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - AodhPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - AodhPublic + - port + BarbicanAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - BarbicanApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + port: + get_param: + - EndpointMap + - BarbicanAdmin + - port + protocol: + get_param: + - EndpointMap + - BarbicanAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - BarbicanAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - BarbicanApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - BarbicanAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - BarbicanAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - BarbicanApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - BarbicanAdmin + - port + BarbicanInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - BarbicanApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + port: + get_param: + - EndpointMap + - BarbicanInternal + - port + protocol: + get_param: + - EndpointMap + - BarbicanInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - BarbicanInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - BarbicanApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - BarbicanInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - BarbicanInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - BarbicanApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - BarbicanApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - BarbicanInternal + - port + BarbicanPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - BarbicanPublic + - port + protocol: + get_param: + - EndpointMap + - BarbicanPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - BarbicanPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - BarbicanPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - BarbicanPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - BarbicanPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - BarbicanPublic + - port + CephDashboardInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - CephDashboardInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephDashboardNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephDashboardNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CephDashboardInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephDashboardNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CephDashboardNetwork + port: + get_param: + - EndpointMap + - CephDashboardInternal + - port + protocol: + get_param: + - EndpointMap + - CephDashboardInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - CephDashboardInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephDashboardInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephDashboardNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephDashboardNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephDashboardInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CephDashboardInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephDashboardInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephDashboardNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephDashboardNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephDashboardInternal + - port + CephGrafanaInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - CephGrafanaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephGrafanaNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephGrafanaNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CephGrafanaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephGrafanaNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CephGrafanaNetwork + port: + get_param: + - EndpointMap + - CephGrafanaInternal + - port + protocol: + get_param: + - EndpointMap + - CephGrafanaInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - CephGrafanaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephGrafanaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephGrafanaNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephGrafanaNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephGrafanaInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CephGrafanaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephGrafanaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephGrafanaNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephGrafanaNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephGrafanaInternal + - port + CephRgwAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephRgwNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephRgwNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephRgwNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CephRgwNetwork + port: + get_param: + - EndpointMap + - CephRgwAdmin + - port + protocol: + get_param: + - EndpointMap + - CephRgwAdmin + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CephRgwAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephRgwNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephRgwNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephRgwAdmin + - port + path: /swift/v1/AUTH_ + - '%(project_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CephRgwAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephRgwNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephRgwNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephRgwAdmin + - port + CephRgwInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephRgwNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephRgwNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephRgwNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CephRgwNetwork + port: + get_param: + - EndpointMap + - CephRgwInternal + - port + protocol: + get_param: + - EndpointMap + - CephRgwInternal + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CephRgwInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephRgwNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephRgwNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephRgwInternal + - port + path: /swift/v1/AUTH_ + - '%(project_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CephRgwInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CephRgwNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CephRgwNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephRgwInternal + - port + CephRgwPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - CephRgwPublic + - port + protocol: + get_param: + - EndpointMap + - CephRgwPublic + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CephRgwPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephRgwPublic + - port + path: /swift/v1/AUTH_ + - '%(project_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CephRgwPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CephRgwPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CephRgwPublic + - port + CinderAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CinderApiNetwork + port: + get_param: + - EndpointMap + - CinderAdmin + - port + protocol: + get_param: + - EndpointMap + - CinderAdmin + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderAdmin + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderAdmin + - port + CinderInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CinderApiNetwork + port: + get_param: + - EndpointMap + - CinderInternal + - port + protocol: + get_param: + - EndpointMap + - CinderInternal + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderInternal + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderInternal + - port + CinderPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - CinderPublic + - port + protocol: + get_param: + - EndpointMap + - CinderPublic + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderPublic + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderPublic + - port + CinderV2Admin: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CinderApiNetwork + port: + get_param: + - EndpointMap + - CinderAdmin + - port + protocol: + get_param: + - EndpointMap + - CinderAdmin + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderAdmin + - port + path: /v2/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderAdmin + - port + CinderV2Internal: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CinderApiNetwork + port: + get_param: + - EndpointMap + - CinderInternal + - port + protocol: + get_param: + - EndpointMap + - CinderInternal + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderInternal + - port + path: /v2/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderInternal + - port + CinderV2Public: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - CinderPublic + - port + protocol: + get_param: + - EndpointMap + - CinderPublic + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderPublic + - port + path: /v2/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderPublic + - port + CinderV3Admin: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CinderApiNetwork + port: + get_param: + - EndpointMap + - CinderAdmin + - port + protocol: + get_param: + - EndpointMap + - CinderAdmin + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderAdmin + - port + path: /v3/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderAdmin + - port + CinderV3Internal: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - CinderApiNetwork + port: + get_param: + - EndpointMap + - CinderInternal + - port + protocol: + get_param: + - EndpointMap + - CinderInternal + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderInternal + - port + path: /v3/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - CinderApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - CinderApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderInternal + - port + CinderV3Public: + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - CinderPublic + - port + protocol: + get_param: + - EndpointMap + - CinderPublic + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - CinderPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderPublic + - port + path: /v3/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - CinderPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - CinderPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - CinderPublic + - port + DesignateAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignateAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DesignateApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DesignateApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - DesignateAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DesignateApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - DesignateApiNetwork + port: + get_param: + - EndpointMap + - DesignateAdmin + - port + protocol: + get_param: + - EndpointMap + - DesignateAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - DesignateAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignateAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DesignateApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DesignateApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - DesignateAdmin + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - DesignateAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignateAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DesignateApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DesignateApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - DesignateAdmin + - port + DesignateInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignateInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DesignateApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DesignateApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - DesignateInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DesignateApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - DesignateApiNetwork + port: + get_param: + - EndpointMap + - DesignateInternal + - port + protocol: + get_param: + - EndpointMap + - DesignateInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - DesignateInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignateInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DesignateApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DesignateApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - DesignateInternal + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - DesignateInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignateInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DesignateApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DesignateApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - DesignateInternal + - port + DesignatePublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignatePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - DesignatePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - DesignatePublic + - port + protocol: + get_param: + - EndpointMap + - DesignatePublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - DesignatePublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignatePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - DesignatePublic + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - DesignatePublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - DesignatePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - DesignatePublic + - port + DockerRegistryInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - DockerRegistryInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DockerRegistryNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DockerRegistryNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - DockerRegistryInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DockerRegistryNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - DockerRegistryNetwork + port: + get_param: + - EndpointMap + - DockerRegistryInternal + - port + protocol: + get_param: + - EndpointMap + - DockerRegistryInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - DockerRegistryInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - DockerRegistryInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DockerRegistryNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DockerRegistryNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - DockerRegistryInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - DockerRegistryInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - DockerRegistryInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - DockerRegistryNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - DockerRegistryNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - DockerRegistryInternal + - port + GaneshaInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - GaneshaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GaneshaNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GaneshaNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - GaneshaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GaneshaNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - GaneshaNetwork + port: + get_param: + - EndpointMap + - GaneshaInternal + - port + protocol: + get_param: + - EndpointMap + - GaneshaInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - GaneshaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GaneshaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GaneshaNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GaneshaNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GaneshaInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - GaneshaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GaneshaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GaneshaNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GaneshaNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GaneshaInternal + - port + GlanceAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - GlanceAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GlanceApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GlanceApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - GlanceAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GlanceApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - GlanceApiNetwork + port: + get_param: + - EndpointMap + - GlanceAdmin + - port + protocol: + get_param: + - EndpointMap + - GlanceAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - GlanceAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GlanceAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GlanceApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GlanceApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GlanceAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - GlanceAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GlanceAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GlanceApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GlanceApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GlanceAdmin + - port + GlanceInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - GlanceInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GlanceApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GlanceApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - GlanceInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GlanceApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - GlanceApiNetwork + port: + get_param: + - EndpointMap + - GlanceInternal + - port + protocol: + get_param: + - EndpointMap + - GlanceInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - GlanceInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GlanceInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GlanceApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GlanceApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GlanceInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - GlanceInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GlanceInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GlanceApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GlanceApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GlanceInternal + - port + GlancePublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - GlancePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - GlancePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - GlancePublic + - port + protocol: + get_param: + - EndpointMap + - GlancePublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - GlancePublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GlancePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GlancePublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - GlancePublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GlancePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GlancePublic + - port + GnocchiAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GnocchiApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + port: + get_param: + - EndpointMap + - GnocchiAdmin + - port + protocol: + get_param: + - EndpointMap + - GnocchiAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - GnocchiAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GnocchiApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GnocchiAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - GnocchiAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GnocchiApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GnocchiAdmin + - port + GnocchiInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GnocchiApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + port: + get_param: + - EndpointMap + - GnocchiInternal + - port + protocol: + get_param: + - EndpointMap + - GnocchiInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - GnocchiInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GnocchiApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GnocchiInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - GnocchiInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - GnocchiApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - GnocchiApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GnocchiInternal + - port + GnocchiPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - GnocchiPublic + - port + protocol: + get_param: + - EndpointMap + - GnocchiPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - GnocchiPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GnocchiPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - GnocchiPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - GnocchiPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - GnocchiPublic + - port + HeatAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - HeatAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - HeatApiNetwork + port: + get_param: + - EndpointMap + - HeatAdmin + - port + protocol: + get_param: + - EndpointMap + - HeatAdmin + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - HeatAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatAdmin + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - HeatAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatAdmin + - port + HeatInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - HeatInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - HeatApiNetwork + port: + get_param: + - EndpointMap + - HeatInternal + - port + protocol: + get_param: + - EndpointMap + - HeatInternal + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - HeatInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatInternal + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - HeatInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatInternal + - port + HeatPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - HeatPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - HeatPublic + - port + protocol: + get_param: + - EndpointMap + - HeatPublic + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - HeatPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatPublic + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - HeatPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatPublic + - port + HeatCfnAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - HeatApiNetwork + port: + get_param: + - EndpointMap + - HeatCfnAdmin + - port + protocol: + get_param: + - EndpointMap + - HeatCfnAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - HeatCfnAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatCfnAdmin + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - HeatCfnAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatCfnAdmin + - port + HeatCfnInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - HeatApiNetwork + port: + get_param: + - EndpointMap + - HeatCfnInternal + - port + protocol: + get_param: + - EndpointMap + - HeatCfnInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - HeatCfnInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatCfnInternal + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - HeatCfnInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - HeatApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - HeatApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatCfnInternal + - port + HeatCfnPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - HeatCfnPublic + - port + protocol: + get_param: + - EndpointMap + - HeatCfnPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - HeatCfnPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatCfnPublic + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - HeatCfnPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HeatCfnPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HeatCfnPublic + - port + HorizonPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - HorizonPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - HorizonPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - HorizonPublic + - port + protocol: + get_param: + - EndpointMap + - HorizonPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - HorizonPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HorizonPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HorizonPublic + - port + path: /dashboard + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - HorizonPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - HorizonPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - HorizonPublic + - port + IronicAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - IronicAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - IronicApiNetwork + port: + get_param: + - EndpointMap + - IronicAdmin + - port + protocol: + get_param: + - EndpointMap + - IronicAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - IronicAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicAdmin + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - IronicAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicAdmin + - port + IronicInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - IronicInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - IronicApiNetwork + port: + get_param: + - EndpointMap + - IronicInternal + - port + protocol: + get_param: + - EndpointMap + - IronicInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - IronicInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicInternal + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - IronicInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicInternal + - port + IronicPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - IronicPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - IronicPublic + - port + protocol: + get_param: + - EndpointMap + - IronicPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - IronicPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicPublic + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - IronicPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicPublic + - port + IronicInspectorAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicInspectorNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + port: + get_param: + - EndpointMap + - IronicInspectorAdmin + - port + protocol: + get_param: + - EndpointMap + - IronicInspectorAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - IronicInspectorAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicInspectorNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicInspectorAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - IronicInspectorAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicInspectorNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicInspectorAdmin + - port + IronicInspectorInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicInspectorNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + port: + get_param: + - EndpointMap + - IronicInspectorInternal + - port + protocol: + get_param: + - EndpointMap + - IronicInspectorInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - IronicInspectorInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicInspectorNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicInspectorInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - IronicInspectorInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - IronicInspectorNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - IronicInspectorNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicInspectorInternal + - port + IronicInspectorPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - IronicInspectorPublic + - port + protocol: + get_param: + - EndpointMap + - IronicInspectorPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - IronicInspectorPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicInspectorPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - IronicInspectorPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - IronicInspectorPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - IronicInspectorPublic + - port + KeystoneAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + port: + get_param: + - EndpointMap + - KeystoneAdmin + - port + protocol: + get_param: + - EndpointMap + - KeystoneAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - KeystoneAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystoneAdmin + - port + path: / + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - KeystoneAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystoneAdmin + - port + KeystoneInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + port: + get_param: + - EndpointMap + - KeystoneInternal + - port + protocol: + get_param: + - EndpointMap + - KeystoneInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - KeystoneInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystoneInternal + - port + path: / + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - KeystoneInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystoneInternal + - port + KeystonePublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystonePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - KeystonePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - KeystonePublic + - port + protocol: + get_param: + - EndpointMap + - KeystonePublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - KeystonePublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystonePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystonePublic + - port + path: / + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - KeystonePublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystonePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystonePublic + - port + KeystoneV3Admin: + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + port: + get_param: + - EndpointMap + - KeystoneAdmin + - port + protocol: + get_param: + - EndpointMap + - KeystoneAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - KeystoneAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystoneAdmin + - port + path: /v3 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - KeystoneAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystoneAdminApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystoneAdmin + - port + KeystoneV3Internal: + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + port: + get_param: + - EndpointMap + - KeystoneInternal + - port + protocol: + get_param: + - EndpointMap + - KeystoneInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - KeystoneInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystoneInternal + - port + path: /v3 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - KeystoneInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystoneInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - KeystonePublicApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystoneInternal + - port + KeystoneV3Public: + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystonePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - KeystonePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - KeystonePublic + - port + protocol: + get_param: + - EndpointMap + - KeystonePublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - KeystonePublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystonePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystonePublic + - port + path: /v3 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - KeystonePublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - KeystonePublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - KeystonePublic + - port + ManilaAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - ManilaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - ManilaApiNetwork + port: + get_param: + - EndpointMap + - ManilaAdmin + - port + protocol: + get_param: + - EndpointMap + - ManilaAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaAdmin + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaAdmin + - port + ManilaInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - ManilaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - ManilaApiNetwork + port: + get_param: + - EndpointMap + - ManilaInternal + - port + protocol: + get_param: + - EndpointMap + - ManilaInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaInternal + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaInternal + - port + ManilaPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - ManilaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - ManilaPublic + - port + protocol: + get_param: + - EndpointMap + - ManilaPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaPublic + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaPublic + - port + ManilaV1Admin: + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - ManilaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - ManilaApiNetwork + port: + get_param: + - EndpointMap + - ManilaAdmin + - port + protocol: + get_param: + - EndpointMap + - ManilaAdmin + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - ManilaAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaAdmin + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaAdmin + - port + ManilaV1Internal: + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - ManilaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - ManilaApiNetwork + port: + get_param: + - EndpointMap + - ManilaInternal + - port + protocol: + get_param: + - EndpointMap + - ManilaInternal + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - ManilaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaInternal + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - ManilaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - ManilaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaInternal + - port + ManilaV1Public: + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - ManilaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - ManilaPublic + - port + protocol: + get_param: + - EndpointMap + - ManilaPublic + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - ManilaPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaPublic + - port + path: /v1/ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - ManilaPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - ManilaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - ManilaPublic + - port + MetricsQdrPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - MetricsQdrPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - MetricsQdrPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - MetricsQdrPublic + - port + protocol: + get_param: + - EndpointMap + - MetricsQdrPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - MetricsQdrPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - MetricsQdrPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - MetricsQdrPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - MetricsQdrPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - MetricsQdrPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - MetricsQdrPublic + - port + MysqlInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - MysqlInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - MysqlNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - MysqlNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - MysqlInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - MysqlNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - MysqlNetwork + port: + get_param: + - EndpointMap + - MysqlInternal + - port + protocol: + get_param: + - EndpointMap + - MysqlInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - MysqlInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - MysqlInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - MysqlNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - MysqlNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - MysqlInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - MysqlInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - MysqlInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - MysqlNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - MysqlNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - MysqlInternal + - port + NeutronAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NeutronApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NeutronApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NeutronAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NeutronApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NeutronApiNetwork + port: + get_param: + - EndpointMap + - NeutronAdmin + - port + protocol: + get_param: + - EndpointMap + - NeutronAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NeutronAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NeutronApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NeutronApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NeutronAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NeutronAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NeutronApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NeutronApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NeutronAdmin + - port + NeutronInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NeutronApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NeutronApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NeutronInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NeutronApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NeutronApiNetwork + port: + get_param: + - EndpointMap + - NeutronInternal + - port + protocol: + get_param: + - EndpointMap + - NeutronInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NeutronInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NeutronApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NeutronApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NeutronInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NeutronInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NeutronApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NeutronApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NeutronInternal + - port + NeutronPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NeutronPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - NeutronPublic + - port + protocol: + get_param: + - EndpointMap + - NeutronPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NeutronPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NeutronPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NeutronPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NeutronPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NeutronPublic + - port + NovaAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NovaApiNetwork + port: + get_param: + - EndpointMap + - NovaAdmin + - port + protocol: + get_param: + - EndpointMap + - NovaAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovaAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaAdmin + - port + path: /v2.1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovaAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaAdmin + - port + NovaInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NovaApiNetwork + port: + get_param: + - EndpointMap + - NovaInternal + - port + protocol: + get_param: + - EndpointMap + - NovaInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaInternal + - port + path: /v2.1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaInternal + - port + NovaPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - NovaPublic + - port + protocol: + get_param: + - EndpointMap + - NovaPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovaPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaPublic + - port + path: /v2.1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovaPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaPublic + - port + NovaMetadataInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaMetadataInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaMetadataNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaMetadataNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovaMetadataInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaMetadataNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NovaMetadataNetwork + port: + get_param: + - EndpointMap + - NovaMetadataInternal + - port + protocol: + get_param: + - EndpointMap + - NovaMetadataInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovaMetadataInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaMetadataInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaMetadataNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaMetadataNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaMetadataInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovaMetadataInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaMetadataInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaMetadataNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaMetadataNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaMetadataInternal + - port + NovaVNCProxyAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NovaApiNetwork + port: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - port + protocol: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaVNCProxyAdmin + - port + NovaVNCProxyInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NovaApiNetwork + port: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - port + protocol: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaVNCProxyInternal + - port + NovaVNCProxyPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - port + protocol: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovaVNCProxyPublic + - port + NovajoinAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovajoinNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovajoinNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovajoinNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NovajoinNetwork + port: + get_param: + - EndpointMap + - NovajoinAdmin + - port + protocol: + get_param: + - EndpointMap + - NovajoinAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovajoinAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovajoinNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovajoinNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovajoinAdmin + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovajoinAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovajoinNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovajoinNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovajoinAdmin + - port + NovajoinInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovajoinNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovajoinNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovajoinNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - NovajoinNetwork + port: + get_param: + - EndpointMap + - NovajoinInternal + - port + protocol: + get_param: + - EndpointMap + - NovajoinInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovajoinInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovajoinNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovajoinNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovajoinInternal + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovajoinInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - NovajoinNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - NovajoinNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovajoinInternal + - port + NovajoinPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - NovajoinPublic + - port + protocol: + get_param: + - EndpointMap + - NovajoinPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - NovajoinPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovajoinPublic + - port + path: /v1 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - NovajoinPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - NovajoinPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - NovajoinPublic + - port + OctaviaAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - OctaviaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + port: + get_param: + - EndpointMap + - OctaviaAdmin + - port + protocol: + get_param: + - EndpointMap + - OctaviaAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - OctaviaAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - OctaviaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - OctaviaAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - OctaviaAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - OctaviaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - OctaviaAdmin + - port + OctaviaInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - OctaviaApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + port: + get_param: + - EndpointMap + - OctaviaInternal + - port + protocol: + get_param: + - EndpointMap + - OctaviaInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - OctaviaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - OctaviaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - OctaviaInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - OctaviaInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - OctaviaApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - OctaviaApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - OctaviaInternal + - port + OctaviaPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - OctaviaPublic + - port + protocol: + get_param: + - EndpointMap + - OctaviaPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - OctaviaPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - OctaviaPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - OctaviaPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - OctaviaPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - OctaviaPublic + - port + PlacementAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PlacementNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PlacementNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - PlacementAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PlacementNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PlacementNetwork + port: + get_param: + - EndpointMap + - PlacementAdmin + - port + protocol: + get_param: + - EndpointMap + - PlacementAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - PlacementAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PlacementNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PlacementNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - PlacementAdmin + - port + path: /placement + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - PlacementAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PlacementNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PlacementNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - PlacementAdmin + - port + PlacementInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PlacementNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PlacementNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - PlacementInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PlacementNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PlacementNetwork + port: + get_param: + - EndpointMap + - PlacementInternal + - port + protocol: + get_param: + - EndpointMap + - PlacementInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - PlacementInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PlacementNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PlacementNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - PlacementInternal + - port + path: /placement + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - PlacementInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PlacementNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PlacementNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - PlacementInternal + - port + PlacementPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - PlacementPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - PlacementPublic + - port + protocol: + get_param: + - EndpointMap + - PlacementPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - PlacementPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - PlacementPublic + - port + path: /placement + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - PlacementPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - PlacementPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - PlacementPublic + - port + SwiftAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - SwiftAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + port: + get_param: + - EndpointMap + - SwiftAdmin + - port + protocol: + get_param: + - EndpointMap + - SwiftAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftAdmin + - port + SwiftInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - SwiftInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + port: + get_param: + - EndpointMap + - SwiftInternal + - port + protocol: + get_param: + - EndpointMap + - SwiftInternal + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - SwiftInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftInternal + - port + path: /v1/AUTH_ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftInternal + - port + SwiftPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - SwiftPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - SwiftPublic + - port + protocol: + get_param: + - EndpointMap + - SwiftPublic + - protocol + uri: + list_join: + - '' + - - make_url: + scheme: + get_param: + - EndpointMap + - SwiftPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftPublic + - port + path: /v1/AUTH_ + - '%(tenant_id)s' + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftPublic + - port + SwiftS3Admin: + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - SwiftAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + port: + get_param: + - EndpointMap + - SwiftAdmin + - port + protocol: + get_param: + - EndpointMap + - SwiftAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftAdmin + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftAdmin + - port + SwiftS3Internal: + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - SwiftInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + port: + get_param: + - EndpointMap + - SwiftInternal + - port + protocol: + get_param: + - EndpointMap + - SwiftInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftInternal + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - SwiftProxyNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - SwiftProxyNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftInternal + - port + SwiftS3Public: + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - SwiftPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - SwiftPublic + - port + protocol: + get_param: + - EndpointMap + - SwiftPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftPublic + - port + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - SwiftPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - SwiftPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - SwiftPublic + - port + TrilioDatamoverAdmin: + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + port: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - port + protocol: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - TrilioDatamoverAdmin + - port + TrilioDatamoverInternal: + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + port: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - port + protocol: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - TrilioDatamoverApiNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - TrilioDatamoverInternal + - port + TrilioDatamoverPublic: + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + host_nobrackets: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - get_param: + - ServiceNetMap + - PublicNetwork + port: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - port + protocol: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - protocol + uri: + make_url: + scheme: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - port + path: /v2 + uri_no_suffix: + make_url: + scheme: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - protocol + host: + str_replace: + template: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - host + params: + CLOUDNAME: + get_param: + - CloudEndpoints + - get_param: + - ServiceNetMap + - PublicNetwork + IP_ADDRESS: + get_param: + - NetIpMap + - str_replace: + params: + NETWORK: + get_param: + - ServiceNetMap + - PublicNetwork + template: NETWORK_uri + port: + get_param: + - EndpointMap + - TrilioDatamoverPublic + - port diff --git a/redhat-director-scripts/rhosp17.0/environments/trilio_datamover_opt_volumes.yaml b/redhat-director-scripts/rhosp17.0/environments/trilio_datamover_opt_volumes.yaml new file mode 100644 index 000000000..2e0f96201 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/trilio_datamover_opt_volumes.yaml @@ -0,0 +1,8 @@ +parameter_defaults: + ## User can specify list of extra volumes that he/she wants to mount on 'trilio_datamover' container. + TrilioDatamoverOptVolumes: + +# Example: +# TrilioDatamoverOptVolumes: +# - /opt/dir1:/opt/dir1 +# - /mnt/dir2:/var/dir2 diff --git a/redhat-director-scripts/rhosp17.0/environments/trilio_endpoint_data.yaml b/redhat-director-scripts/rhosp17.0/environments/trilio_endpoint_data.yaml new file mode 100644 index 000000000..beed0ad2f --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/trilio_endpoint_data.yaml @@ -0,0 +1,16 @@ +# Trilio endpoint map file + +TrilioDatamover: + Internal: + net_param: TrilioDatamoverApi + uri_suffixes: + '': /v2 + Public: + net_param: Public + uri_suffixes: + '': /v2 + Admin: + net_param: TrilioDatamoverApi + uri_suffixes: + '': /v2 + port: 8784 diff --git a/redhat-director-scripts/rhosp17.0/environments/trilio_env.yaml b/redhat-director-scripts/rhosp17.0/environments/trilio_env.yaml new file mode 100644 index 000000000..5d86a49ac --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/trilio_env.yaml @@ -0,0 +1,87 @@ +resource_registry: + OS::TripleO::Services::TrilioDatamover: ../services/trilio-datamover.yaml + OS::TripleO::Services::TrilioDatamoverApi: ../services/trilio-datamover-api.yaml + OS::TripleO::Services::TrilioHorizon: ../services/trilio-horizon.yaml + + # NOTE: If there are addition customizations to the endpoint map (e.g. for + # other integratiosn), this will need to be regenerated. + OS::TripleO::EndpointMap: endpoint_map.yaml + +parameter_defaults: + + ## Enable TrilioVault's quota functionality on horizon + ExtraConfig: + horizon::customization_module: 'dashboards.overrides' + + ## Define network map for trilio datamover api service + ## Valid Values: ['internal_api', 'ctlplane'] + ServiceNetMap: + TrilioDatamoverApiNetwork: ctlplane + + ## TrilioVault Datamover Password for keystone and database + TrilioDatamoverPassword: "test1234" + + ## TrilioVault container pull urls + DockerTrilioDatamoverImage: devundercloud.ctlplane.localdomain:8787/trilio/trilio-datamover:4.0.41-rhosp16 + DockerTrilioDmApiImage: devundercloud.ctlplane.localdomain:8787/trilio/trilio-datamover-api:4.0.41-rhosp16 + + ## If you do not want Trilio's horizon plugin to replace your horizon container, just comment following line. + ContainerHorizonImage: devundercloud.ctlplane.localdomain:8787/trilio/trilio-horizon-plugin:4.0.41-rhosp16 + + ## Backup target type nfs/s3, used to store snapshots taken by triliovault + BackupTargetType: 'nfs' + + ## If backup target NFS share support multiple IPs and you want to use those IPs(more than one) then + ## set this parameter to True. Otherwise keep it False. + MultiIPNfsEnabled: False + + ## For backup target 'nfs' + NfsShares: '192.168.122.101:/opt/tvault' + NfsOptions: 'nolock,soft,timeo=180,intr,lookupcache=none' + + ## For backup target 's3' + ## S3 type: amazon_s3/ceph_s3 + S3Type: 'amazon_s3' + + ## S3 access key + S3AccessKey: '' + + ## S3 secret key + S3SecretKey: '' + + ## S3 region, if your s3 does not have any region, just keep the parameter as it is + S3RegionName: '' + + ## S3 bucket name + S3Bucket: '' + + ## S3 endpoint url, not required for Amazon S3, keep it as it is + S3EndpointUrl: '' + + ## S3 signature version + S3SignatureVersion: 'default' + + ## S3 Auth version + S3AuthVersion: 'DEFAULT' + + ## If S3 backend is not Amazon S3 and SSL is enabled on S3 endpoint url then change it to 'True', otherwise keep it as 'False' + S3SslEnabled: False + + ## If S3 backend is not Amazon S3 and SSL is enabled on S3 endpoint URL and SSL certificates are self signed, then + ## user need to set this parameter value to: '/etc/tvault-contego/s3-cert.pem', otherwise keep it's value as empty string. + S3SslCert: '' + + ## Configure 'dmapi_workers' parameter of '/etc/dmapi/dmapi.conf' file + ## This parameter value used to spawn the number of dmapi processes to handle the incoming api requests. + ## If your dmapi node has ‘n' cpu cores, It is recommended, to set this parameter to '4*n’. + ## If dmapi_workers field is not present in config file. The Default value will be equals to number of cores present on the node + DmApiWorkers: 16 + + ## Don't edit following parameter + EnablePackageInstall: True + + + ## Load 'rbd' kernel module on all compute nodes + ComputeParameters: + ExtraKernelModules: + rbd: {} diff --git a/redhat-director-scripts/rhosp17.0/environments/trilio_env_non_tls_endpoints_ip.yaml b/redhat-director-scripts/rhosp17.0/environments/trilio_env_non_tls_endpoints_ip.yaml new file mode 100644 index 000000000..c861f5264 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/trilio_env_non_tls_endpoints_ip.yaml @@ -0,0 +1,89 @@ +# ******************************************************************* +# This file was created automatically by the sample environment +# generator. Developers should use `tox -e genconfig` to update it. +# Users are recommended to make changes to a copy of the file instead +# of the original, if any customizations are needed. +# ******************************************************************* +# title: Deploy All Endpoints without TLS and with IP addresses +# description: | +# Use this environment when deploying an overcloud where all the endpoints not +# using TLS and are using IP addresses. +parameter_defaults: + # Whether to enable TLS on the public interface or not. + # Type: boolean + EnablePublicTLS: False + + # Mapping of service endpoint -> protocol. Typically set via parameter_defaults in the resource registry. + # Type: json + EndpointMap: + AodhAdmin: {protocol: http, port: '8042', host: IP_ADDRESS} + AodhInternal: {protocol: http, port: '8042', host: IP_ADDRESS} + AodhPublic: {protocol: http, port: '8042', host: IP_ADDRESS} + BarbicanAdmin: {protocol: http, port: '9311', host: IP_ADDRESS} + BarbicanInternal: {protocol: http, port: '9311', host: IP_ADDRESS} + BarbicanPublic: {protocol: http, port: '9311', host: IP_ADDRESS} + CephDashboardInternal: {protocol: http, port: '8444', host: IP_ADDRESS} + CephGrafanaInternal: {protocol: http, port: '3100', host: IP_ADDRESS} + CephRgwAdmin: {protocol: http, port: '8080', host: IP_ADDRESS} + CephRgwInternal: {protocol: http, port: '8080', host: IP_ADDRESS} + CephRgwPublic: {protocol: http, port: '8080', host: IP_ADDRESS} + CinderAdmin: {protocol: http, port: '8776', host: IP_ADDRESS} + CinderInternal: {protocol: http, port: '8776', host: IP_ADDRESS} + CinderPublic: {protocol: http, port: '8776', host: IP_ADDRESS} + DesignateAdmin: {protocol: 'http', port: '9001', host: IP_ADDRESS} + DesignateInternal: {protocol: 'http', port: '9001', host: IP_ADDRESS} + DesignatePublic: {protocol: 'http', port: '9001', host: IP_ADDRESS} + DockerRegistryInternal: {protocol: http, port: '8787', host: IP_ADDRESS} + GaneshaInternal: {protocol: nfs, port: '2049', host: IP_ADDRESS} + GlanceAdmin: {protocol: http, port: '9292', host: IP_ADDRESS} + GlanceInternal: {protocol: http, port: '9292', host: IP_ADDRESS} + GlancePublic: {protocol: http, port: '9292', host: IP_ADDRESS} + GnocchiAdmin: {protocol: http, port: '8041', host: IP_ADDRESS} + GnocchiInternal: {protocol: http, port: '8041', host: IP_ADDRESS} + GnocchiPublic: {protocol: http, port: '8041', host: IP_ADDRESS} + HeatAdmin: {protocol: http, port: '8004', host: IP_ADDRESS} + HeatInternal: {protocol: http, port: '8004', host: IP_ADDRESS} + HeatPublic: {protocol: http, port: '8004', host: IP_ADDRESS} + HeatCfnAdmin: {protocol: http, port: '8000', host: IP_ADDRESS} + HeatCfnInternal: {protocol: http, port: '8000', host: IP_ADDRESS} + HeatCfnPublic: {protocol: http, port: '8000', host: IP_ADDRESS} + HorizonPublic: {protocol: http, port: '80', host: IP_ADDRESS} + IronicAdmin: {protocol: http, port: '6385', host: IP_ADDRESS} + IronicInternal: {protocol: http, port: '6385', host: IP_ADDRESS} + IronicPublic: {protocol: http, port: '6385', host: IP_ADDRESS} + IronicInspectorAdmin: {protocol: http, port: '5050', host: IP_ADDRESS} + IronicInspectorInternal: {protocol: http, port: '5050', host: IP_ADDRESS} + IronicInspectorPublic: {protocol: http, port: '5050', host: IP_ADDRESS} + KeystoneAdmin: {protocol: http, port: '35357', host: IP_ADDRESS} + KeystoneInternal: {protocol: http, port: '5000', host: IP_ADDRESS} + KeystonePublic: {protocol: http, port: '5000', host: IP_ADDRESS} + ManilaAdmin: {protocol: http, port: '8786', host: IP_ADDRESS} + ManilaInternal: {protocol: http, port: '8786', host: IP_ADDRESS} + ManilaPublic: {protocol: http, port: '8786', host: IP_ADDRESS} + MetricsQdrPublic: {protocol: 'amqp', port: '5666', host: IP_ADDRESS} + MysqlInternal: {protocol: mysql+pymysql, port: '3306', host: IP_ADDRESS} + NeutronAdmin: {protocol: http, port: '9696', host: IP_ADDRESS} + NeutronInternal: {protocol: http, port: '9696', host: IP_ADDRESS} + NeutronPublic: {protocol: http, port: '9696', host: IP_ADDRESS} + NovaAdmin: {protocol: http, port: '8774', host: IP_ADDRESS} + NovaInternal: {protocol: http, port: '8774', host: IP_ADDRESS} + NovaPublic: {protocol: http, port: '8774', host: IP_ADDRESS} + NovajoinAdmin: {protocol: http, port: '9090', host: IP_ADDRESS} + NovajoinInternal: {protocol: http, port: '9090', host: IP_ADDRESS} + NovajoinPublic: {protocol: http, port: '9090', host: IP_ADDRESS} + NovaMetadataInternal: {protocol: http, port: '8775', host: IP_ADDRESS} + PlacementAdmin: {protocol: http, port: '8778', host: IP_ADDRESS} + PlacementInternal: {protocol: http, port: '8778', host: IP_ADDRESS} + PlacementPublic: {protocol: http, port: '8778', host: IP_ADDRESS} + NovaVNCProxyAdmin: {protocol: http, port: '6080', host: IP_ADDRESS} + NovaVNCProxyInternal: {protocol: http, port: '6080', host: IP_ADDRESS} + NovaVNCProxyPublic: {protocol: http, port: '6080', host: IP_ADDRESS} + OctaviaAdmin: {protocol: http, port: '9876', host: IP_ADDRESS} + OctaviaInternal: {protocol: http, port: '9876', host: IP_ADDRESS} + OctaviaPublic: {protocol: http, port: '9876', host: IP_ADDRESS} + SwiftAdmin: {protocol: http, port: '8080', host: IP_ADDRESS} + SwiftInternal: {protocol: http, port: '8080', host: IP_ADDRESS} + SwiftPublic: {protocol: http, port: '8080', host: IP_ADDRESS} + TrilioDatamoverAdmin: {protocol: 'http', port: '8784', host: 'IP_ADDRESS'} + TrilioDatamoverInternal: {protocol: 'http', port: '8784', host: 'IP_ADDRESS'} + TrilioDatamoverPublic: {protocol: 'http', port: '8784', host: 'IP_ADDRESS'} diff --git a/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_endpoints_public_dns.yaml b/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_endpoints_public_dns.yaml new file mode 100644 index 000000000..aa22f352e --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_endpoints_public_dns.yaml @@ -0,0 +1,85 @@ +# ******************************************************************* +# This file was created automatically by the sample environment +# generator. Developers should use `tox -e genconfig` to update it. +# Users are recommended to make changes to a copy of the file instead +# of the original, if any customizations are needed. +# ******************************************************************* +# title: Deploy Public SSL Endpoints as DNS Names +# description: | +# Use this environment when deploying an SSL-enabled overcloud where the public +# endpoint is a DNS name. +parameter_defaults: + # Mapping of service endpoint -> protocol. Typically set via parameter_defaults in the resource registry. + # Type: json + EndpointMap: + AodhAdmin: {protocol: 'http', port: '8042', host: 'IP_ADDRESS'} + AodhInternal: {protocol: 'http', port: '8042', host: 'IP_ADDRESS'} + AodhPublic: {protocol: 'https', port: '13042', host: 'CLOUDNAME'} + BarbicanAdmin: {protocol: 'http', port: '9311', host: 'IP_ADDRESS'} + BarbicanInternal: {protocol: 'http', port: '9311', host: 'IP_ADDRESS'} + BarbicanPublic: {protocol: 'https', port: '13311', host: 'CLOUDNAME'} + CephDashboardInternal: {protocol: 'https', port: '8444', host: 'CLOUDNAME'} + CephGrafanaInternal: {protocol: 'https', port: '3100', host: 'CLOUDNAME'} + CephRgwAdmin: {protocol: 'http', port: '8080', host: 'IP_ADDRESS'} + CephRgwInternal: {protocol: 'http', port: '8080', host: 'IP_ADDRESS'} + CephRgwPublic: {protocol: 'https', port: '13808', host: 'CLOUDNAME'} + CinderAdmin: {protocol: 'http', port: '8776', host: 'IP_ADDRESS'} + CinderInternal: {protocol: 'http', port: '8776', host: 'IP_ADDRESS'} + CinderPublic: {protocol: 'https', port: '13776', host: 'CLOUDNAME'} + DesignateAdmin: {protocol: 'http', port: '9001', host: 'IP_ADDRESS'} + DesignateInternal: {protocol: 'http', port: '9001', host: 'IP_ADDRESS'} + DesignatePublic: {protocol: 'https', port: '13001', host: 'CLOUDNAME'} + DockerRegistryInternal: {protocol: 'https', port: '8787', host: 'CLOUDNAME'} + GaneshaInternal: {protocol: 'nfs', port: '2049', host: 'IP_ADDRESS'} + GlanceAdmin: {protocol: 'http', port: '9292', host: 'IP_ADDRESS'} + GlanceInternal: {protocol: 'http', port: '9292', host: 'IP_ADDRESS'} + GlancePublic: {protocol: 'https', port: '13292', host: 'CLOUDNAME'} + GnocchiAdmin: {protocol: 'http', port: '8041', host: 'IP_ADDRESS'} + GnocchiInternal: {protocol: 'http', port: '8041', host: 'IP_ADDRESS'} + GnocchiPublic: {protocol: 'https', port: '13041', host: 'CLOUDNAME'} + HeatAdmin: {protocol: 'http', port: '8004', host: 'IP_ADDRESS'} + HeatInternal: {protocol: 'http', port: '8004', host: 'IP_ADDRESS'} + HeatPublic: {protocol: 'https', port: '13004', host: 'CLOUDNAME'} + HeatCfnAdmin: {protocol: 'http', port: '8000', host: 'IP_ADDRESS'} + HeatCfnInternal: {protocol: 'http', port: '8000', host: 'IP_ADDRESS'} + HeatCfnPublic: {protocol: 'https', port: '13005', host: 'CLOUDNAME'} + HorizonPublic: {protocol: 'https', port: '443', host: 'CLOUDNAME'} + IronicAdmin: {protocol: 'http', port: '6385', host: 'IP_ADDRESS'} + IronicInternal: {protocol: 'http', port: '6385', host: 'IP_ADDRESS'} + IronicPublic: {protocol: 'https', port: '13385', host: 'CLOUDNAME'} + IronicInspectorAdmin: {protocol: 'http', port: '5050', host: 'IP_ADDRESS'} + IronicInspectorInternal: {protocol: 'http', port: '5050', host: 'IP_ADDRESS'} + IronicInspectorPublic: {protocol: 'https', port: '13050', host: 'CLOUDNAME'} + KeystoneAdmin: {protocol: 'http', port: '35357', host: 'IP_ADDRESS'} + KeystoneInternal: {protocol: 'http', port: '5000', host: 'IP_ADDRESS'} + KeystonePublic: {protocol: 'https', port: '13000', host: 'CLOUDNAME'} + ManilaAdmin: {protocol: 'http', port: '8786', host: 'IP_ADDRESS'} + ManilaInternal: {protocol: 'http', port: '8786', host: 'IP_ADDRESS'} + ManilaPublic: {protocol: 'https', port: '13786', host: 'CLOUDNAME'} + MetricsQdrPublic: {protocol: 'amqp', port: '5666', host: 'CLOUDNAME'} + MysqlInternal: {protocol: 'mysql+pymysql', port: '3306', host: 'IP_ADDRESS'} + NeutronAdmin: {protocol: 'http', port: '9696', host: 'IP_ADDRESS'} + NeutronInternal: {protocol: 'http', port: '9696', host: 'IP_ADDRESS'} + NeutronPublic: {protocol: 'https', port: '13696', host: 'CLOUDNAME'} + NovaAdmin: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'} + NovaInternal: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'} + NovaPublic: {protocol: 'https', port: '13774', host: 'CLOUDNAME'} + NovajoinAdmin: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'} + NovajoinInternal: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'} + NovajoinPublic: {protocol: 'https', port: '13090', host: 'CLOUDNAME'} + NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'IP_ADDRESS'} + PlacementAdmin: {protocol: 'http', port: '8778', host: 'IP_ADDRESS'} + PlacementInternal: {protocol: 'http', port: '8778', host: 'IP_ADDRESS'} + PlacementPublic: {protocol: 'https', port: '13778', host: 'CLOUDNAME'} + NovaVNCProxyAdmin: {protocol: 'http', port: '6080', host: 'IP_ADDRESS'} + NovaVNCProxyInternal: {protocol: 'http', port: '6080', host: 'IP_ADDRESS'} + NovaVNCProxyPublic: {protocol: 'https', port: '13080', host: 'CLOUDNAME'} + OctaviaAdmin: {protocol: 'http', port: '9876', host: 'IP_ADDRESS'} + OctaviaInternal: {protocol: 'http', port: '9876', host: 'IP_ADDRESS'} + OctaviaPublic: {protocol: 'https', port: '13876', host: 'CLOUDNAME'} + SwiftAdmin: {protocol: 'http', port: '8080', host: 'IP_ADDRESS'} + SwiftInternal: {protocol: 'http', port: '8080', host: 'IP_ADDRESS'} + SwiftPublic: {protocol: 'https', port: '13808', host: 'CLOUDNAME'} + TrilioDatamoverAdmin: {protocol: 'http', port: '8784', host: 'IP_ADDRESS'} + TrilioDatamoverInternal: {protocol: 'http', port: '8784', host: 'IP_ADDRESS'} + TrilioDatamoverPublic: {protocol: 'https', port: '13784', host: 'CLOUDNAME'} diff --git a/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_endpoints_public_ip.yaml b/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_endpoints_public_ip.yaml new file mode 100644 index 000000000..f59a5d8b7 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_endpoints_public_ip.yaml @@ -0,0 +1,85 @@ +# ******************************************************************* +# This file was created automatically by the sample environment +# generator. Developers should use `tox -e genconfig` to update it. +# Users are recommended to make changes to a copy of the file instead +# of the original, if any customizations are needed. +# ******************************************************************* +# title: Deploy Public SSL Endpoints as IP Addresses +# description: | +# Use this environment when deploying an SSL-enabled overcloud where the public +# endpoint is an IP address. +parameter_defaults: + # Mapping of service endpoint -> protocol. Typically set via parameter_defaults in the resource registry. + # Type: json + EndpointMap: + AodhAdmin: {protocol: 'http', port: '8042', host: 'IP_ADDRESS'} + AodhInternal: {protocol: 'http', port: '8042', host: 'IP_ADDRESS'} + AodhPublic: {protocol: 'https', port: '13042', host: 'IP_ADDRESS'} + BarbicanAdmin: {protocol: 'http', port: '9311', host: 'IP_ADDRESS'} + BarbicanInternal: {protocol: 'http', port: '9311', host: 'IP_ADDRESS'} + BarbicanPublic: {protocol: 'https', port: '13311', host: 'IP_ADDRESS'} + CephDashboardInternal: {protocol: 'https', port: '8444', host: 'IP_ADDRESS'} + CephGrafanaInternal: {protocol: 'https', port: '3100', host: 'IP_ADDRESS'} + CephRgwAdmin: {protocol: 'http', port: '8080', host: 'IP_ADDRESS'} + CephRgwInternal: {protocol: 'http', port: '8080', host: 'IP_ADDRESS'} + CephRgwPublic: {protocol: 'https', port: '13808', host: 'IP_ADDRESS'} + CinderAdmin: {protocol: 'http', port: '8776', host: 'IP_ADDRESS'} + CinderInternal: {protocol: 'http', port: '8776', host: 'IP_ADDRESS'} + CinderPublic: {protocol: 'https', port: '13776', host: 'IP_ADDRESS'} + DesignateAdmin: {protocol: 'http', port: '9001', host: 'IP_ADDRESS'} + DesignateInternal: {protocol: 'http', port: '9001', host: 'IP_ADDRESS'} + DesignatePublic: {protocol: 'https', port: '13001', host: 'IP_ADDRESS'} + DockerRegistryInternal: {protocol: 'https', port: '8787', host: 'IP_ADDRESS'} + GaneshaInternal: {protocol: 'nfs', port: '2049', host: 'IP_ADDRESS'} + GlanceAdmin: {protocol: 'http', port: '9292', host: 'IP_ADDRESS'} + GlanceInternal: {protocol: 'http', port: '9292', host: 'IP_ADDRESS'} + GlancePublic: {protocol: 'https', port: '13292', host: 'IP_ADDRESS'} + GnocchiAdmin: {protocol: 'http', port: '8041', host: 'IP_ADDRESS'} + GnocchiInternal: {protocol: 'http', port: '8041', host: 'IP_ADDRESS'} + GnocchiPublic: {protocol: 'https', port: '13041', host: 'IP_ADDRESS'} + HeatAdmin: {protocol: 'http', port: '8004', host: 'IP_ADDRESS'} + HeatInternal: {protocol: 'http', port: '8004', host: 'IP_ADDRESS'} + HeatPublic: {protocol: 'https', port: '13004', host: 'IP_ADDRESS'} + HeatCfnAdmin: {protocol: 'http', port: '8000', host: 'IP_ADDRESS'} + HeatCfnInternal: {protocol: 'http', port: '8000', host: 'IP_ADDRESS'} + HeatCfnPublic: {protocol: 'https', port: '13005', host: 'IP_ADDRESS'} + HorizonPublic: {protocol: 'https', port: '443', host: 'IP_ADDRESS'} + IronicAdmin: {protocol: 'http', port: '6385', host: 'IP_ADDRESS'} + IronicInternal: {protocol: 'http', port: '6385', host: 'IP_ADDRESS'} + IronicPublic: {protocol: 'https', port: '13385', host: 'IP_ADDRESS'} + IronicInspectorAdmin: {protocol: 'http', port: '5050', host: 'IP_ADDRESS'} + IronicInspectorInternal: {protocol: 'http', port: '5050', host: 'IP_ADDRESS'} + IronicInspectorPublic: {protocol: 'https', port: '13050', host: 'IP_ADDRESS'} + KeystoneAdmin: {protocol: 'http', port: '35357', host: 'IP_ADDRESS'} + KeystoneInternal: {protocol: 'http', port: '5000', host: 'IP_ADDRESS'} + KeystonePublic: {protocol: 'https', port: '13000', host: 'IP_ADDRESS'} + ManilaAdmin: {protocol: 'http', port: '8786', host: 'IP_ADDRESS'} + ManilaInternal: {protocol: 'http', port: '8786', host: 'IP_ADDRESS'} + ManilaPublic: {protocol: 'https', port: '13786', host: 'IP_ADDRESS'} + MetricsQdrPublic: {protocol: 'amqp', port: '5666', host: 'IP_ADDRESS'} + MysqlInternal: {protocol: 'mysql+pymysql', port: '3306', host: 'IP_ADDRESS'} + NeutronAdmin: {protocol: 'http', port: '9696', host: 'IP_ADDRESS'} + NeutronInternal: {protocol: 'http', port: '9696', host: 'IP_ADDRESS'} + NeutronPublic: {protocol: 'https', port: '13696', host: 'IP_ADDRESS'} + NovaAdmin: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'} + NovaInternal: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'} + NovaPublic: {protocol: 'https', port: '13774', host: 'IP_ADDRESS'} + NovajoinAdmin: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'} + NovajoinInternal: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'} + NovajoinPublic: {protocol: 'https', port: '13090', host: 'IP_ADDRESS'} + NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'IP_ADDRESS'} + PlacementAdmin: {protocol: 'http', port: '8778', host: 'IP_ADDRESS'} + PlacementInternal: {protocol: 'http', port: '8778', host: 'IP_ADDRESS'} + PlacementPublic: {protocol: 'https', port: '13778', host: 'IP_ADDRESS'} + NovaVNCProxyAdmin: {protocol: 'http', port: '6080', host: 'IP_ADDRESS'} + NovaVNCProxyInternal: {protocol: 'http', port: '6080', host: 'IP_ADDRESS'} + NovaVNCProxyPublic: {protocol: 'https', port: '13080', host: 'IP_ADDRESS'} + OctaviaAdmin: {protocol: 'http', port: '9876', host: 'IP_ADDRESS'} + OctaviaInternal: {protocol: 'http', port: '9876', host: 'IP_ADDRESS'} + OctaviaPublic: {protocol: 'https', port: '13876', host: 'IP_ADDRESS'} + SwiftAdmin: {protocol: 'http', port: '8080', host: 'IP_ADDRESS'} + SwiftInternal: {protocol: 'http', port: '8080', host: 'IP_ADDRESS'} + SwiftPublic: {protocol: 'https', port: '13808', host: 'IP_ADDRESS'} + TrilioDatamoverAdmin: {protocol: 'http', port: '8784', host: 'IP_ADDRESS'} + TrilioDatamoverInternal: {protocol: 'http', port: '8784', host: 'IP_ADDRESS'} + TrilioDatamoverPublic: {protocol: 'https', port: '13784', host: 'IP_ADDRESS'} diff --git a/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_everywhere_dns.yaml b/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_everywhere_dns.yaml new file mode 100644 index 000000000..1e62e3b79 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/trilio_env_tls_everywhere_dns.yaml @@ -0,0 +1,86 @@ +# ******************************************************************* +# This file was created automatically by the sample environment +# generator. Developers should use `tox -e genconfig` to update it. +# Users are recommended to make changes to a copy of the file instead +# of the original, if any customizations are needed. +# ******************************************************************* +# title: Deploy All SSL Endpoints as DNS Names +# description: | +# Use this environment when deploying an overcloud where all the endpoints are +# DNS names and there's TLS in all endpoint types. +parameter_defaults: + # Mapping of service endpoint -> protocol. Typically set via parameter_defaults in the resource registry. + # Type: json + EndpointMap: + AodhAdmin: {protocol: 'https', port: '8042', host: 'CLOUDNAME'} + AodhInternal: {protocol: 'https', port: '8042', host: 'CLOUDNAME'} + AodhPublic: {protocol: 'https', port: '13042', host: 'CLOUDNAME'} + BarbicanAdmin: {protocol: 'https', port: '9311', host: 'CLOUDNAME'} + BarbicanInternal: {protocol: 'https', port: '9311', host: 'CLOUDNAME'} + BarbicanPublic: {protocol: 'https', port: '13311', host: 'CLOUDNAME'} + CephDashboardInternal: {protocol: 'https', port: '8444', host: 'CLOUDNAME'} + CephGrafanaInternal: {protocol: 'https', port: '3100', host: 'CLOUDNAME'} + CephRgwAdmin: {protocol: 'https', port: '8080', host: 'CLOUDNAME'} + CephRgwInternal: {protocol: 'https', port: '8080', host: 'CLOUDNAME'} + CephRgwPublic: {protocol: 'https', port: '13808', host: 'CLOUDNAME'} + CinderAdmin: {protocol: 'https', port: '8776', host: 'CLOUDNAME'} + CinderInternal: {protocol: 'https', port: '8776', host: 'CLOUDNAME'} + CinderPublic: {protocol: 'https', port: '13776', host: 'CLOUDNAME'} + DesignateAdmin: {protocol: 'https', port: '9001', host: 'CLOUDNAME'} + DesignateInternal: {protocol: 'https', port: '9001', host: 'CLOUDNAME'} + DesignatePublic: {protocol: 'https', port: '13001', host: 'CLOUDNAME'} + DockerRegistryInternal: {protocol: 'https', port: '8787', host: 'CLOUDNAME'} + GaneshaInternal: {protocol: 'nfs', port: '2049', host: 'IP_ADDRESS'} + GlanceAdmin: {protocol: 'https', port: '9292', host: 'CLOUDNAME'} + GlanceInternal: {protocol: 'https', port: '9292', host: 'CLOUDNAME'} + GlancePublic: {protocol: 'https', port: '13292', host: 'CLOUDNAME'} + GnocchiAdmin: {protocol: 'https', port: '8041', host: 'CLOUDNAME'} + GnocchiInternal: {protocol: 'https', port: '8041', host: 'CLOUDNAME'} + GnocchiPublic: {protocol: 'https', port: '13041', host: 'CLOUDNAME'} + HeatAdmin: {protocol: 'https', port: '8004', host: 'CLOUDNAME'} + HeatInternal: {protocol: 'https', port: '8004', host: 'CLOUDNAME'} + HeatPublic: {protocol: 'https', port: '13004', host: 'CLOUDNAME'} + HeatCfnAdmin: {protocol: 'https', port: '8000', host: 'CLOUDNAME'} + HeatCfnInternal: {protocol: 'https', port: '8000', host: 'CLOUDNAME'} + HeatCfnPublic: {protocol: 'https', port: '13005', host: 'CLOUDNAME'} + HorizonPublic: {protocol: 'https', port: '443', host: 'CLOUDNAME'} + IronicAdmin: {protocol: 'https', port: '6385', host: 'CLOUDNAME'} + IronicInternal: {protocol: 'https', port: '6385', host: 'CLOUDNAME'} + IronicPublic: {protocol: 'https', port: '13385', host: 'CLOUDNAME'} + IronicInspectorAdmin: {protocol: 'http', port: '5050', host: 'CLOUDNAME'} + IronicInspectorInternal: {protocol: 'http', port: '5050', host: 'CLOUDNAME'} + IronicInspectorPublic: {protocol: 'https', port: '13050', host: 'CLOUDNAME'} + KeystoneAdmin: {protocol: 'https', port: '35357', host: 'CLOUDNAME'} + KeystoneInternal: {protocol: 'https', port: '5000', host: 'CLOUDNAME'} + KeystonePublic: {protocol: 'https', port: '13000', host: 'CLOUDNAME'} + ManilaAdmin: {protocol: 'https', port: '8786', host: 'CLOUDNAME'} + ManilaInternal: {protocol: 'https', port: '8786', host: 'CLOUDNAME'} + ManilaPublic: {protocol: 'https', port: '13786', host: 'CLOUDNAME'} + MetricsQdrPublic: {protocol: 'amqp', port: '5666', host: 'CLOUDNAME'} + MysqlInternal: {protocol: 'mysql+pymysql', port: '3306', host: 'CLOUDNAME'} + NeutronAdmin: {protocol: 'https', port: '9696', host: 'CLOUDNAME'} + NeutronInternal: {protocol: 'https', port: '9696', host: 'CLOUDNAME'} + NeutronPublic: {protocol: 'https', port: '13696', host: 'CLOUDNAME'} + NovaAdmin: {protocol: 'https', port: '8774', host: 'CLOUDNAME'} + NovaInternal: {protocol: 'https', port: '8774', host: 'CLOUDNAME'} + NovaPublic: {protocol: 'https', port: '13774', host: 'CLOUDNAME'} + NovajoinAdmin: {protocol: 'https', port: '9090', host: 'CLOUDNAME'} + NovajoinInternal: {protocol: 'https', port: '9090', host: 'CLOUDNAME'} + NovajoinPublic: {protocol: 'https', port: '13090', host: 'CLOUDNAME'} + NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'CLOUDNAME'} + PlacementAdmin: {protocol: 'https', port: '8778', host: 'CLOUDNAME'} + PlacementInternal: {protocol: 'https', port: '8778', host: 'CLOUDNAME'} + PlacementPublic: {protocol: 'https', port: '13778', host: 'CLOUDNAME'} + NovaVNCProxyAdmin: {protocol: 'https', port: '6080', host: 'CLOUDNAME'} + NovaVNCProxyInternal: {protocol: 'https', port: '6080', host: 'CLOUDNAME'} + NovaVNCProxyPublic: {protocol: 'https', port: '13080', host: 'CLOUDNAME'} + OctaviaAdmin: {protocol: 'https', port: '9876', host: 'CLOUDNAME'} + OctaviaInternal: {protocol: 'https', port: '9876', host: 'CLOUDNAME'} + OctaviaPublic: {protocol: 'https', port: '13876', host: 'CLOUDNAME'} + SwiftAdmin: {protocol: 'https', port: '8080', host: 'CLOUDNAME'} + SwiftInternal: {protocol: 'https', port: '8080', host: 'CLOUDNAME'} + SwiftPublic: {protocol: 'https', port: '13808', host: 'CLOUDNAME'} + TrilioDatamoverAdmin: {protocol: 'https', port: '8784', host: 'CLOUDNAME'} + TrilioDatamoverInternal: {protocol: 'https', port: '8784', host: 'CLOUDNAME'} + TrilioDatamoverPublic: {protocol: 'https', port: '13784', host: 'CLOUDNAME'} + diff --git a/redhat-director-scripts/rhosp17.0/environments/trilio_nfs_map.yaml b/redhat-director-scripts/rhosp17.0/environments/trilio_nfs_map.yaml new file mode 100644 index 000000000..4e980b4c4 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/environments/trilio_nfs_map.yaml @@ -0,0 +1,4 @@ +# TrilioDatamoverNfsMap represents datamover node (compute node) and it's NFS share mapping. +# NFS share is a backup target of TrilioVault +parameter_defaults: + TrilioDatamoverNfsMap: diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/.gitignore b/redhat-director-scripts/rhosp17.0/puppet/trilio/.gitignore new file mode 100644 index 000000000..b3c5c017f --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/.gitignore @@ -0,0 +1,11 @@ +pkg/ +Gemfile.lock +.bundle/ +.rspec_system/ +.*.sw* +/spec/fixtures/.librarian +/spec/fixtures/.tmp +/spec/fixtures/Puppetfile.lock +/spec/fixtures/modules +/spec/fixtures/manifests +/spec/fixtures/vendor diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/Gemfile b/redhat-director-scripts/rhosp17.0/puppet/trilio/Gemfile new file mode 100644 index 000000000..7bd34cda7 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/Gemfile @@ -0,0 +1,7 @@ +source 'https://rubygems.org' + +puppetversion = ENV.key?('PUPPET_VERSION') ? "= #{ENV['PUPPET_VERSION']}" : ['>= 3.3'] +gem 'puppet', puppetversion +gem 'puppetlabs_spec_helper', '>= 0.1.0' +gem 'puppet-lint', '>= 0.3.2' +gem 'facter', '>= 1.7.0' diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/Puppetfile b/redhat-director-scripts/rhosp17.0/puppet/trilio/Puppetfile new file mode 100644 index 000000000..7e993b4f4 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/Puppetfile @@ -0,0 +1 @@ +mod 'stankevich-python', '1.19.0' diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/README.md b/redhat-director-scripts/rhosp17.0/puppet/trilio/README.md new file mode 100644 index 000000000..70d37f0df --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/README.md @@ -0,0 +1,79 @@ +# trilio + +#### Table of Contents + +1. [Overview](#overview) +2. [Module Description - What the module does and why it is useful](#module-description) +3. [Setup - The basics of getting started with trilio](#setup) + * [What trilio affects](#what-trilio-affects) + * [Setup requirements](#setup-requirements) + * [Beginning with trilio](#beginning-with-trilio) +4. [Usage - Configuration options and additional functionality](#usage) +5. [Reference - An under-the-hood peek at what the module is doing and how](#reference) +5. [Limitations - OS compatibility, etc.](#limitations) +6. [Development - Guide for contributing to the module](#development) + +## Overview + +A one-maybe-two sentence summary of what the module does/what problem it solves. +This is your 30 second elevator pitch for your module. Consider including +OS/Puppet version it works with. + +## Module Description + +If applicable, this section should have a brief description of the technology +the module integrates with and what that integration enables. This section +should answer the questions: "What does this module *do*?" and "Why would I use +it?" + +If your module has a range of functionality (installation, configuration, +management, etc.) this is the time to mention it. + +## Setup + +### What trilio affects + +* A list of files, packages, services, or operations that the module will alter, + impact, or execute on the system it's installed on. +* This is a great place to stick any warnings. +* Can be in list or paragraph form. + +### Setup Requirements **OPTIONAL** + +If your module requires anything extra before setting up (pluginsync enabled, +etc.), mention it here. + +### Beginning with trilio + +The very basic steps needed for a user to get the module up and running. + +If your most recent release breaks compatibility or requires particular steps +for upgrading, you may wish to include an additional section here: Upgrading +(For an example, see http://forge.puppetlabs.com/puppetlabs/firewall). + +## Usage + +Put the classes, types, and resources for customizing, configuring, and doing +the fancy stuff with your module here. + +## Reference + +Here, list the classes, types, providers, facts, etc contained in your module. +This section should include all of the under-the-hood workings of your module so +people know what the module is touching on their system but don't need to mess +with things. (We are working on automating this section!) + +## Limitations + +This is where you list OS compatibility, version compatibility, etc. + +## Development + +Since your module is awesome, other users will want to play with it. Let them +know what the ground rules for contributing are. + +## Release Notes/Contributors/Etc **Optional** + +If you aren't using changelog, put your release notes here (though you should +consider using changelog). You may also add any additional sections you feel are +necessary or important to include here. Please use the `## ` header. diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/Rakefile b/redhat-director-scripts/rhosp17.0/puppet/trilio/Rakefile new file mode 100644 index 000000000..d1e11f798 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/Rakefile @@ -0,0 +1,18 @@ +require 'rubygems' +require 'puppetlabs_spec_helper/rake_tasks' +require 'puppet-lint/tasks/puppet-lint' +PuppetLint.configuration.send('disable_80chars') +PuppetLint.configuration.ignore_paths = ["spec/**/*.pp", "pkg/**/*.pp"] + +desc "Validate manifests, templates, and ruby files" +task :validate do + Dir['manifests/**/*.pp'].each do |manifest| + sh "puppet parser validate --noop #{manifest}" + end + Dir['spec/**/*.rb','lib/**/*.rb'].each do |ruby_file| + sh "ruby -c #{ruby_file}" unless ruby_file =~ /spec\/fixtures/ + end + Dir['templates/**/*.erb'].each do |template| + sh "erb -P -x -T '-' #{template} | ruby -c" + end +end diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_amazons3.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_amazons3.pp new file mode 100644 index 000000000..1e702ffbe --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_amazons3.pp @@ -0,0 +1,19 @@ +class trilio { + + class {'trilio::contego': + nova_conf_file => '/etc/nova/nova.conf', + nova_dist_conf_file => '/usr/share/nova/nova-dist.conf', + backup_target_type => 's3', + tvault_appliance_ip => '192.168.1.26', + redhat_openstack_version => '9', + s3_type => 'amazon_s3', ##Other values: ceph_s3, minio_s3 + s3_accesskey => '', + s3_secretkey => '', + s3_region_name => 'us-east-2', + s3_bucket => '', + s3_endpoint_url => undef, + s3_ssl_enabled => 'True', + s3_signature_version => 's3v4', + } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_nfs.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_nfs.pp new file mode 100644 index 000000000..ba9dcdd3f --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_nfs.pp @@ -0,0 +1,13 @@ +class trilio { + + class {'trilio::contego': + nova_conf_file => '/etc/nova/nova.conf', + nova_dist_conf_file => '/usr/share/nova/nova-dist.conf', + backup_target_type => 'nfs', + nfs_shares => '192.168.1.33:/mnt/tvault', + nfs_options => 'nolock,soft,timeo=180,intr', + tvault_appliance_ip => '192.168.1.26', + redhat_openstack_version => '9', + } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_s3.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_s3.pp new file mode 100644 index 000000000..af768a073 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_s3.pp @@ -0,0 +1,19 @@ +class trilio { + + class {'trilio::contego': + nova_conf_file => '/etc/nova/nova.conf', + nova_dist_conf_file => '/usr/share/nova/nova-dist.conf', + backup_target_type => 's3', + tvault_appliance_ip => '192.168.1.26', + redhat_openstack_version => '9', + s3_type => 'amazon_s3', ##Other values: ceph_s3, minio_s3 + s3_accesskey => '', + s3_secretkey => '', + s3_region_name => '', + s3_bucket => '', + s3_endpoint_url => undef, + s3_ssl_enabled => 'True', + s3_signature_version => 's3v4', + } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_swift.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_swift.pp new file mode 100644 index 000000000..aa7ca868a --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/init_swift.pp @@ -0,0 +1,20 @@ +class trilio { + + class {'trilio::contego': + nova_conf_file => '/etc/nova/nova.conf', + nova_dist_conf_file => '/usr/share/nova/nova-dist.conf', + backup_target_type => 'swift', + tvault_appliance_ip => '192.168.1.26', + redhat_openstack_version => '9', + swift_auth_version => 'keystone_v2', + swift_auth_url => 'http://192.168.1.21:5000/v2.0', + swift_tenant => 'admin', + swift_username => 'admin', + swift_password => 'password', + swift_domain_id => 'default', + swift_domain_name => 'Default', + swift_region_name => 'RegionOne', + + } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/site_config.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/site_config.pp new file mode 100644 index 000000000..25df7b35d --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/examples/site_config.pp @@ -0,0 +1,72 @@ +node 'RHEL-newton-controller' { +# class {'trilio::horizon': +# tvault_version => '3.0.32', +# tvault_virtual_ip => '192.168.13.3', +# } + + + +# class {'trilio::api': +# tvault_version => '3.0.32', +# tvault_virtual_ip => '192.168.13.3', +# } + + class {'trilio::config': + tvault_version => '3.0.35', + redhat_openstack_version => '10', + configurator_node_ip => '192.168.15.32', + configurator_username => 'admin', + configurator_password => 'password', + controller_nodes => "192.168.15.32=shyam-node1", + tvault_virtual_ip => '192.168.15.38', + name_server => '8.8.8.8', + domain_search_order => 'triliodata.demo', + ntp_enabled => 'on', + ntp_servers => '0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org', + timezone => 'Etc/UTC', + keystone_admin_url => 'http://192.168.1.68:35357/v3', + keystone_public_url => 'http://192.168.1.68:5000/v3', + admin_username => 'admin', + admin_password => 'password', + admin_tenant_name => 'admin', + region_name => 'RegionOne', + domain_id => 'default', + trustee_role => '_member_', + backup_target_type => 'NFS', + storage_nfs_export => '192.168.1.33:/mnt/tvault', + nfs_options => "nolock,soft,timeo=180,intr", + swift_auth_version => undef, + swift_auth_url => undef, + swift_username => undef, + swift_password => undef, + s3_type => undef, + s3_accesskey => undef, + s3_secretkey => undef, + s3_bucket => undef, + s3_region_name => undef, + s3_endpoint_url => undef, + s3_ssl_enabled => False, + s3_signature_version => 's3v4', + enable_tls => 'off', + cert_file_path => undef, + privatekey_file_path => undef, + import_workloads => 'off', + } + +} + + +node 'RHEL-newton-compute' { + + /*class {'trilio::contego': + tvault_version => '3.0.32', + tvault_virtual_ip => '192.168.13.3', + nfs_shares => '192.168.1.33:/mnt/tvault,192.168.1.34:/mnt/tvault', + }*/ + #$test=file('/tmp/test.txt') + /*class {'trilio::testfile': + test = file('/tmp/test.txt')*/ + # notify { $test: } + + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/files/cpu.shares b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/cpu.shares new file mode 100644 index 000000000..d7b1c440c --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/cpu.shares @@ -0,0 +1 @@ +1024 diff --git a/kolla-ansible/trilio-datamover/log-rotate-conf b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/log_rotate_conf similarity index 100% rename from kolla-ansible/trilio-datamover/log-rotate-conf rename to redhat-director-scripts/rhosp17.0/puppet/trilio/files/log_rotate_conf diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/files/mc b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/mc new file mode 100644 index 000000000..983dae804 Binary files /dev/null and b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/mc differ diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/files/s3-cert.pem b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/s3-cert.pem new file mode 100644 index 000000000..e69de29bb diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/files/sync_static.py b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/sync_static.py new file mode 100644 index 000000000..e5a5a1033 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/sync_static.py @@ -0,0 +1,8 @@ +import settings +import subprocess +ls = settings.openstack_dashboard.settings.INSTALLED_APPS +data = "" +for app in ls: + if app != 'dashboards': + data += "-i "+str(app)+" " +subprocess.call("./manage.py collectstatic --noinput "+data) diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/files/test_s3.py b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/test_s3.py new file mode 100644 index 000000000..cc6b9f43b --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/test_s3.py @@ -0,0 +1,8 @@ +from boto.s3.connection import S3Connection +import sys + +access_key = sys.argv[1] +secret_key = sys.argv[2] + +conn = S3Connection(access_key, secret_key) +response = conn.get_all_buckets() diff --git a/kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel.py b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_admin_panel.py similarity index 100% rename from kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel.py rename to redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_admin_panel.py diff --git a/kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel_group.py b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_admin_panel_group.py similarity index 95% rename from kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel_group.py rename to redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_admin_panel_group.py index 9d8429742..8b26a91b6 100644 --- a/kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_admin_panel_group.py +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_admin_panel_group.py @@ -5,4 +5,3 @@ PANEL_GROUP_NAME = _('Backups-Admin') # The slug of the dashboard the PANEL_GROUP associated with. Required. PANEL_GROUP_DASHBOARD = 'admin' -DISABLED = False diff --git a/kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/templatetags/tvault_filter.py b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_filter.py similarity index 100% rename from kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/templatetags/tvault_filter.py rename to redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_filter.py diff --git a/kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel.py b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_panel.py similarity index 100% rename from kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel.py rename to redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_panel.py diff --git a/kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel_group.py b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_panel_group.py similarity index 95% rename from kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel_group.py rename to redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_panel_group.py index ea77c0bcd..96e8f3746 100644 --- a/kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_panel_group.py +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_panel_group.py @@ -5,4 +5,3 @@ PANEL_GROUP_NAME = _('Backups') # The slug of the dashboard the PANEL_GROUP associated with. Required. PANEL_GROUP_DASHBOARD = 'project' -DISABLED = False diff --git a/kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_settings_panel.py b/redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_settings_panel.py similarity index 100% rename from kolla-ansible/trilio-horizon-plugin/usr/share/openstack-dashboard/openstack_dashboard/local/enabled/tvault_settings_panel.py rename to redhat-director-scripts/rhosp17.0/puppet/trilio/files/tvault_settings_panel.py diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/lib/facter/env.rb b/redhat-director-scripts/rhosp17.0/puppet/trilio/lib/facter/env.rb new file mode 100644 index 000000000..cc77fc468 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/lib/facter/env.rb @@ -0,0 +1,57 @@ +Facter.add(:which_cryptography) do + setcode do + result = Facter::Core::Execution::exec("python -c 'import cryptography;print cryptography.__path__[0]'") + result + end +end + +Facter.add(:which_libvirt) do + setcode do + result = Facter::Core::Execution::exec("python -c 'import libvirtmod;print libvirtmod.__file__'") + result + end +end + +Facter.add(:which_cffi) do + setcode do + result = Facter::Core::Execution::exec("python -c 'import cffi;print cffi.__path__[0]'") + result + end +end + +Facter.add(:which_cffi_so) do + setcode do + result = Facter::Core::Execution::exec("python -c 'import _cffi_backend;print _cffi_backend.__file__'") + result + end +end + + +Facter.add(:is_cpu_exists) do + setcode do + Facter::Core::Execution::exec("/usr/bin/test -d /sys/fs/cgroup/cpu") + $?.exitstatus == 0 + end +end + +Facter.add(:is_blkio_exists) do + setcode do + Facter::Core::Execution::exec("/usr/bin/test -d /sys/fs/cgroup/blkio") + $?.exitstatus == 0 + end +end + +Facter.add(:is_trilio_exists) do + setcode do + Facter::Core::Execution::exec("/usr/bin/test -d /sys/fs/cgroup/cpu/trilio") + $?.exitstatus == 0 + end +end + +contego_version = %x{/bin/rpm -q --queryformat "%{VERSION}" tvault-contego} + +Facter.add(:contego_installed_version) do + setcode do + contego_version + end +end diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/config.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/config.pp new file mode 100644 index 000000000..b3238d622 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/config.pp @@ -0,0 +1,94 @@ +class trilio::config ( + $tvault_version = undef, + $redhat_openstack_version = '10', + $configurator_node_ip = undef, + $configurator_username = 'admin', + $configurator_password = 'password', + $controller_nodes = undef, + $tvault_virtual_ip = undef, + $name_server = undef, + $domain_search_order = undef, + $ntp_enabled = 'on', + $ntp_servers = '0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org', + $timezone = 'Etc/UTC', + $keystone_admin_url = undef, + $keystone_public_url = undef, + $admin_username = undef, + $admin_password = undef, + $admin_tenant_name = undef, + $region_name = undef, + $domain_id = undef, + $trustee_role = '_member_', + $backup_target_type = undef, + $storage_nfs_export = undef, + $nfs_options = 'nolock,soft,timeo=180,intr', + $swift_auth_version = undef, + $swift_auth_url = undef, + $swift_username = undef, + $swift_password = undef, + $s3_type = undef, + $s3_accesskey = undef, + $s3_secretkey = undef, + $s3_bucket = undef, + $s3_region_name = undef, + $s3_endpoint_url = undef, + $s3_ssl_enabled = False, + $s3_signature_version = 's3v4', + $enable_tls = 'off', + $cert_file_path = undef, + $privatekey_file_path = undef, + $import_workloads = 'off', +){ + + $create_file_system="off" + $storage_local_device="/dev/sdb" + $_cert="" + $_private_key="" + if $enable_tls == "on" { + $_cert=file($cert_file_path) + $_private_key=file($privatekey_file_path) + } + + exec { 'trilio configuration: login to configurator': + command => "curl -k --cookie-jar $cookie --data 'username=$configurator_username&password=$configurator_password' 'https://$configurator_node_ip/login'", + cwd => "/tmp/", + provider => shell, + path => ['/usr/bin','/usr/sbin'], + }-> + + exec { 'trilio configuration: configure openstack': + command => "curl -k --cookie $cookie --data 'triliovault-hostnames=$controller_nodes&virtual-ip=$tvault_virtual_ip& admin-username=$admin_username&admin-password=$admin_password&admin-tenant-name=$admin_tenant_name &keystone-admin-url=$keystone_admin_url&keystone-public-url=$keystone_public_url&name-server=$name_server&domain-search-order =$domain_search_order®ion-name=$region_name&backup_target_type=$backup_target_type&create-file-system=$create_file_system&storage-local-device=$storage_local_device&storage-nfs-export=$storage_nfs_export&swift-auth-version=$swift_auth_version&swift-auth-url =$swift_auth_url&domain-name=$domain_id&ntp-enabled=$ntp_enabled&ntp-servers=$ntp_servers&timezone=$timezone &trustee-role=$trustee_role&swift-username =$swift_username&swift-password =$swift_password&enable_tls=$enable_tls&cert=$_cert &privatekey=$_private_key&s3-access-key=$s3_access_key&s3-secret-key=$s3_secret_key&s3-region=$s3_region_name&s3-bucket =$s3_bucket&s3-endpoint-url=$s3_endpoint_url&s3-use-ssl=$s3_ssl_enabled&s3-backend-type=$s3_type&workloads-import=$import_workloads ' 'https://$configurator_node_ip /configure_openstack'", + cwd => "/tmp/", + provider => shell, + path => ['/usr/bin','/usr/sbin'], + }-> + + exec { 'trilio configuration: populate variables': + command => "curl -k --cookie '$cookie' 'https://$configurator_node_ip/populate_variables'", + cwd => "/tmp/", + provider => shell, + path => ['/usr/bin','/usr/sbin'], + }-> + + exec { 'trilio configuration: configure host': + command => "curl -k --cookie '$cookie' 'https://$configurator_node_ip/configure_host'", + cwd => "/tmp/", + provider => shell, + path => ['/usr/bin','/usr/sbin'], + }-> + + exec { 'trilio configuration: configure workloadmgr': + command => "curl -k --cookie '$cookie' 'https://$configurator_node_ip/configure_workloadmgr'", + cwd => "/tmp/", + provider => shell, + path => ['/usr/bin','/usr/sbin'], + }-> + + exec { 'trilio configuration: register workload types': + command => "curl -k --cookie '$cookie' 'https://$configurator_node_ip/register_workloadtypes'", + cwd => "/tmp/", + provider => shell, + path => ['/usr/bin','/usr/sbin'], + } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego.pp new file mode 100644 index 000000000..cc104b747 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego.pp @@ -0,0 +1,65 @@ +class trilio::contego ( + $backup_target_type = 'nfs', + $nfs_shares = undef, + $nfs_options = 'nolock,soft,timeo=180,intr', + $s3_type = 'amazon_s3', + $s3_accesskey = undef, + $s3_secretkey = undef, + $s3_region_name = undef, + $s3_bucket = undef, + $s3_endpoint_url = undef, + $s3_signature_version = 'default', + $s3_auth_version = 'DEFAULT', + $s3_ssl_enabled = 'False', + $s3_ssl_cert = undef, + $database_connection = undef, + $oslomsg_rpc_proto = hiera('oslo_messaging_rpc_scheme', 'rabbit'), + $oslomsg_rpc_hosts = any2array(hiera('oslo_messaging_rpc_node_names', undef)), + $oslomsg_rpc_password = hiera('oslo_messaging_rpc_password'), + $oslomsg_rpc_port = hiera('oslo_messaging_rpc_port', '5672'), + $oslomsg_rpc_username = hiera('oslo_messaging_rpc_user_name', 'guest'), + $oslomsg_rpc_use_ssl = hiera('oslo_messaging_rpc_use_ssl', '0'), + $cinder_backend_ceph = false, + $ceph_cinder_user = 'openstack', + $cinder_http_retries = 10, + $nfs_map = {}, + $multi_ip_nfs_enabled = false, + $libvirt_images_rbd_ceph_conf = '/etc/ceph/ceph.conf', +) { + + + $contego_user = 'nova' + $contego_group = 'nova' + $contego_conf_file = "/etc/tvault-contego/tvault-contego.conf" + $contego_groups = ['kvm','qemu','disk'] + $vault_data_dir = "/var/lib/nova/triliovault-mounts" + $vault_data_dir_old = "/var/triliovault" + $contego_dir = "/home/tvault" + $contego_virtenv_dir = "${contego_dir}/.virtenv" + $log_dir = "/var/log/nova" + $contego_bin = "${contego_virtenv_dir}/bin/tvault-contego" + $contego_python = "${contego_virtenv_dir}/bin/python" + $config_files = "--config-file=${nova_dist_conf_file} --config-file=${nova_conf_file} --config-file=${contego_conf_file}" + + + if $redhat_openstack_version == '9' { + $openstack_release = 'mitaka' + } + elsif $redhat_openstack_version == '10' { + $openstack_release = 'newton' + } + else { + $openstack_release = 'premitaka' + } + + +##Set object_store_ext + + if $backup_target_type == 's3' { + $contego_ext_object_store = "${contego_virtenv_dir}/lib/python2.7/site-packages/contego/nova/extension/driver/s3vaultfuse.py" + + } + + class {'trilio::contego::config': } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/cgroup.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/cgroup.pp new file mode 100644 index 000000000..a033a79aa --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/cgroup.pp @@ -0,0 +1,49 @@ +class trilio::contego::cgroup inherits trilio::contego { + + + if "${is_cpu_exists}" == "true" { + if "${is_trilio_exists}" != "true" { + file { "/sys/fs/cgroup/cpu/trilio/cpu.shares": + ensure => 'directory', + owner => $contego_user, + group => $contego_group, + mode => '0644', + source => 'puppet:///modules/trilio/cpu.shares', + require => File["/sys/fs/cgroup/cpu/trilio"], + } + } + file { "/sys/fs/cgroup/cpu/trilio": + ensure => 'directory', + owner => $contego_user, + group => $contego_group, + mode => '0644', + recurse => true, + before => Exec['Change ownership of trilio dir'], + } + + exec { 'Change ownership of trilio dir': + command => "/usr/bin/chown -R ${contego_user}:${contego_group} /sys/fs/cgroup/cpu/trilio/", + path => ['/usr/bin','/usr/sbin','/usr/local/bin'], + } + + } + + + + if "${is_blkio_exists}" == "true" { + file { "/sys/fs/cgroup/blkio/trilio": + ensure => 'directory', + owner => $contego_user, + group => $contego_group, + mode => '0644', + recurse => true, + } -> + + exec { 'Change ownership of trilio blkio dir': + command => "/usr/bin/chown -R ${contego_user}:${contego_group} /sys/fs/cgroup/blkio/trilio/", + path => ['/usr/bin','/usr/sbin','/usr/local/bin'], + } + + } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/config.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/config.pp new file mode 100644 index 000000000..a09a9730c --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/config.pp @@ -0,0 +1,55 @@ +class trilio::contego::config inherits trilio::contego { + tag 'dmconfig' + + + $oslomsg_rpc_use_ssl_real = sprintf('%s', bool2num(str2bool($oslomsg_rpc_use_ssl))) + $default_transport_url = os_transport_url({ + 'transport' => $oslomsg_rpc_proto, + 'hosts' => $oslomsg_rpc_hosts, + 'port' => $oslomsg_rpc_port, + 'username' => $oslomsg_rpc_username, + 'password' => $oslomsg_rpc_password, + 'ssl' => $oslomsg_rpc_use_ssl_real, + }) + + + file { '/etc/tvault-contego/': + ensure => 'directory', + } + + if $backup_target_type == 'nfs' { + file { "/etc/tvault-contego/tvault-contego.conf": + ensure => present, + content => template('trilio/contego_nfs_conf.erb'), + } + } + elsif $backup_target_type == 's3' { + if $s3_type == 'amazon_s3' { + file { "/etc/tvault-contego/tvault-contego.conf": + ensure => present, + content => template('trilio/contego_amazon_s3_conf.erb'), + } + } + elsif $s3_type == 'ceph_s3' { + file { "/etc/tvault-contego/tvault-contego.conf": + ensure => present, + content => template('trilio/contego_ceph_s3_conf.erb'), + } + } + else { + fail("s3_type is not valid") + } + } + else { + fail("backup_target_type is not valid") + } + + file { "/etc/tvault-contego/s3-cert.pem": + ensure => 'present', + owner => '42436', + group => '42436', + mode => '0644', + source => 'puppet:///modules/trilio/s3-cert.pem', + } +} + diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/install.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/install.pp new file mode 100644 index 000000000..99d4946c4 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/install.pp @@ -0,0 +1,30 @@ +class trilio::contego::install inherits trilio::contego { + + + user { 'Add_nova_user_to_system_groups': + name => $contego_user, + ensure => present, + gid => $contego_group, + groups => $contego_groups, + }-> + file { "/var/triliovault": + ensure => 'directory', + mode => 0777, + owner => $contego_user, + group => $contego_group, + }-> + + file { "/var/triliovault-mounts": + ensure => 'directory', + mode => 0777, + owner => $contego_user, + group => $contego_group, + } + + package { 'tvault-contego': + ensure => present, + provider => 'yum', + notify => Service['tvault-contego'], + } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/postinstall.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/postinstall.pp new file mode 100644 index 000000000..78d1bbf42 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/postinstall.pp @@ -0,0 +1,118 @@ +class trilio::contego::postinstall inherits trilio::contego { + + require trilio::contego::install + + if $openstack_release == "newton" { + file { "$contego_dir/.virtenv/lib/python2.7/site-packages/cryptography": + ensure => 'link', + target => $which_cryptography, + force => yes, + } + + file { "$contego_dir/.virtenv/lib/python2.7/site-packages/cffi": + ensure => 'link', + target => $which_cffi, + force => yes, + } + + + file { "Copy libvirtmod so file": + source => $which_libvirt, + path => "$contego_dir/.virtenv/lib/python2.7/site-packages/libvirtmod.so", + } + + file { 'Copy cffi so file': + source => $which_cffi_so, + path => "$contego_dir/.virtenv/lib/python2.7/site-packages/_cffi_backend.so", + } + } + + + +## Adding passwordless sudo access to 'nova' user + file { "/etc/sudoers.d/triliovault_${contego_user}": + ensure => present, + }-> + file_line { 'Adding passwordless sudo access to nova user': + path => "/etc/sudoers.d/triliovault_${contego_user}", + line => "${contego_user} ALL=(ALL) NOPASSWD: ALL", + } + + +##Create /etc/tvault-contego/ directory and tvault-contego.conf + file { '/etc/tvault-contego/': + ensure => 'directory', + } + +##Create contego conf file + + if $backup_target_type == 'nfs' { + file { "/etc/tvault-contego/tvault-contego.conf": + ensure => present, + content => template('trilio/contego_nfs_conf.erb'), + } + } + elsif $backup_target_type == 's3' { + if $s3_type == 'amazon_s3' { + file { "/etc/tvault-contego/tvault-contego.conf": + ensure => present, + content => template('trilio/contego_amazon_s3_conf.erb'), + } + } + elsif $s3_type == 'ceph_s3' { + file { "/etc/tvault-contego/tvault-contego.conf": + ensure => present, + content => template('contego_ceph_s3_conf.erb'), + } + } + else { + fail("s3_type is not valid") + } + } + else { + fail("backup_target_type is not valid") + } + +##Create log rorate file for contego log rotation: /etc/logrotate.d/tvault-contego + file { '/etc/logrotate.d/tvault-contego': + source => 'puppet:///modules/trilio/log_rotate_conf', + } + +##Create systemd file for tvault-contego service: /etc/systemd/system/tvault-contego.service + + file { '/etc/systemd/system/tvault-contego.service': + ensure => present, + content => template('trilio/contego_systemd_conf.erb'), + } + + + if $backup_target_type == 's3' { + file { '/etc/systemd/system/tvault-object-store.service': + ensure => present, + content => template('trilio/object_store_systemd_conf.erb'), + } + + exec { 'daemon_reload_for_object_store': + cwd => '/tmp', + command => 'systemctl daemon-reload', + path => ['/usr/bin', '/usr/sbin',], + subscribe => File['/etc/systemd/system/tvault-object-store.service'], + notify => [Service['tvault-contego'], Service['tvault-object-store']], + refreshonly => true, + } + + } + + +##Perform daemon reload if any changes happens in contego systemd file + exec { 'daemon_reload_for_contego': + cwd => '/tmp', + command => 'systemctl daemon-reload', + path => ['/usr/bin', '/usr/sbin',], + subscribe => File['/etc/systemd/system/tvault-contego.service'], + notify => Service['tvault-contego'], + refreshonly => true, + } + + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/service.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/service.pp new file mode 100644 index 000000000..4fd16eb78 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/contego/service.pp @@ -0,0 +1,26 @@ +class trilio::contego::service inherits trilio::contego { + + require trilio::contego::install + require trilio::contego::postinstall + require trilio::contego::cgroup + + if ($backup_target_type == 'swift') or ($backup_target_type == 's3') { + service { 'tvault-object-store': + ensure => running, + enable => true, + hasstatus => true, + hasrestart => true, + subscribe => [Exec['daemon_reload_for_contego'], File['/etc/tvault-contego/tvault-contego.conf']], + before => Service['tvault-contego'], + } + } + + service { 'tvault-contego': + ensure => running, + enable => true, + hasstatus => true, + hasrestart => true, + subscribe => File['/etc/tvault-contego/tvault-contego.conf'] + } + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/db/mysql.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/db/mysql.pp new file mode 100644 index 000000000..724318b47 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/db/mysql.pp @@ -0,0 +1,55 @@ +# The trilio::db::mysql class implements mysql backend for trilio datamover api service +# +# This class can be used to create tables, users and grant +# privileges for a mysql dmapi database. +# +# == Parameters +# +# [*password*] +# (Required) Password to connect to the database. +# +# [*dbname*] +# (Optional) Name of the database. +# Defaults to 'dmapi'. +# +# [*user*] +# (Optional) User to connect to the database. +# Defaults to 'dmapi'. +# +# [*host*] +# (Optional) The default source host user is allowed to connect from. +# Defaults to '127.0.0.1' +# +# [*allowed_hosts*] +# (Optional) Other hosts the user is allowed to connect from. +# Defaults to 'undef'. +# +# [*charset*] +# (Optional) The database charset. +# Defaults to 'utf8' +# +# [*collate*] +# (Optional) The database collate. +# Only used with mysql modules >= 2.2. +# Defaults to 'utf8_general_ci' +# +class trilio::db::mysql( + $password, + $dbname = 'dmapi', + $user = 'dmapi', + $host = '127.0.0.1', + $charset = 'utf8', + $collate = 'utf8_general_ci', + $allowed_hosts = undef +) { + + ::openstacklib::db::mysql { 'dmapi': + user => $user, + password_hash => mysql::password($password), + dbname => $dbname, + host => $host, + charset => $charset, + collate => $collate, + allowed_hosts => $allowed_hosts, + } +} \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/dmapi.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/dmapi.pp new file mode 100644 index 000000000..6018b03ef --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/dmapi.pp @@ -0,0 +1,34 @@ +class trilio::dmapi ( + $password, + $dmapi_port = '8784', + $dmapi_ssl_port = '13784', + $dmapi_enable_ssl = false, + $oslomsg_rpc_proto = hiera('oslo_messaging_rpc_scheme', 'rabbit'), + $oslomsg_rpc_hosts = any2array(hiera('oslo_messaging_rpc_node_names', undef)), + $oslomsg_rpc_password = hiera('oslo_messaging_rpc_password'), + $oslomsg_rpc_port = hiera('oslo_messaging_rpc_port', '5672'), + $oslomsg_rpc_username = hiera('oslo_messaging_rpc_user_name', 'guest'), + $oslomsg_rpc_use_ssl = hiera('oslo_messaging_rpc_use_ssl', '0'), + $oslomsg_notify_proto = hiera('oslo_messaging_notify_scheme', 'rabbit'), + $oslomsg_notify_hosts = any2array(hiera('oslo_messaging_notify_node_names', undef)), + $oslomsg_notify_password = hiera('oslo_messaging_notify_password'), + $oslomsg_notify_port = hiera('oslo_messaging_notify_port', '5672'), + $oslomsg_notify_username = hiera('oslo_messaging_notify_user_name', 'guest'), + $oslomsg_notify_use_ssl = hiera('oslo_messaging_notify_use_ssl', '0'), + $memcached_ips = hiera('memcached_node_ips', undef), + $my_ip = undef, + $database_connection = undef, + $project_domain_name = 'Default', + $project_name = 'service', + $user_domain_name = 'Default', + $auth_url = undef, + $auth_uri = undef, + $region_name = 'regionOne', + $notification_driver = 'messagingv2', + $enable_proxy_headers_parsing = false, + $dmapi_workers = 16, +) { + tag 'dmapiconfig' + + class {'trilio::dmapi::config':} +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/dmapi/config.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/dmapi/config.pp new file mode 100644 index 000000000..ccdd5e647 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/dmapi/config.pp @@ -0,0 +1,36 @@ +class trilio::dmapi::config inherits trilio::dmapi { + tag 'dmapiconfig' + + + $oslomsg_rpc_use_ssl_real = sprintf('%s', bool2num(str2bool($oslomsg_rpc_use_ssl))) + $oslomsg_notify_use_ssl_real = sprintf('%s', bool2num(str2bool($oslomsg_notify_use_ssl))) + + $default_transport_url = os_transport_url({ + 'transport' => $oslomsg_rpc_proto, + 'hosts' => $oslomsg_rpc_hosts, + 'port' => $oslomsg_rpc_port, + 'username' => $oslomsg_rpc_username, + 'password' => $oslomsg_rpc_password, + 'ssl' => $oslomsg_rpc_use_ssl_real, + }) + + $notification_transport_url = os_transport_url({ + 'transport' => $oslomsg_notify_proto, + 'hosts' => $oslomsg_notify_hosts, + 'port' => $oslomsg_notify_port, + 'username' => $oslomsg_notify_username, + 'password' => $oslomsg_notify_password, + 'ssl' => $oslomsg_notify_use_ssl_real, + }) + + $memcached_servers = join(suffix(any2array(normalize_ip_for_uri($memcached_ips)), ':11211'), ',') + + file { '/etc/dmapi/': + ensure => 'directory', + } -> + file { "/etc/dmapi/dmapi.conf": + ensure => present, + content => template('trilio/dmapi.erb'), + } + +} \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/horizon.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/horizon.pp new file mode 100644 index 000000000..ff90aaf65 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/horizon.pp @@ -0,0 +1,32 @@ +class trilio::horizon ( + $horizon_dir = '/etc/openstack-dashboard', + $barbican_api_enabled = hiera('barbican_api_enabled', false), +){ + + tag 'triliohorizonconfig' + + if $barbican_api_enabled { + file_line { "ENABLE OPENSTACK_ENCRYPTION_SUPPORT": + ensure => present, + path => "${horizon_dir}/local_settings", + line => 'OPENSTACK_ENCRYPTION_SUPPORT = True', + match => '^OPENSTACK_ENCRYPTION_SUPPORT', + } + } + else { + file_line { "DISABLE OPENSTACK_ENCRYPTION_SUPPORT": + ensure => present, + path => "${horizon_dir}/local_settings", + line => 'OPENSTACK_ENCRYPTION_SUPPORT = False', + match => '^OPENSTACK_ENCRYPTION_SUPPORT', + } + } + + + file_line { "ENABLE TRILIO_ENCRYPTION_SUPPORT": + ensure => present, + path => "${horizon_dir}/local_settings", + line => 'TRILIO_ENCRYPTION_SUPPORT = True', + match => '^TRILIO_ENCRYPTION_SUPPORT', + } +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/init.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/init.pp new file mode 100644 index 000000000..3f6a991b1 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/init.pp @@ -0,0 +1,4 @@ +class trilio { + + +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/keystone/auth.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/keystone/auth.pp new file mode 100644 index 000000000..81a65687d --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/keystone/auth.pp @@ -0,0 +1,110 @@ +# == Class: trilio::keystone::auth +# +# Configures trilio user, service and endpoint in Keystone. +# +# === Parameters +# +# [*password*] +# Password for trilio user. Required. +# +# [*email*] +# Email for trilio user. Optional. Defaults to 'trilio@localhost'. +# +# +# [*auth_name*] +# Username for trilio service. Optional. Defaults to 'trilio'. +# +# +# [*configure_endpoint*] +# Should trilio endpoint be configured? Optional. Defaults to 'true'. +# API v1 endpoint should be enabled in Icehouse for compatibility with Nova. +# +# +# [*configure_user*] +# Should the service user be configured? Optional. Defaults to 'true'. +# +# +# [*configure_user_role*] +# Should the admin role be configured for the service user? +# Optional. Defaults to 'true'. +# +# +# [*service_name*] +# (optional) Name of the service. +# Defaults to 'trilio'. +# +# +# [*service_type*] +# Type of service. Optional. Defaults to 'volume'. +# +# +# [*service_description*] +# (optional) Description for keystone service. +# Defaults to 'trilio Service'. +# +# +# [*region*] +# Region for endpoint. Optional. Defaults to 'RegionOne'. +# +# [*tenant*] +# Tenant for trilio user. Optional. Defaults to 'services'. +# +# [*public_url*] +# (optional) The endpoint's public url. (Defaults to 'http://127.0.0.1:8784/v2') +# This url should *not* contain any trailing '/'. +# +# [*internal_url*] +# (optional) The endpoint's internal url. (Defaults to 'http://127.0.0.1:8784/v2') +# This url should *not* contain any trailing '/'. +# +# [*admin_url*] +# (optional) The endpoint's admin url. (Defaults to 'http://127.0.0.1:8784/v2') +# This url should *not* contain any trailing '/'. +# + +# +# === Examples +# +# class { 'trilio::keystone::auth': +# public_url => 'https://10.0.0.10:8784/v2', +# internal_url => 'https://10.0.0.20:8784/v2', +# admin_url => 'https://10.0.0.30:8784/v2', +# } +# + + +class trilio::keystone::auth ( + $password, + $auth_name = 'dmapi', + $tenant = 'services', + $email = 'trilio@localhost', + $public_url = 'http://127.0.0.1:8784/v2', + $internal_url = 'http://127.0.0.1:8784/v2', + $admin_url = 'http://127.0.0.1:8784/v2', + $configure_endpoint = true, + $configure_user = true, + $configure_user_role = true, + $service_name = 'dmapi', + $service_type = 'datamover', + $service_description = 'Trilio Datamover Service', + $region = 'RegionOne', +) { + + keystone::resource::service_identity { 'dmapi': + configure_user => $configure_user, + configure_user_role => $configure_user_role, + configure_endpoint => $configure_endpoint, + service_type => $service_type, + service_description => $service_description, + service_name => $service_name, + region => $region, + auth_name => $auth_name, + password => $password, + email => $email, + tenant => $tenant, + public_url => $public_url, + admin_url => $admin_url, + internal_url => $internal_url, + } + +} \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/api.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/api.pp new file mode 100644 index 000000000..bff53fa5e --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/api.pp @@ -0,0 +1,8 @@ +class trilio::tripleo::api ( + $step = lookup('step'), +) { + if $step >= 5 { + # Trilio + include ::trilio::api + } +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/contego.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/contego.pp new file mode 100644 index 000000000..5eda8f2a7 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/contego.pp @@ -0,0 +1,8 @@ +class trilio::tripleo::contego ( + $step = lookup('step'), +) { + if $step >= 5 { + # Trilio + include ::trilio::contego + } +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/horizon.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/horizon.pp new file mode 100644 index 000000000..6127e60af --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/horizon.pp @@ -0,0 +1,8 @@ +class trilio::tripleo::horizon ( + $step = lookup('step'), +) { + if $step >= 5 { + # Trilio + include ::trilio::horizon + } +} diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/keystone.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/keystone.pp new file mode 100644 index 000000000..5167c6fdf --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/keystone.pp @@ -0,0 +1,32 @@ +# == Class: trilio::tripleo::keystone +# +# Keystone profile for trilio +# +# === Parameters +# [*bootstrap_node*] +# (Optional) The hostname of the node responsible for bootstrapping tasks +# Defaults to hiera('keystone_short_bootstrap_node_name') + +# [*keystone_resources_managed*] +# (Optional) Enable the management of Keystone resources with Puppet. +# Can be disabled if Ansible manages these resources instead of Puppet. +# The resources are: endpoints, roles, services, projects, users and their +# assignment. +# Defaults to hiera('keystone_resources_managed', true) +# +class trilio::tripleo::keystone ( + $bootstrap_node = hiera('keystone_short_bootstrap_node_name', undef), + $keystone_resources_managed = hiera('keystone_resources_managed', true), +) { + if $::hostname == downcase($bootstrap_node) and $keystone_resources_managed { + $manage_endpoint = true + } else { + $manage_endpoint = false + } + + if $manage_endpoint { + if hiera('trilio_datamover_api_enabled', false) { + include ::trilio::keystone::auth + } + } +} \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/mysql.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/mysql.pp new file mode 100644 index 000000000..c1914ff5b --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/manifests/tripleo/mysql.pp @@ -0,0 +1,26 @@ +# == Class: trilio::tripleo::mysql +# +# MySQL profile for tripleo +# +# === Parameters +# +# [*bootstrap_node*] +# (Optional) The hostname of the node responsible for bootstrapping tasks +# Defaults to hiera('mysql_short_bootstrap_node_name') + +class trilio::tripleo::mysql ( + $bootstrap_node = hiera('mysql_short_bootstrap_node_name', undef), +) { + + if $::hostname == downcase($bootstrap_node) { + $create_db = true + } else { + $create_db = false + } + + if $create_db { + if hiera('trilio_datamover_api_enabled', false) { + tripleo::profile::base::database::mysql::include_and_check_auth{'::trilio::db::mysql':} + } + } +} \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/metadata.json b/redhat-director-scripts/rhosp17.0/puppet/trilio/metadata.json new file mode 100644 index 000000000..ccb9d8faa --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/metadata.json @@ -0,0 +1,55 @@ +{ + "author": "TrilioData", + "dependencies": [ + { + "name": "puppetlabs/inifile", + "version_requirement": ">=2.0.0 <3.0.0" + }, + { + "name": "puppetlabs/stdlib", + "version_requirement": ">= 5.0.0 <6.0.0" + }, + { + "name": "puppet/rabbitmq", + "version_requirement": ">=8.4.0 <9.0.0" + }, + { + "name": "puppetlabs/mysql", + "version_requirement": ">=6.0.0 <9.0.0" + }, + { + "name": "openstack/keystone", + "version_requirement": ">=15.4.0 <16.0.0" + }, + { + "name": "openstack/openstacklib", + "version_requirement": ">=15.4.0 <16.0.0" + }, + { + "name": "openstack/oslo", + "version_requirement": ">=15.4.0 <16.0.0" + } + ], + "description": "Installs and configures Trilio Datamover", + "issues_url": "https://www.trilio.io/", + "license": "proprietary", + "name": "trilio", + "operatingsystem_support": [ + { + "operatingsystem": "RedHat", + "operatingsystemrelease": [ + "7" + ] + } + ], + "project_page": "https://github.com/trilioData/triliovault-cfg-scripts/tree/master/redhat-director-scripts", + "requirements": [ + { + "name": "puppet", + "version_requirement": "5.x" + } + ], + "source": "git@github.com:trilioData/triliovault-cfg-scripts.git", + "summary": "Puppet module for Trilio Datamover", + "version": "4.1.0" +} \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/spec/classes/init_spec.rb b/redhat-director-scripts/rhosp17.0/puppet/trilio/spec/classes/init_spec.rb new file mode 100644 index 000000000..7bebce738 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/spec/classes/init_spec.rb @@ -0,0 +1,7 @@ +require 'spec_helper' +describe 'trilio' do + + context 'with defaults for all parameters' do + it { should contain_class('trilio') } + end +end diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/spec/spec_helper.rb b/redhat-director-scripts/rhosp17.0/puppet/trilio/spec/spec_helper.rb new file mode 100644 index 000000000..2c6f56649 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/spec/spec_helper.rb @@ -0,0 +1 @@ +require 'puppetlabs_spec_helper/module_spec_helper' diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_amazon_s3_conf.erb b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_amazon_s3_conf.erb new file mode 100644 index 000000000..0668077f1 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_amazon_s3_conf.erb @@ -0,0 +1,49 @@ +[DEFAULT] +vault_storage_type = s3 +vault_storage_nfs_export = TrilioVault +vault_data_directory_old = <%= @vault_data_dir_old %> +vault_data_directory = <%= @vault_data_dir %> +log_file = /var/log/trilio-datamover/tvault-contego.log +debug = False +verbose = True +max_uploads_pending = 3 +max_commit_pending = 3 +vault_s3_auth_version = DEFAULT +vault_s3_access_key_id = <%= @s3_accesskey %> +vault_s3_secret_access_key = <%= @s3_secretkey %> +vault_s3_region_name = <%= @s3_region_name %> +vault_s3_bucket = <%= @s3_bucket %> +vault_s3_signature_version = <%= @s3_signature_version %> +vault_s3_auth_version = <%= @s3_auth_version %> +vault_s3_ssl_cert = <%= @s3_ssl_cert %> +dmapi_transport_url = <%= @default_transport_url %> + +[dmapi_database] +connection = <%= @database_connection %> + + +<% if @cinder_backend_ceph == true -%> + +[libvirt] +images_rbd_ceph_conf = <%= @libvirt_images_rbd_ceph_conf %> +rbd_user = <%= @ceph_cinder_user %> + +[ceph] +keyring_ext = .<%= @ceph_cinder_user %>.keyring + +<% end -%> + +[contego_sys_admin] +helper_command = sudo /usr/bin/privsep-helper + +[s3fuse_sys_admin] +helper_command = sudo /usr/bin/privsep-helper + +[conductor] +use_local = True + +[oslo_messaging_rabbit] +ssl = <%= @oslomsg_rpc_use_ssl %> + +[cinder] +http_retries = <%= @cinder_http_retries %> \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_ceph_s3_conf.erb b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_ceph_s3_conf.erb new file mode 100644 index 000000000..257cb9d46 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_ceph_s3_conf.erb @@ -0,0 +1,51 @@ +[DEFAULT] +vault_storage_type = s3 +vault_storage_nfs_export = TrilioVault +vault_data_directory_old = <%= @vault_data_dir_old %> +vault_data_directory = <%= @vault_data_dir %> +log_file = /var/log/trilio-datamover/tvault-contego.log +debug = False +verbose = True +max_uploads_pending = 3 +max_commit_pending = 3 +vault_s3_auth_version = DEFAULT +vault_s3_access_key_id = <%= @s3_accesskey %> +vault_s3_secret_access_key = <%= @s3_secretkey %> +vault_s3_region_name = <%= @s3_region_name %> +vault_s3_bucket = <%= @s3_bucket %> +vault_s3_endpoint_url = <%= @s3_endpoint_url %> +vault_s3_signature_version = <%= @s3_signature_version %> +vault_s3_auth_version = <%= @s3_auth_version %> +vault_s3_ssl = <%= @s3_ssl_enabled %> +vault_s3_ssl_cert = <%= @s3_ssl_cert %> +dmapi_transport_url = <%= @default_transport_url %> + + +<% if @cinder_backend_ceph == true -%> + +[libvirt] +images_rbd_ceph_conf = <%= @libvirt_images_rbd_ceph_conf %> +rbd_user = <%= @ceph_cinder_user %> + +[ceph] +keyring_ext = .<%= @ceph_cinder_user %>.keyring + +<% end -%> + +[dmapi_database] +connection = <%= @database_connection %> + +[contego_sys_admin] +helper_command = sudo /usr/bin/privsep-helper + +[s3fuse_sys_admin] +helper_command = sudo /usr/bin/privsep-helper + +[conductor] +use_local = True + +[oslo_messaging_rabbit] +ssl = <%= @oslomsg_rpc_use_ssl %> + +[cinder] +http_retries = <%= @cinder_http_retries %> \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_nfs_conf.erb b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_nfs_conf.erb new file mode 100644 index 000000000..c651b276d --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_nfs_conf.erb @@ -0,0 +1,45 @@ +[DEFAULT] +<% if @multi_ip_nfs_enabled -%> +vault_storage_nfs_export = <%= @nfs_map[@hostname] %> +<% else -%> +vault_storage_nfs_export = <%= @nfs_shares %> +<% end -%> +vault_storage_nfs_options = <%= @nfs_options %> +vault_storage_type = nfs +vault_data_directory_old = <%= @vault_data_dir_old %> +vault_data_directory = <%= @vault_data_dir %> +log_file = /var/log/trilio-datamover/tvault-contego.log +debug = False +verbose = True +max_uploads_pending = 3 +max_commit_pending = 3 +dmapi_transport_url = <%= @default_transport_url %> + + +<% if @cinder_backend_ceph == true -%> + +[libvirt] +images_rbd_ceph_conf = <%= @libvirt_images_rbd_ceph_conf %> +rbd_user = <%= @ceph_cinder_user %> + +[ceph] +keyring_ext = .<%= @ceph_cinder_user %>.keyring + +<% end -%> + + +[dmapi_database] +connection = <%= @database_connection %> + + +[contego_sys_admin] +helper_command = sudo /usr/bin/privsep-helper + +[conductor] +use_local = True + +[oslo_messaging_rabbit] +ssl = <%= @oslomsg_rpc_use_ssl %> + +[cinder] +http_retries = <%= @cinder_http_retries %> \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_swift_conf.erb b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_swift_conf.erb new file mode 100644 index 000000000..58d4a3ab3 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_swift_conf.erb @@ -0,0 +1,16 @@ +[DEFAULT] +vault_storage_type = swift-s +vault_storage_nfs_export = TrilioVault +vault_data_directory_old = <%= @vault_data_dir_old %> +vault_data_directory = <%= @vault_data_dir %> +log_file = /var/log/nova/tvault-contego.log +debug = False +verbose = True +max_uploads_pending = 3 +max_commit_pending = 3 +vault_swift_auth_url = <%= @swift_auth_url %> +vault_swift_username = <%= @swift_username %> +vault_swift_password = <%= @swift_password %> +vault_swift_auth_version = <%= @swift_%> +vault_swift_tenant = <%= @swift_tenant %> +vault_swift_region_name = <%= @swift_region_name %> diff --git a/kolla-ansible/trilio-datamover/tvault-contego.service b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_systemd_conf.erb similarity index 55% rename from kolla-ansible/trilio-datamover/tvault-contego.service rename to redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_systemd_conf.erb index 33981f4e3..7424eccaf 100644 --- a/kolla-ansible/trilio-datamover/tvault-contego.service +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/contego_systemd_conf.erb @@ -8,8 +8,10 @@ StartLimitBurst=3 [Service] User=nova Group=nova +LimitNOFILE=65536 +MemoryMax=10G Type=simple -ExecStart=/home/tvault/.virtenv/bin/python /home/tvault/.virtenv/bin/tvault-contego --config-file=/usr/share/nova/nova-dist.conf --config-file=/etc/nova/nova.conf --config-file=/etc/tvault-contego/tvault-contego.conf +ExecStart=<%= @contego_python+" "+@contego_bin+" "+@config_files %> TimeoutStopSec=20 KillMode=process Restart=on-failure diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/dmapi.erb b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/dmapi.erb new file mode 100644 index 000000000..ee817826a --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/dmapi.erb @@ -0,0 +1,45 @@ +[DEFAULT] +dmapi_workers = <%= @dmapi_workers %> +transport_url = <%= @default_transport_url %> +dmapi_link_prefix = http://<%= @my_ip %>:<%= @dmapi_port %> +dmapi_enabled_ssl_apis = +dmapi_listen_port = <%= @dmapi_port %> +dmapi_enabled_apis = dmapi +bindir = /usr/bin +instance_name_template = instance-%08x +dmapi_listen = <%= @my_ip %> +my_ip = <%= @my_ip %> +rootwrap_config = /etc/dmapi/rootwrap.conf +debug = False +log_file = /var/log/trilio-datamover-api/dmapi.log +log_dir = /var/log/trilio-datamover-api + + +[wsgi] +ssl_cert_file = +ssl_key_file = +api_paste_config = /etc/dmapi/api-paste.ini + +[database] +connection = <%= @database_connection %> + +[keystone_authtoken] +memcached_servers = <%= @memcached_servers %> +signing_dir = /var/cache/dmapi +cafile = +project_domain_name = <%= @project_domain_name %> +project_name = <%= @project_name %> +user_domain_name = <%= @user_domain_name %> +password = <%= @password %> +username = dmapi +auth_url = <%= @auth_url %> +auth_type = password +auth_uri = <%= @auth_uri %> +insecure = True + +[oslo_messaging_notifications] +transport_url = <%= @default_transport_url %> +driver = <%= @notification_driver %> + +[oslo_middleware] +enable_proxy_headers_parsing = <%= @enable_proxy_headers_parsing %> \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/object_store_systemd_conf.erb b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/object_store_systemd_conf.erb new file mode 100644 index 000000000..eb5cc9309 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/templates/object_store_systemd_conf.erb @@ -0,0 +1,15 @@ +[Unit] +Description=Tvault Object Store +After=tvault-contego.service +[Service] +User= <%= @contego_user %> +Group= <%= @contego_group %> +Type=simple +LimitNOFILE=500000 +LimitNPROC=500000 +ExecStart=<%= @contego_python+" "+@contego_ext_object_store+" "+"--config-file="+@contego_conf_file %> +TimeoutStopSec=20 +KillMode=process +Restart=on-failure +[Install] +WantedBy=multi-user.target diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/testfile b/redhat-director-scripts/rhosp17.0/puppet/trilio/testfile new file mode 100644 index 000000000..ce0136250 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/testfile @@ -0,0 +1 @@ +hello diff --git a/redhat-director-scripts/rhosp17.0/puppet/trilio/tests/init.pp b/redhat-director-scripts/rhosp17.0/puppet/trilio/tests/init.pp new file mode 100644 index 000000000..eca397d50 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/puppet/trilio/tests/init.pp @@ -0,0 +1,12 @@ +# The baseline for module testing used by Puppet Labs is that each manifest +# should have a corresponding test manifest that declares that class or defined +# type. +# +# Tests are then run by using puppet apply --noop (to check for compilation +# errors and view a log of events) or by fully applying the test in a virtual +# environment (to compare the resulting system state to the desired state). +# +# Learn more about module testing here: +# http://docs.puppetlabs.com/guides/tests_smoke.html +# +include trilio diff --git a/redhat-director-scripts/rhosp17.0/scripts/README_ENDPOINT_MAP.md b/redhat-director-scripts/rhosp17.0/scripts/README_ENDPOINT_MAP.md new file mode 100644 index 000000000..2e3c1a88b --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/scripts/README_ENDPOINT_MAP.md @@ -0,0 +1,70 @@ +Service endpoint customization +============================== + +If a user needs to regenerate the endpoint map for any particular reason, +they can run this script to output the updated endpoint map. + +How to update the map +--------------------- + +Change the location of the templates if a custom path is being used that +contains an updated network/endpoints/ + +``` +bash generate_endpoint_map.sh /usr/share/openstack-tripleo-heat-templates +``` + +This script outputs a endpoint_map.yaml file. If you need to use a +generated one, be sure to update the OS::TripleO::EndpointMap value in the +included trilio_env*.yaml file. + +Service endpoints and TLS +------------------------- + +In order to change the endpoints when also deploying with TLS enabled, +a user will need to include the correct trilio_env_tls*.yaml file which will +update the ports and hostnames for the trilio endpoints. + +TLS Everywhere +-------------- + +Use the following as part of the deployment command to enable the tls everywhere +endpoint configuration + + +``` +openstack overcloud deploy \ + ...SNIP... + -e $PATH_TO/trilio_env_tls_everywhere_dns.yaml +``` + + +TLS Public DNS +-------------- + +Use the following as part of the deployment command to enable the tls only on +the public endpoints + + + +``` +openstack overcloud deploy \ + ...SNIP... + -e $PATH_TO/trilio_env_tls_endpoints_public_dns_osp13.yaml +``` + + + +TLS Public IP +------------- + +Use the following as part of the deployment command to enable the tls only on +the public endpoints with IP addresses + +``` +openstack overcloud deploy \ + ...SNIP... + -e $PATH_TO/trilio_env_tls_endpoints_public_ip_osp13.yaml +``` + + diff --git a/redhat-director-scripts/rhosp17.0/scripts/generate_endpoint_map.sh b/redhat-director-scripts/rhosp17.0/scripts/generate_endpoint_map.sh new file mode 100755 index 000000000..4f5e7ad87 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/scripts/generate_endpoint_map.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +set -e + +if [ $# -lt 1 ];then + echo "Script takes exactly 1 argument" + echo -e "./generate_endpoint_map.sh " + echo -e "Examples:" + echo -e "./generate_endpoint_map.sh /usr/share/openstack-tripleo-heat-templates/" + exit 1 +fi + +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +TEMPLATES=$1 +THT_ENDPOINT_DATA=$TEMPLATES/network/endpoints/endpoint_data.yaml +TRILIO_ENDPOINT_DATA=$SCRIPT_DIR/../environments/trilio_endpoint_data.yaml +OUTPUT_FILE=$SCRIPT_DIR/../environments/endpoint_map.yaml + +echo -e "\nGenerating endpoint map from ${THT_ENDPOINT_DATA} and ${TRILIO_ENDPOINT_DATA}" +$TEMPLATES/network/endpoints/build_endpoint_map.py \ + -i <(cat $THT_ENDPOINT_DATA $TRILIO_ENDPOINT_DATA) \ + -o $OUTPUT_FILE + +echo -e "\nGenerated new endpoint map file at ${OUTPUT_FILE}" \ No newline at end of file diff --git a/redhat-director-scripts/rhosp17.0/scripts/prepare_trilio_images.sh b/redhat-director-scripts/rhosp17.0/scripts/prepare_trilio_images.sh new file mode 100755 index 000000000..42ee8e13c --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/scripts/prepare_trilio_images.sh @@ -0,0 +1,47 @@ +#!/bin/bash + +set -e + +if [ $# -lt 2 ];then + echo "Script takes exacyly 2 argument" + echo -e "./prepare_trilio_images.sh " + exit 1 +fi + +undercloud_hostname=$1 +tag=$2 + +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" + +current_dir=$(pwd) +base_dir="$(dirname $0)" + +if [ $base_dir = '.' ] +then +base_dir="$current_dir" +fi + +source /home/stack/stackrc + +##Login to redhat container registry +echo -e "Enter Redhat container registry credentials (registry.redhat.io)" +podman login registry.connect.redhat.com +podman pull registry.connect.redhat.com/trilio/trilio-horizon-plugin:${tag} +podman pull registry.connect.redhat.com/trilio/trilio-datamover:${tag} +podman pull registry.connect.redhat.com/trilio/trilio-datamover-api:${tag} + +openstack tripleo container image push --local registry.connect.redhat.com/trilio/trilio-datamover:${tag} + +openstack tripleo container image push --local registry.connect.redhat.com/trilio/trilio-datamover-api:${tag} + +openstack tripleo container image push --local registry.connect.redhat.com/trilio/trilio-horizon-plugin:${tag} + + +## Update image locations in env file +trilio_dm_image="${undercloud_hostname}:8787\/trilio\/trilio-datamover:${tag}" +trilio_dmapi_image="${undercloud_hostname}:8787\/trilio\/trilio-datamover-api:${tag}" +trilio_horizon_image="${undercloud_hostname}:8787\/trilio\/trilio-horizon-plugin:${tag}" + +sed -i "s/.*DockerTrilioDatamoverImage.*/\ DockerTrilioDatamoverImage:\ ${trilio_dm_image}/g" $SCRIPT_DIR/../environments/trilio_env.yaml +sed -i "s/.*DockerTrilioDmApiImage.*/ DockerTrilioDmApiImage: ${trilio_dmapi_image}/g" $SCRIPT_DIR/../environments/trilio_env.yaml +sed -i "s/.*ContainerHorizonImage.*/ ContainerHorizonImage: ${trilio_horizon_image}/g" $SCRIPT_DIR/../environments/trilio_env.yaml diff --git a/redhat-director-scripts/rhosp17.0/scripts/prepare_trilio_images_dockerhub.sh b/redhat-director-scripts/rhosp17.0/scripts/prepare_trilio_images_dockerhub.sh new file mode 100755 index 000000000..768eecf59 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/scripts/prepare_trilio_images_dockerhub.sh @@ -0,0 +1,43 @@ +#!/bin/bash + +if [ $# -lt 2 ];then + echo "Script takes exacyly 2 argument" + echo -e "./prepare_trilio_images_podmanhub.sh " + exit 1 +fi + +undercloud_hostname=$1 +tag=$2 + +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" + +source /home/stack/stackrc + +##Login to redhat container registry +echo -e "Enter dockerhub account credentials" +podman login docker.io + +## Prepare openstack horizon with trilio container +podman pull docker.io/trilio/trilio-horizon-plugin:${tag} +podman tag docker.io/trilio/trilio-horizon-plugin:${tag} ${undercloud_hostname}:8787/trilio/trilio-horizon-plugin:${tag} +openstack tripleo container image push --local ${undercloud_hostname}:8787/trilio/trilio-horizon-plugin:${tag} + +## Prepare trilio datamover container +podman pull docker.io/trilio/trilio-datamover:${tag} +podman tag docker.io/trilio/trilio-datamover:${tag} ${undercloud_hostname}:8787/trilio/trilio-datamover:${tag} +openstack tripleo container image push --local ${undercloud_hostname}:8787/trilio/trilio-datamover:${tag} + +## Prepare trilio datamover api container +podman pull docker.io/trilio/trilio-datamover-api:${tag} +podman tag docker.io/trilio/trilio-datamover-api:${tag} ${undercloud_hostname}:8787/trilio/trilio-datamover-api:${tag} +openstack tripleo container image push --local ${undercloud_hostname}:8787/trilio/trilio-datamover-api:${tag} + + +## Update image locations in env file +trilio_dm_image="${undercloud_hostname}:8787\/trilio\/trilio-datamover:${tag}" +trilio_dmapi_image="${undercloud_hostname}:8787\/trilio\/trilio-datamover-api:${tag}" +trilio_horizon_image="${undercloud_hostname}:8787\/trilio\/trilio-horizon-plugin:${tag}" + +sed -i "s/.*DockerTrilioDatamoverImage.*/\ DockerTrilioDatamoverImage:\ ${trilio_dm_image}/g" $SCRIPT_DIR/../environments/trilio_env.yaml +sed -i "s/.*DockerTrilioDmApiImage.*/ DockerTrilioDmApiImage: ${trilio_dmapi_image}/g" $SCRIPT_DIR/../environments/trilio_env.yaml +sed -i "s/.*ContainerHorizonImage.*/ ContainerHorizonImage: ${trilio_horizon_image}/g" $SCRIPT_DIR/../environments/trilio_env.yaml diff --git a/redhat-director-scripts/rhosp17.0/scripts/upload_puppet_module.sh b/redhat-director-scripts/rhosp17.0/scripts/upload_puppet_module.sh new file mode 100755 index 000000000..61ae02f54 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/scripts/upload_puppet_module.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +##Source udndercloud credentials +source /home/stack/stackrc + +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" + +rm -rf $SCRIPT_DIR/trilio-puppet-module +mkdir $SCRIPT_DIR/trilio-puppet-module +cp -R $SCRIPT_DIR/../puppet/trilio $SCRIPT_DIR/trilio-puppet-module/ +upload-puppet-modules --seconds 630720000 -d trilio-puppet-module diff --git a/redhat-director-scripts/rhosp17.0/services/trilio-datamover-api.yaml b/redhat-director-scripts/rhosp17.0/services/trilio-datamover-api.yaml new file mode 100644 index 000000000..04f3e40cc --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/services/trilio-datamover-api.yaml @@ -0,0 +1,322 @@ +heat_template_version: wallaby + +description: > + Trilio Datamover Api containerized service +parameters: + DockerTrilioDmApiImage: + default: '' + description: The location of Trilio Datamover container image + type: string + ServiceData: + default: {} + description: Dictionary packing service data + type: json + ServiceNetMap: + default: {} + description: Mapping of service_name -> network name. Typically set + via parameter_defaults in the resource registry. This + mapping overrides those in ServiceNetMapDefaults. + type: json + DefaultPasswords: + default: {} + type: json + RoleName: + default: '' + description: Role name on which the service is applied + type: string + RoleParameters: + default: {} + description: Parameters specific to the role + type: json + EndpointMap: + default: {} + description: Mapping of service endpoint -> protocol. Typically set + via parameter_defaults in the resource registry. + type: json + DmApiPort: + default: '8784' + description: Trilio Dmapi listen port + type: string + DmApiSslPort: + default: '13784' + description: Trilio Dmapi ssl listen port + type: string + DefaultPasswords: + default: {} + type: json + KeystoneRegion: + type: string + default: 'regionOne' + description: Keystone region for endpoint + TrilioDatamoverPassword: + description: The password for the trilio service and db account + type: string + hidden: true + NotificationDriver: + type: string + default: 'messagingv2' + description: Driver or drivers to handle sending notifications. + ContainerMysqlConfigImage: + description: image + type: string + ContainerKeystoneConfigImage: + description: The container image to use for the keystone config_volume + type: string + EnableInternalTLS: + type: boolean + default: false + InternalTLSCAFile: + default: '/etc/ipa/ca.crt' + type: string + description: Specifies the default CA cert to use if TLS is used for + services in the internal network. + ConfigDebug: + default: false + description: Whether to run config management (e.g. Puppet) in debug mode. + type: boolean + DeployIdentifier: + default: '' + type: string + description: > + Setting this to a unique value will re-run any deployment tasks which + perform configuration on a Heat stack-update. + ContainerCli: + type: string + default: 'podman' + description: CLI tool used to manage containers. + constraints: + - allowed_values: ['docker', 'podman'] + ClusterCommonTag: + default: false + description: When set to false, a pacemaker service is configured + to use a floating tag for its container image name, + e.g. 'REGISTRY/NAMESPACE/IMAGENAME:pcmklatest'. When + set to true, the service uses a floating prefix as + well, e.g. 'cluster.common.tag/IMAGENAME:pcmklatest'. + type: boolean + DmApiWorkers: + default: 16 + description: Set dmapi_workers parameters of dmapi.conf for tilio datamover api service + type: number + + + +resources: + + ContainersCommon: + type: /usr/share/openstack-tripleo-heat-templates/deployment/containers-common.yaml + + MySQLClient: + type: /usr/share/openstack-tripleo-heat-templates/deployment/database/mysql-client.yaml + +conditions: + puppet_debug_enabled: {get_param: ConfigDebug} + internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]} + docker_enabled: {equals: [{get_param: ContainerCli}, 'docker']} + common_tag_enabled: {equals: [{get_param: ClusterCommonTag}, true]} + + +outputs: + role_data: + description: Role data for the Trilio Datamover role. + value: + service_name: trilio_datamover_api + firewall_rules: + '240 trilio_datamover_api': + dport: + - 8784 + firewall_frontend_rules: + '100 trilio_datamover_api_haproxy_frontend': + dport: + - 8784 + firewall_ssl_frontend_rules: + '100 trilio_datamover_api_haproxy_frontend_ssl': + dport: + - 13784 + keystone_resources: + dmapi: + endpoints: + public: {get_param: [EndpointMap, TrilioDatamoverPublic, uri]} + internal: {get_param: [EndpointMap, TrilioDatamoverInternal, uri]} + admin: {get_param: [EndpointMap, TrilioDatamoverAdmin, uri]} + users: + dmapi: + password: {get_param: TrilioDatamoverPassword} + region: {get_param: KeystoneRegion} + service: 'datamover' + config_settings: + trilio::dmapi::dmapi_port: {get_param: DmApiPort} + trilio::dmapi::dmapi_ssl_port: {get_param: DmApiSslPort} + trilio::dmapi::password: {get_param: TrilioDatamoverPassword} + trilio::dmapi::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] } + trilio::dmapi::auth_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] } + trilio::dmapi::notification_driver: {get_param: NotificationDriver} + trilio::dmapi::enable_proxy_headers_parsing: true + trilio::dmapi::project_name: 'service' + trilio::dmapi::region_name: {get_param: KeystoneRegion} + trilio::dmapi::user_domain_name: 'Default' + trilio::dmapi::project_domain_name: 'Default' + trilio::dmapi::dmapi_workers: {get_param: DmApiWorkers} + trilio::dmapi::database_connection: + make_url: + scheme: {get_param: [EndpointMap, MysqlInternal, protocol]} + username: dmapi + password: {get_param: TrilioDatamoverPassword} + host: {get_param: [EndpointMap, MysqlInternal, host]} + path: /dmapi + trilio::dmapi::my_ip: + str_replace: + template: + "%{hiera('$NETWORK')}" + params: + $NETWORK: {get_param: [ServiceNetMap, TrilioDatamoverApiNetwork]} + service_config_settings: + haproxy: + tripleo::trilio_datamover_api::haproxy_endpoints: + trilio_datamover_api: + public_virtual_ip: "%{hiera('public_virtual_ip')}" + internal_ip: "%{hiera('trilio_datamover_api_vip')}" + service_port: {get_param: DmApiPort} + public_ssl_port: {get_param: DmApiSslPort} + member_options: [ 'check', 'inter 2000', 'rise 2', 'fall 5' ] + haproxy_listen_bind_param: ['transparent'] + service_network: "%{hiera('trilio_datamover_api_network')}" + tripleo::haproxy::trilio_datamover_api::options: + 'retries': '5' + 'maxconn': '50000' + 'balance': 'roundrobin' + 'timeout http-request': '10m' + 'timeout queue': '10m' + 'timeout connect': '10m' + 'timeout client': '10m' + 'timeout server': '10m' + 'timeout check': '10m' + keystone: + trilio::keystone::auth::tenant: 'service' + trilio::keystone::auth::service_name: 'dmapi' + trilio::keystone::auth::service_type: 'datamover' + trilio::keystone::auth::service_description: 'TrilioVault Datamover Service' + trilio::keystone::auth::public_url: {get_param: [EndpointMap, TrilioDatamoverPublic, uri]} + trilio::keystone::auth::internal_url: {get_param: [EndpointMap, TrilioDatamoverInternal, uri]} + trilio::keystone::auth::admin_url: {get_param: [EndpointMap, TrilioDatamoverAdmin, uri]} + trilio::keystone::auth::password: {get_param: TrilioDatamoverPassword} + trilio::keystone::auth::region: {get_param: KeystoneRegion} + mysql: + trilio::db::mysql::user: dmapi + trilio::db::mysql::password: {get_param: TrilioDatamoverPassword} + trilio::db::mysql::host: {get_param: [EndpointMap, MysqlInternal, host_nobrackets]} + trilio::db::mysql::dbname: dmapi + trilio::db::mysql::allowed_hosts: + - '%' + - "%{hiera('mysql_bind_host')}" + puppet_config: + config_volume: triliodmapi + puppet_tags: dmapiconfig + step_config: + list_join: + - "\n" + - - "include ::trilio::dmapi" + - {get_attr: [MySQLClient, role_data, step_config]} + config_image: {get_param: DockerTrilioDmApiImage} + kolla_config: + /var/lib/kolla/config_files/trilio_dmapi.json: + command: /usr/bin/python3 /usr/bin/dmapi-api + config_files: + - source: "/var/lib/kolla/config_files/triliodmapi/*" + dest: "/" + merge: true + preserve_properties: true + permissions: + - path: /var/log/trilio-datamover-api + owner: dmapi:dmapi + recurse: true + container_puppet_tasks: + step_3: + config_volume: 'trilio_datamover_api_mysql_init_bundle' + puppet_tags: 'mysql_database,mysql_grant,mysql_user' + step_config: 'include ::trilio::tripleo::mysql' + config_image: {get_param: ContainerMysqlConfigImage} + volumes: + list_concat: + - + - /var/lib/mysql:/var/lib/mysql/:rw + - /var/log/containers/mysql:/var/log/mariadb + - /var/lib/config-data/puppet-generated/mysql/root:/root:rw + - if: + - internal_tls_enabled + - + - list_join: + - ':' + - - {get_param: InternalTLSCAFile} + - {get_param: InternalTLSCAFile} + - 'ro' + - /etc/pki/tls/certs/mysql.crt:/var/lib/kolla/config_files/src-tls/etc/pki/tls/certs/mysql.crt:ro + - /etc/pki/tls/private/mysql.key:/var/lib/kolla/config_files/src-tls/etc/pki/tls/private/mysql.key:ro + - null + step_4: + config_volume: 'trilio_datamover_api_keystone_init_tasks' + puppet_tags: 'keystone_config' + step_config: 'include ::trilio::tripleo::keystone' + config_image: {get_param: ContainerKeystoneConfigImage} + volumes: + - /var/lib/config-data/puppet-generated/keystone/etc/keystone:/etc/keystone:rw + docker_config: + step_2: + trilio_datamover_api_init_log: + image: &trilio_datamover_api_image {get_param: DockerTrilioDmApiImage} + start_order: 0 + net: none + user: root + volumes: + - /var/log/containers/trilio-datamover-api:/var/log/trilio-datamover-api:z + command: ['/bin/bash', '-c', 'chown -R dmapi:dmapi /var/log/trilio-datamover-api'] + step_4: + trilio_datamover_api_db_sync: + image: *trilio_datamover_api_image + net: host + privileged: false + detach: false + user: root + volumes: + list_concat: + - {get_attr: [ContainersCommon, volumes]} + - + - /var/lib/config-data/triliodmapi/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro + - /var/lib/config-data/triliodmapi/etc/dmapi/:/etc/dmapi/:ro + - /var/log/containers/trilio-datamover-api:/var/log/trilio-datamover-api + command: "/usr/bin/bootstrap_host_exec trilio_datamover_api su dmapi -s /bin/bash -c /usr/bin/dmapi-dbsync" + environment: + TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} + step_5: + trilio_dmapi: + image: {get_param: DockerTrilioDmApiImage} + net: host + privileged: true + user: dmapi + restart: always + volumes: + list_concat: + - {get_attr: [ContainersCommon, volumes]} + - + - /var/lib/kolla/config_files/trilio_dmapi.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/triliodmapi/:/var/lib/kolla/config_files/triliodmapi:ro + - /var/log/containers/trilio-datamover-api:/var/log/trilio-datamover-api:z + - if: + - internal_tls_enabled + - - /etc/pki/tls/certs/httpd:/etc/pki/tls/certs/httpd:ro + - [] + - if: + - internal_tls_enabled + - - /etc/pki/tls/private/httpd:/etc/pki/tls/private/httpd:ro + - [] + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS + host_prep_tasks: + - name: create trilio datamover api log directory + file: + path: "{{ item.path }}" + state: directory + setype: "{{ item.setype }}" + with_items: + - { 'path': /var/log/containers/trilio-datamover-api, 'setype': svirt_sandbox_file_t } + upgrade_tasks: [] diff --git a/redhat-director-scripts/rhosp17.0/services/trilio-datamover.yaml b/redhat-director-scripts/rhosp17.0/services/trilio-datamover.yaml new file mode 100644 index 000000000..f0a5b9f44 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/services/trilio-datamover.yaml @@ -0,0 +1,276 @@ +heat_template_version: wallaby + +description: > + Trilio Datamover containerized service +parameters: + DockerTrilioDatamoverImage: + default: '' + description: The location of Trilio Datamover container image + type: string + ServiceData: + default: {} + description: Dictionary packing service data + type: json + ServiceNetMap: + default: {} + description: Mapping of service_name -> network name. Typically set + via parameter_defaults in the resource registry. This + mapping overrides those in ServiceNetMapDefaults. + type: json + DefaultPasswords: + default: {} + type: json + RoleName: + default: '' + description: Role name on which the service is applied + type: string + RoleParameters: + default: {} + description: Parameters specific to the role + type: json + EndpointMap: + default: {} + description: Mapping of service endpoint -> protocol. Typically set + via parameter_defaults in the resource registry. + type: json + CephClientUserName: + default: openstack + type: string + CephClusterName: + type: string + default: ceph + description: The Ceph cluster name. + constraints: + - allowed_pattern: "[a-zA-Z0-9]+" + description: > + The Ceph cluster name must be at least 1 character and contain only + letters and numbers. + CephConfigPath: + type: string + default: "/var/lib/tripleo-config/ceph" + description: | + The path where the Ceph Cluster config files are stored on the host. + BackupTargetType: + description: + type: string + NfsShares: + description: Provide comma separated list of NFS shares to use as backup target + type: string + NfsOptions: + default: 'nolock,soft,timeo=180,intr' + description: NFS mount otpions + type: string + S3Type: + description: S3 type like Amazon/Ceph/Minio + type: string + S3AccessKey: + description: S3 access key + type: string + S3SecretKey: + description: S3 secret key + type: string + S3RegionName: + description: S3 region name + type: string + S3Bucket: + description: S3 bucket name + type: string + S3EndpointUrl: + description: S3 endpoint url + type: string + S3SignatureVersion: + default: 'default' + description: S3 Signature Version + type: string + S3AuthVersion: + default: 'DEFAULT' + description: S3 Auth Version + type: string + S3SslEnabled: + default: false + description: S3 ssl enabled + type: boolean + S3SslCert: + description: S3 SSL certificate file path + type: string + CinderEnableRbdBackend: + default: false + description: Whether ceph cinder backend enabled or not + type: boolean + CephClientUserName: + default: 'openstack' + description: Cinder ceph backend user name + type: string + TrilioDatamoverPassword: + description: The password for the trilio service and db account + type: string + hidden: true + EnableInternalTLS: + type: boolean + default: false + MultipathdEnable: + default: false + description: Whether to enable the multipath daemon + type: boolean + NovaComputeOptVolumes: + default: [] + description: list of optional vo + type: comma_delimited_list + TrilioDatamoverOptVolumes: + default: [] + description: list of optional volumes to be mounted + type: comma_delimited_list + TrilioDatamoverNfsMap: + default: {} + description: Mapping of datamover node -> NFS share. Typically set + via parameter_defaults in the resource registry. + type: json + MultiIPNfsEnabled: + default: false + description: Whether multiple ip/endpoints based nfs as triliovault backup target used in this deployment of not + type: boolean + +conditions: + + internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]} + +resources: + + ContainersCommon: + type: /usr/share/openstack-tripleo-heat-templates/deployment/containers-common.yaml + +outputs: + role_data: + description: Role data for the Trilio Datamover role. + value: + service_name: tvault-contego + config_settings: + trilio::contego::backup_target_type: {get_param: BackupTargetType} + trilio::contego::nfs_shares: {get_param: NfsShares} + trilio::contego::nfs_options: {get_param: NfsOptions} + trilio::contego::s3_type: {get_param: S3Type} + trilio::contego::s3_accesskey: {get_param: S3AccessKey} + trilio::contego::s3_secretkey: {get_param: S3SecretKey} + trilio::contego::s3_region_name: {get_param: S3RegionName} + trilio::contego::s3_bucket: {get_param: S3Bucket} + trilio::contego::s3_endpoint_url: {get_param: S3EndpointUrl} + trilio::contego::s3_signature_version: {get_param: S3SignatureVersion} + trilio::contego::s3_auth_version: {get_param: S3AuthVersion} + trilio::contego::s3_ssl_enabled: {get_param: S3SslEnabled} + trilio::contego::s3_ssl_cert: {get_param: S3SslCert} + trilio::contego::cinder_backend_ceph: {get_param: CinderEnableRbdBackend} + trilio::contego::ceph_cinder_user: {get_param: CephClientUserName} + trilio::contego::database_connection: + make_url: + scheme: {get_param: [EndpointMap, MysqlInternal, protocol]} + username: dmapi + password: {get_param: TrilioDatamoverPassword} + host: {get_param: [EndpointMap, MysqlInternal, host]} + path: /dmapi + trilio::contego::nfs_map: {get_param: TrilioDatamoverNfsMap} + trilio::contego::multi_ip_nfs_enabled: {get_param: MultiIPNfsEnabled} + trilio::contego::libvirt_images_rbd_ceph_conf: + list_join: + - '' + - - '/etc/ceph/' + - {get_param: CephClusterName} + - '.conf' + puppet_config: + config_volume: triliodm + puppet_tags: dmconfig + step_config: | + include ::trilio::contego + config_image: {get_param: DockerTrilioDatamoverImage} + kolla_config: + /var/lib/kolla/config_files/trilio_dm.json: + command: + str_replace: + template: /opt/tvault/start_datamover_$backup_target_type + params: + $backup_target_type: {get_param: BackupTargetType} + config_files: + - source: "/var/lib/kolla/config_files/nova_libvirt/*" + dest: "/" + merge: true + preserve_properties: true + - source: "/var/lib/kolla/config_files/triliodm/*" + dest: "/" + merge: true + preserve_properties: true + - source: "/var/lib/kolla/config_files/src-iscsid/*" + dest: "/etc/iscsi/" + merge: true + preserve_properties: true + - source: "/var/lib/kolla/config_files/src-ceph/" + dest: "/etc/ceph/" + merge: true + preserve_properties: true + permissions: + - path: /var/log/trilio-datamover + owner: nova:nova + recurse: true + - path: /var/lib/nova/triliovault-mounts + owner: nova:nova + recurse: false + - path: + str_replace: + template: /etc/ceph/CLUSTER.client.USER.keyring + params: + CLUSTER: {get_param: CephClusterName} + USER: {get_param: CephClientUserName} + owner: nova:nova + perm: '0600' + docker_config: + step_5: + trilio_datamover: + image: {get_param: DockerTrilioDatamoverImage} + net: host + ipc: host + privileged: true + user: nova + restart: always + volumes: + list_concat: + - {get_attr: [ContainersCommon, volumes]} + - {get_param: NovaComputeOptVolumes} + - {get_param: TrilioDatamoverOptVolumes} + - + - /var/lib/kolla/config_files/trilio_dm.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/nova_libvirt/:/var/lib/kolla/config_files/nova_libvirt:ro + - /var/lib/config-data/puppet-generated/triliodm/:/var/lib/kolla/config_files/triliodm:ro + - /etc/iscsi:/var/lib/kolla/config_files/src-iscsid:ro + - list_join: + - ':' + - - {get_param: CephConfigPath} + - - '/var/lib/kolla/config_files/src-ceph' + - - 'ro' + - /dev:/dev + - /var/run/libvirt/:/var/run/libvirt/ + - /var/log/containers/trilio-datamover:/var/log/trilio-datamover:z + - /var/lib/nova:/var/lib/nova:shared + - /etc/ssh/ssh_known_hosts:/etc/ssh/ssh_known_hosts:ro + - /lib/modules:/lib/modules:ro + - /run:/run + - /var/lib/iscsi:/var/lib/iscsi:z + - /var/lib/libvirt:/var/lib/libvirt:shared + - /sys/class/net:/sys/class/net + - /sys/bus/pci:/sys/bus/pci + - /boot:/boot:ro + - + if: + - {equals: [{get_param: MultipathdEnable}, true]} + - - /etc/multipath:/etc/multipath:z + - /etc/multipath.conf:/etc/multipath.conf:ro + - [] + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS + host_prep_tasks: + - name: create trilio mounts directory + file: + path: "{{ item.path }}" + state: directory + setype: "{{ item.setype }}" + with_items: + - { 'path': /var/lib/nova/triliovault-mounts, 'setype': svirt_sandbox_file_t } + - { 'path': /var/log/containers/trilio-datamover, 'setype': svirt_sandbox_file_t } + upgrade_tasks: [] diff --git a/redhat-director-scripts/rhosp17.0/services/trilio-horizon.yaml b/redhat-director-scripts/rhosp17.0/services/trilio-horizon.yaml new file mode 100644 index 000000000..2f3ed3c62 --- /dev/null +++ b/redhat-director-scripts/rhosp17.0/services/trilio-horizon.yaml @@ -0,0 +1,62 @@ +heat_template_version: wallaby + +description: > + Trilio Horizon service +parameters: + ContainerHorizonImage: + default: '' + description: Trilio Horizon Plugin Image + type: string + ServiceData: + default: {} + description: Dictionary packing service data + type: json + ServiceNetMap: + default: {} + description: Mapping of service_name -> network name. Typically set + via parameter_defaults in the resource registry. This + mapping overrides those in ServiceNetMapDefaults. + type: json + DefaultPasswords: + default: {} + type: json + RoleName: + default: '' + description: Role name on which the service is applied + type: string + RoleParameters: + default: {} + description: Parameters specific to the role + type: json + EndpointMap: + default: {} + description: Mapping of service endpoint -> protocol. Typically set + via parameter_defaults in the resource registry. + type: json + EnableInternalTLS: + type: boolean + default: false + HorizonDir: + default: '/etc/openstack-dashboard' + description: Openstack horizon directory + type: string + +resources: + + ContainersCommon: + type: /usr/share/openstack-tripleo-heat-templates/deployment/containers-common.yaml + +outputs: + role_data: + description: Role data for the Trilio Datamover role. + value: + service_name: trilio-horizon + config_settings: + trilio::horizon::horizon_dir: {get_param: HorizonDir} + puppet_config: + config_volume: horizon + puppet_tags: triliohorizonconfig + step_config: | + include ::trilio::horizon + config_image: {get_param: ContainerHorizonImage} + upgrade_tasks: [] diff --git a/tripleo-scripts/docker/trilio-datamover-api/trilio.repo b/tripleo-scripts/docker/trilio-datamover-api/trilio.repo index bea3f0384..8f5c99bbe 100644 --- a/tripleo-scripts/docker/trilio-datamover-api/trilio.repo +++ b/tripleo-scripts/docker/trilio-datamover-api/trilio.repo @@ -1,5 +1,5 @@ [triliovault-4-1] name=triliovault-4-1 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliovault-4.1-dev/yum/ +baseurl={RPM_REPO_URL} gpgcheck=0 enabled=1 diff --git a/tripleo-scripts/docker/trilio-datamover/trilio.repo b/tripleo-scripts/docker/trilio-datamover/trilio.repo index bea3f0384..8f5c99bbe 100644 --- a/tripleo-scripts/docker/trilio-datamover/trilio.repo +++ b/tripleo-scripts/docker/trilio-datamover/trilio.repo @@ -1,5 +1,5 @@ [triliovault-4-1] name=triliovault-4-1 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliovault-4.1-dev/yum/ +baseurl={RPM_REPO_URL} gpgcheck=0 enabled=1 diff --git a/tripleo-scripts/docker/trilio-horizon-plugin/trilio.repo b/tripleo-scripts/docker/trilio-horizon-plugin/trilio.repo index bea3f0384..8f5c99bbe 100644 --- a/tripleo-scripts/docker/trilio-horizon-plugin/trilio.repo +++ b/tripleo-scripts/docker/trilio-horizon-plugin/trilio.repo @@ -1,5 +1,5 @@ [triliovault-4-1] name=triliovault-4-1 -baseurl=http://trilio:XpmkpMFviqSe@repos.trilio.io:8283/triliovault-4.1-dev/yum/ +baseurl={RPM_REPO_URL} gpgcheck=0 enabled=1