Merge "Remove kolla-ansible dependencies"

This commit is contained in:
Jenkins 2017-05-18 14:09:30 +00:00 committed by Gerrit Code Review
commit 3765d05f6d
9 changed files with 589 additions and 67 deletions

View File

@ -0,0 +1,23 @@
---
# Due to the way we do our inventory, ansible does not pick up on the fact that
# this role has already run. We can track what has run with host facts.
common_run: False
####################
# Docker
####################
kolla_toolbox_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-kolla-toolbox"
kolla_toolbox_tag: "{{ openstack_release }}"
kolla_toolbox_image_full: "{{ kolla_toolbox_image }}:{{ kolla_toolbox_tag }}"
cron_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-cron"
cron_tag: "{{ openstack_release }}"
cron_image_full: "{{ cron_image }}:{{ cron_tag }}"
fluentd_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-fluentd"
fluentd_tag: "{{ openstack_release }}"
fluentd_image_full: "{{ fluentd_image }}:{{ fluentd_tag }}"
kubetoolbox_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-kubetoolbox"
kubetoolbox_tag: "{{ openstack_release }}"
kubetoolbox_image_full: "{{ kubetoolbox_image }}:{{ kubetoolbox_tag }}"

343
etc/kolla/globals.yml Normal file
View File

@ -0,0 +1,343 @@
---
# You can use this file to override _any_ variable throughout Kolla.
# Additional options can be found in the
# 'kolla-ansible/ansible/group_vars/all.yml' file. Default value of all the
# commented parameters are shown here, To override the default value uncomment
# the parameter and change its value.
###################
# Kolla options
###################
# Valid options are [ COPY_ONCE, COPY_ALWAYS ]
#config_strategy: "COPY_ALWAYS"
# Valid options are [ centos, oraclelinux, ubuntu ]
#kolla_base_distro: "centos"
# Valid options are [ binary, source ]
#kolla_install_type: "binary"
# Valid option is Docker repository tag
#openstack_release: ""
# Location of configuration overrides
#node_custom_config: "/etc/kolla/config"
# This should be a VIP, an unused IP on your network that will float between
# the hosts running keepalived for high-availability. When running an All-In-One
# without haproxy and keepalived, this should be the first IP on your
# 'network_interface' as set in the Networking section below.
kolla_internal_vip_address: "10.10.10.254"
# This is the DNS name that maps to the kolla_internal_vip_address VIP. By
# default it is the same as kolla_internal_vip_address.
#kolla_internal_fqdn: "{{ kolla_internal_vip_address }}"
# This should be a VIP, an unused IP on your network that will float between
# the hosts running keepalived for high-availability. It defaults to the
# kolla_internal_vip_address, allowing internal and external communication to
# share the same address. Specify a kolla_external_vip_address to separate
# internal and external requests between two VIPs.
#kolla_external_vip_address: "{{ kolla_internal_vip_address }}"
# The Public address used to communicate with OpenStack as set in the public_url
# for the endpoints that will be created. This DNS name should map to
# kolla_external_vip_address.
#kolla_external_fqdn: "{{ kolla_external_vip_address }}"
####################
# Docker options
####################
# Below is an example of a private repository with authentication. Note the
# Docker registry password can also be set in the passwords.yml file.
#docker_registry: "172.16.0.10:4000"
#docker_namespace: "companyname"
#docker_registry_username: "sam"
#docker_registry_password: "correcthorsebatterystaple"
###############################
# Neutron - Networking Options
###############################
# This interface is what all your api services will be bound to by default.
# Additionally, all vxlan/tunnel and storage network traffic will go over this
# interface by default. This interface must contain an IPv4 address.
# It is possible for hosts to have non-matching names of interfaces - these can
# be set in an inventory file per host or per group or stored separately, see
# http://docs.ansible.com/ansible/intro_inventory.html
# Yet another way to workaround the naming problem is to create a bond for the
# interface on all hosts and give the bond name here. Similar strategy can be
# followed for other types of interfaces.
#network_interface: "eth0"
# These can be adjusted for even more customization. The default is the same as
# the 'network_interface'. These interfaces must contain an IPv4 address.
#kolla_external_vip_interface: "{{ network_interface }}"
#api_interface: "{{ network_interface }}"
#storage_interface: "{{ network_interface }}"
#cluster_interface: "{{ network_interface }}"
#tunnel_interface: "{{ network_interface }}"
#dns_interface: "{{ network_interface }}"
# This is the raw interface given to neutron as its external network port. Even
# though an IP address can exist on this interface, it will be unusable in most
# configurations. It is recommended this interface not be configured with any IP
# addresses for that reason.
#neutron_external_interface: "eth1"
# Valid options are [ openvswitch, linuxbridge ]
#neutron_plugin_agent: "openvswitch"
####################
# keepalived options
####################
# Arbitrary unique number from 0..255
#keepalived_virtual_router_id: "51"
####################
# TLS options
####################
# To provide encryption and authentication on the kolla_external_vip_interface,
# TLS can be enabled. When TLS is enabled, certificates must be provided to
# allow clients to perform authentication.
#kolla_enable_tls_external: "no"
#kolla_external_fqdn_cert: "{{ node_config_directory }}/certificates/haproxy.pem"
####################
# OpenStack options
####################
# Use these options to set the various log levels across all OpenStack projects
# Valid options are [ True, False ]
#openstack_logging_debug: "False"
# Valid options are [ novnc, spice ]
#nova_console: "novnc"
# OpenStack services can be enabled or disabled with these options
#enable_aodh: "no"
#enable_barbican: "no"
#enable_ceilometer: "no"
#enable_central_logging: "no"
#enable_ceph: "no"
#enable_ceph_rgw: "no"
#enable_chrony: "no"
#enable_cinder: "no"
#enable_cinder_backend_hnas_iscsi: "no"
#enable_cinder_backend_hnas_nfs: "no"
#enable_cinder_backend_iscsi: "no"
#enable_cinder_backend_lvm: "no"
#enable_cinder_backend_nfs: "no"
#enable_cloudkitty: "no"
#enable_collectd: "no"
#enable_congress: "no"
#enable_designate: "no"
#enable_destroy_images: "no"
#enable_etcd: "no"
#enable_freezer: "no"
#enable_gnocchi: "no"
#enable_grafana: "no"
#enable_heat: "yes"
#enable_horizon: "yes"
#enable_horizon_cloudkitty: "{{ enable_cloudkitty | bool }}"
#enable_horizon_freezer: "{{ enable_freezer | bool }}"
#enable_horizon_ironic: "{{ enable_ironic | bool }}"
#enable_horizon_karbor: "{{ enable_karbor | bool }}"
#enable_horizon_magnum: "{{ enable_magnum | bool }}"
#enable_horizon_manila: "{{ enable_manila | bool }}"
#enable_horizon_mistral: "{{ enable_mistral | bool }}"
#enable_horizon_murano: "{{ enable_murano | bool }}"
#enable_horizon_neutron_lbaas: "{{ enable_neutron_lbaas | bool }}"
#enable_horizon_sahara: "{{ enable_sahara | bool }}"
#enable_horizon_searchlight: "{{ enable_searchlight | bool }}"
#enable_horizon_senlin: "{{ enable_senlin | bool }}"
#enable_horizon_solum: "{{ enable_solum | bool }}"
#enable_horizon_tacker: "{{ enable_tacker | bool }}"
#enable_horizon_trove: "{{ enable_trove | bool }}"
#enable_horizon_watcher: "{{ enable_watcher | bool }}"
#enable_influxdb: "no"
#enable_ironic: "no"
#enable_karbor: "no"
#enable_kuryr: "no"
#enable_magnum: "no"
#enable_manila: "no"
#enable_manila_backend_generic: "no"
#enable_manila_backend_hnas: "no"
#enable_mistral: "no"
#enable_mongodb: "no"
#enable_murano: "no"
#enable_multipathd: "no"
#enable_neutron_bgp_dragent: "no"
#enable_neutron_dvr: "no"
#enable_neutron_lbaas: "no"
#enable_neutron_fwaas: "no"
#enable_neutron_qos: "no"
#enable_neutron_agent_ha: "no"
#enable_neutron_vpnaas: "no"
#enable_nova_serialconsole_proxy: "no"
#enable_octavia: "no"
#enable_openvswitch: "{{ neutron_plugin_agent != 'linuxbridge' | bool }}"
#enable_panko: "no"
#enable_rally: "no"
#enable_sahara: "no"
#enable_searchlight: "no"
#enable_senlin: "no"
#enable_solum: "no"
#enable_swift: "no"
#enable_telegraf: "no"
#enable_tacker: "no"
#enable_tempest: "no"
#enable_trove: "no"
#enable_vmtp: "no"
#enable_watcher: "no"
#enable_zun: "no"
###################
# Ceph options
###################
# Ceph can be setup with a caching to improve performance. To use the cache you
# must provide separate disks than those for the OSDs
#ceph_enable_cache: "no"
# Ceph is not able to determine the size of a cache pool automatically,
# so the configuration on the absolute size is required here, otherwise the flush/evict will not work.
#ceph_target_max_bytes: ""
#ceph_target_max_objects: ""
# Valid options are [ forward, none, writeback ]
#ceph_cache_mode: "writeback"
# A requirement for using the erasure-coded pools is you must setup a cache tier
# Valid options are [ erasure, replicated ]
#ceph_pool_type: "replicated"
# Integrate ceph rados object gateway with openstack keystone
#enable_ceph_rgw_keystone: "no"
##############################
# Keystone - Identity Options
##############################
# Valid options are [ uuid, fernet ]
#keystone_token_provider: 'uuid'
# Interval to rotate fernet keys by (in seconds). Must be an interval of
# 60(1 min), 120(2 min), 180(3 min), 240(4 min), 300(5 min), 360(6 min),
# 600(10 min), 720(12 min), 900(15 min), 1200(20 min), 1800(30 min),
# 3600(1 hour), 7200(2 hour), 10800(3 hour), 14400(4 hour), 21600(6 hour),
# 28800(8 hour), 43200(12 hour), 86400(1 day), 604800(1 week).
#fernet_token_expiry: 86400
#########################
# Glance - Image Options
#########################
# Configure image backend.
#glance_backend_file: "yes"
#glance_backend_ceph: "no"
#######################
# Ceilometer options
#######################
# Valid options are [ mongodb, mysql, gnocchi ]
#ceilometer_database_type: "mongodb"
# Valid options are [ mongodb, gnocchi, panko ]
#ceilometer_event_type: "mongodb"
#######################
# Barbican options
#######################
# Valid options are [ simple_crypto, p11_crypto ]
#barbican_crypto_plugin: "simple_crypto"
#barbican_library_path: "/usr/lib/libCryptoki2_64.so"
#######################
## Panko options
#######################
# Valid options are [ mongodb, mysql ]
#panko_database_type: "mysql"
#######################
# Gnocchi options
#######################
# Valid options are [ file, ceph ]
#gnocchi_backend_storage: "{{ 'ceph' if enable_ceph|bool else 'file' }}"
#################################
# Cinder - Block Storage Options
#################################
# Enable / disable Cinder backends
#cinder_backend_ceph: "{{ enable_ceph }}"
#cinder_volume_group: "cinder-volumes"
#cinder_backup_driver: "nfs"
#cinder_backup_share: ""
#cinder_backup_mount_options_nfs: ""
#######################
# Designate options
#######################
# Valid options are [ bind9 ]
designate_backend: "bind9"
designate_ns_record: "sample.openstack.org"
#########################
# Nova - Compute Options
#########################
#nova_backend_ceph: "{{ enable_ceph }}"
##############################
# Horizon - Dashboard Options
##############################
#horizon_backend_database: "{{ enable_murano | bool }}"
#######################################
# Manila - Shared File Systems Options
#######################################
# HNAS backend configuration
#hnas_ip:
#hnas_user:
#hnas_password:
#hnas_evs_id:
#hnas_evs_ip:
#hnas_file_system_name:
##################################
# Swift - Object Storage Options
##################################
# Swift expects block devices to be available for storage. Two types of storage
# are supported: 1 - storage device with a special partition name and filesystem
# label, 2 - unpartitioned disk with a filesystem. The label of this filesystem
# is used to detect the disk which Swift will be using.
# Swift support two mathcing modes, valid options are [ prefix, strict ]
#swift_devices_match_mode: "strict"
# This parameter defines matching pattern: if "strict" mode was selected,
# for swift_devices_match_mode then swift_device_name should specify the name of
# the special swift partition for example: "KOLLA_SWIFT_DATA", if "prefix" mode was
# selected then swift_devices_name should specify a pattern which would match to
# filesystems' labels prepared for swift.
#swift_devices_name: "KOLLA_SWIFT_DATA"
################################################
# Tempest - The OpenStack Integration Test Suite
################################################
# following value must be set when enable tempest
tempest_image_id:
tempest_flavor_ref_id:
tempest_public_network_id:
tempest_floating_network_name:
# tempest_image_alt_id: "{{ tempest_image_id }}"
# tempest_flavor_ref_alt_id: "{{ tempest_flavor_ref_id }}"

195
etc/kolla/passwords.yml Normal file
View File

@ -0,0 +1,195 @@
---
###################
# Ceph options
####################
# These options must be UUID4 values in string format
# XXXXXXXX-XXXX-4XXX-XXXX-XXXXXXXXXXXX
ceph_cluster_fsid:
# for backward compatible consideration, rbd_secret_uuid is only used for nova,
# cinder_rbd_secret_uuid is used for cinder
rbd_secret_uuid:
cinder_rbd_secret_uuid:
###################
# Database options
####################
database_password:
####################
# Docker options
####################
# This should only be set if you require a password for your Docker registry
docker_registry_password:
####################
# OpenStack options
####################
aodh_database_password:
aodh_keystone_password:
barbican_database_password:
barbican_keystone_password:
barbican_p11_password:
barbican_crypto_key:
barbican_crypto_password:
keystone_admin_password:
keystone_database_password:
grafana_database_password:
grafana_admin_password:
glance_database_password:
glance_keystone_password:
gnocchi_database_password:
gnocchi_keystone_password:
karbor_database_password:
karbor_keystone_password:
karbor_openstack_infra_id:
kuryr_keystone_password:
nova_database_password:
nova_api_database_password:
nova_keystone_password:
placement_keystone_password:
neutron_database_password:
neutron_keystone_password:
metadata_secret:
cinder_database_password:
cinder_keystone_password:
cloudkitty_database_password:
cloudkitty_keystone_password:
panko_database_password:
panko_keystone_password:
freezer_database_password:
freezer_keystone_password:
sahara_database_password:
sahara_keystone_password:
designate_database_password:
designate_pool_manager_database_password:
designate_keystone_password:
# This option must be UUID4 value in string format
designate_pool_id:
# This option must be HMAC-MD5 value in string format
designate_rndc_key:
swift_keystone_password:
swift_hash_path_suffix:
swift_hash_path_prefix:
heat_database_password:
heat_keystone_password:
heat_domain_admin_password:
murano_database_password:
murano_keystone_password:
ironic_database_password:
ironic_keystone_password:
ironic_inspector_database_password:
ironic_inspector_keystone_password:
magnum_database_password:
magnum_keystone_password:
mistral_database_password:
mistral_keystone_password:
trove_database_password:
trove_keystone_password:
ceilometer_database_password:
ceilometer_keystone_password:
watcher_database_password:
watcher_keystone_password:
congress_database_password:
congress_keystone_password:
rally_database_password:
senlin_database_password:
senlin_keystone_password:
solum_database_password:
solum_keystone_password:
horizon_secret_key:
horizon_database_password:
telemetry_secret_key:
manila_database_password:
manila_keystone_password:
octavia_database_password:
octavia_keystone_password:
octavia_ca_password:
searchlight_keystone_password:
tacker_database_password:
tacker_keystone_password:
zun_database_password:
zun_keystone_password:
memcache_secret_key:
nova_ssh_key:
private_key:
public_key:
kolla_ssh_key:
private_key:
public_key:
keystone_ssh_key:
private_key:
public_key:
bifrost_ssh_key:
private_key:
public_key:
####################
# Gnocchi options
####################
gnocchi_project_id:
gnocchi_resource_id:
gnocchi_user_id:
####################
# RabbitMQ options
####################
rabbitmq_password:
rabbitmq_cluster_cookie:
####################
# HAProxy options
####################
haproxy_password:
keepalived_password:
####################
# Kibana options
####################
kibana_password:
####################
# etcd options
####################
etcd_cluster_token:

View File

@ -36,10 +36,6 @@ class PathFinder(object):
return os.path.dirname(
os.path.dirname(os.path.abspath(__file__)))
@staticmethod
def find_kolla_dir():
return PathFinder._find(KOLLA_SEARCH_PATHS, None)
@staticmethod
def find_kolla_kubernetes_dir():
return PathFinder._find(KOLLA_KUBERNETES_SEARCH_PATHS, None)
@ -104,36 +100,12 @@ CONFIG_SEARCH_PATHS = [
'./etc/kolla-kubernetes'))
]
# prioritize directories to search for kolla sources
# Search installation paths first
# Then search development paths
# This has a terrible hack to work with the gate. Sadly this is not
# trivial to fix without said hack. As this code is going bye-bye it
# doesn't matter.
KOLLA_SEARCH_PATHS = [
'/usr/share/kolla',
'/usr/local/share/kolla',
'/usr/share/kolla-ansible',
'/usr/local/share/kolla-ansible',
os.path.abspath(os.path.join(PathFinder.find_development_root(),
'../kolla')),
os.path.abspath(os.path.join(PathFinder.find_development_root(),
'kolla')),
os.path.abspath(os.path.join(PathFinder.find_development_root(),
'../kolla-ansible')),
os.path.abspath(os.path.join(PathFinder.find_development_root(),
'kolla-ansible')),
os.path.abspath(os.path.join(PathFinder.find_installed_root(),
'./share/kolla'))
]
# prioritize directories to search for kolla-kubernetes sources
# Search installation paths first
# Then search development paths
KOLLA_KUBERNETES_SEARCH_PATHS = [
'/usr/share/kolla-kubernetes',
'/usr/local/share/kolla-kubernetes',
os.path.abspath(os.path.join(PathFinder.find_installed_root(),
'./share/kolla-kubernetes')),
os.path.abspath(os.path.join(PathFinder.find_development_root()))
os.path.abspath(os.path.join(sys.prefix, './share/kolla-kubernetes')),
os.path.abspath(PathFinder.find_development_root())
]

View File

@ -57,27 +57,24 @@ class KollaKubernetesResources(object):
# path where the file exists. Search method for template files:
# locks onto the first path that exists, and then expects the file
# to be there.
kolla_dir = PathFinder.find_kolla_dir()
kolla_k8s_dir = PathFinder.find_kolla_kubernetes_dir()
files = [
PathFinder.find_config_file('kolla-kubernetes.yml'),
PathFinder.find_config_file('globals.yml'),
PathFinder.find_config_file('passwords.yml'),
os.path.join(kolla_dir, 'ansible/group_vars/all.yml')]
os.path.join(kolla_k8s_dir, 'ansible/group_vars/all.yml')]
if service_name is not None:
ansible_roles_dir = os.path.join(kolla_k8s_dir, 'ansible/roles')
service_ansible_file = os.path.join(
kolla_dir, 'ansible/roles', service_name, 'defaults/main.yml')
ansible_roles_dir, service_name, 'defaults/main.yml')
if os.path.exists(service_ansible_file):
files.append(service_ansible_file)
files.append(os.path.join(kolla_dir,
files.append(os.path.join(kolla_k8s_dir,
'ansible/roles/common/defaults/main.yml'))
# FIXME probably should move this stuff into
# ansible/roles/common/defaults/main.yml instead.
files.append(os.path.join(kolla_dir,
'ansible/roles/haproxy/defaults/main.yml'))
# FIXME I think we need a way to add aditional roles to services
# in the service_resources.yaml.
files.append(os.path.join(kolla_dir,
files.append(os.path.join(kolla_k8s_dir,
'ansible/roles/neutron/defaults/main.yml'))
# Create the config dict

View File

@ -24,6 +24,7 @@ packages =
data_files =
share/kolla-kubernetes/services = services/*
share/kolla-kubernetes/etc_examples = etc/*
share/kolla-kubernetes/ansible = ansible/*
[entry_points]
console_scripts =

View File

@ -5,33 +5,33 @@ NODE=$(hostname -s)
TYPE="$2"
BRANCH="$3"
echo "kolla_base_distro: $1" >> kolla-ansible/etc/kolla/globals.yml
cat tests/conf/ceph-all-in-one/kolla_config >> kolla-ansible/etc/kolla/globals.yml
echo "kolla_base_distro: $1" >> /etc/kolla/globals.yml
cat tests/conf/ceph-all-in-one/kolla_config >> /etc/kolla/globals.yml
IP=172.18.0.1
sed -i "s/^\(kolla_external_vip_address:\).*/\1 '$IP'/" \
kolla-ansible/etc/kolla/globals.yml
/etc/kolla/globals.yml
sed -i "s/^\(kolla_kubernetes_external_vip:\).*/\1 '$IP'/" \
etc/kolla-kubernetes/kolla-kubernetes.yml
/etc/kolla-kubernetes/kolla-kubernetes.yml
cat tests/conf/ceph-all-in-one/kolla_kubernetes_config \
>> etc/kolla-kubernetes/kolla-kubernetes.yml
>> /etc/kolla-kubernetes/kolla-kubernetes.yml
sed -i "s/initial_mon:.*/initial_mon: $NODE/" \
etc/kolla-kubernetes/kolla-kubernetes.yml
/etc/kolla-kubernetes/kolla-kubernetes.yml
if [ "x$TYPE" == "xceph-multi" ]; then
interface=$(netstat -ie | grep -B1 \
$(cat /etc/nodepool/primary_node_private) \
| head -n 1 | awk -F: '{print $1}')
echo "tunnel_interface: $interface" >> kolla-ansible/etc/kolla/globals.yml
echo "tunnel_interface: $interface" >> /etc/kolla/globals.yml
echo "storage_interface: $interface" >> \
etc/kolla-kubernetes/kolla-kubernetes.yml
/etc/kolla-kubernetes/kolla-kubernetes.yml
sed -i "s/172.17.0.1/$(cat /etc/nodepool/primary_node_private)/" \
etc/kolla-kubernetes/kolla-kubernetes.yml
/etc/kolla-kubernetes/kolla-kubernetes.yml
fi
if [ "x$BRANCH" == "x2" -o "x$BRANCH" == "x3" ]; then
echo 'enable_placement: "no"' >> kolla-ansible/etc/kolla/globals.yml
echo 'enable_placement: "no"' >> /etc/kolla/globals.yml
fi
# Generate passwords using SPRNG tool

View File

@ -7,13 +7,13 @@ CONFIG="$2"
BRANCH="$3"
TYPE="$4"
echo "kolla_base_distro: $1" >> kolla-ansible/etc/kolla/globals.yml
cat tests/conf/iscsi-all-in-one/kolla_config >> kolla-ansible/etc/kolla/globals.yml
echo "kolla_base_distro: $1" >> /etc/kolla/globals.yml
cat tests/conf/iscsi-all-in-one/kolla_config >> /etc/kolla/globals.yml
IP=172.18.0.1
sed -i "s/^\(kolla_external_vip_address:\).*/\1 '$IP'/" \
kolla-ansible/etc/kolla/globals.yml
/etc/kolla/globals.yml
sed -i "s/^\(kolla_kubernetes_external_vip:\).*/\1 '$IP'/" \
etc/kolla-kubernetes/kolla-kubernetes.yml
/etc/kolla-kubernetes/kolla-kubernetes.yml
# NOTE(sbezverk) After ceph, set-ip and keepalived get converted
# to helm charts, the following three lines can be removed.
@ -21,7 +21,7 @@ if [ "x$TYPE" == "xsource" ]; then
sed -i 's/.*kolla_install_type:.*/kolla_install_type: \"source\"/g' /etc/kolla/globals.yml
fi
cat tests/conf/iscsi-all-in-one/kolla_kubernetes_config \
>> etc/kolla-kubernetes/kolla-kubernetes.yml
>> /etc/kolla-kubernetes/kolla-kubernetes.yml
tools/generate_passwords.py
ansible-playbook -e ansible_python_interpreter=/usr/bin/python -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla ansible/site.yml

View File

@ -50,15 +50,9 @@ clonemap:
dest: kolla
EOF
[ -x /usr/zuul-env/bin/zuul-cloner ] && \
/usr/zuul-env/bin/zuul-cloner -m /tmp/clonemap --workspace `pwd` \
--branch master --cache-dir /opt/git git://git.openstack.org \
openstack/kolla-ansible && true
[ ! -d kolla-ansible ] && git clone https://github.com/openstack/kolla-ansible.git
sudo ln -s `pwd`/kolla-ansible/etc/kolla /etc/kolla
sudo ln -s `pwd`/kolla-ansible /usr/share/kolla
sudo ln -s `pwd`/etc/kolla-kubernetes /etc/kolla-kubernetes
sudo cp -aR `pwd`/etc/kolla-kubernetes /etc/kolla-kubernetes
sudo cp -aR `pwd`/etc/kolla /etc/kolla
sudo mkdir -p /etc/kolla/config
if [ -f /etc/redhat-release ]; then
sudo yum install -y crudini jq sshpass bzip2
@ -67,7 +61,6 @@ else
sudo apt-get install -y crudini jq sshpass bzip2
fi
pushd kolla-ansible;
pip install pip --upgrade
pip install "ansible<2.1"
pip install "python-cinderclient==1.11.0"
@ -76,10 +69,8 @@ pip install "python-neutronclient"
pip install "selenium"
pip install -r requirements.txt
pip install pyyaml
popd
pip install -r requirements.txt
pip install .
sudo mkdir -p /etc/kolla/config
# NOTE (sbezverk) Added as a workaround since kolla-ansible master had
# use_neutron config option removed. Next 4 lines can be removed after
# kolla_kubernetes stop using mitake 2.0.X images.