diff options
Diffstat (limited to 'xci')
-rw-r--r-- | xci/README.rst | 3 | ||||
-rw-r--r-- | xci/playbooks/configure-localhost.yml | 4 | ||||
-rw-r--r-- | xci/playbooks/configure-opnfvhost.yml | 10 | ||||
-rw-r--r-- | xci/playbooks/provision-vm-nodes.yml | 4 | ||||
-rw-r--r-- | xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/ha/openstack_user_config.yml | 256 | ||||
-rw-r--r-- | xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/ha/user_variables_os-odl-nofeature-ha.yml | 22 | ||||
-rw-r--r-- | xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/mini/openstack_user_config.yml | 171 | ||||
-rw-r--r-- | xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/noha/openstack_user_config.yml | 173 | ||||
-rw-r--r-- | xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/user_variables_os-odl-nofeature.yml | 39 | ||||
-rw-r--r-- | xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/tasks/main.yml | 26 | ||||
-rw-r--r-- | xci/scenarios/os-odl-nofeature/xci_overrides | 7 | ||||
-rw-r--r-- | xci/var/Debian.yml | 1 | ||||
-rw-r--r-- | xci/var/RedHat.yml | 1 | ||||
-rw-r--r-- | xci/var/Suse.yml | 1 | ||||
-rw-r--r-- | xci/var/opnfv.yml | 2 | ||||
-rwxr-xr-x | xci/xci-deploy.sh | 26 |
16 files changed, 720 insertions, 26 deletions
diff --git a/xci/README.rst b/xci/README.rst index 9ce293cd..d7555d46 100644 --- a/xci/README.rst +++ b/xci/README.rst @@ -203,7 +203,6 @@ on each run. To enable it, you need to export the different DEV_PATH vars: -- export OPNFV_RELENG_DEV_PATH=/opt/releng-xci/ - export OPENSTACK_BIFROST_DEV_PATH=/opt/bifrost/ - export OPENSTACK_OSA_DEV_PATH=/opt/openstack-ansible/ @@ -226,8 +225,6 @@ dependent roles in ansible-role-requirements.yml file. If you run into this situation, then your best bet is to replace the XCI ansible-role-requirements.yml file with the upstream one from http://git.openstack.org/cgit/openstack/openstack-ansible/plain/ansible-role-requirements.yml. -You also need to set OPNFV_RELENG_DEV_PATH as explained above in order for this file to be -used throughout the deployment. =========================================== Limitations, Known Issues, and Improvements diff --git a/xci/playbooks/configure-localhost.yml b/xci/playbooks/configure-localhost.yml index e242a7ee..a0837117 100644 --- a/xci/playbooks/configure-localhost.yml +++ b/xci/playbooks/configure-localhost.yml @@ -40,12 +40,10 @@ file: ../var/{{ ansible_os_family }}.yml - name: Synchronize local development releng-xci repository to XCI paths synchronize: - src: "{{ OPNFV_RELENG_DEV_PATH }}" + src: "{{ XCI_PATH }}" dest: "{{ OPNFV_RELENG_PATH }}" recursive: yes delete: yes - when: - - OPNFV_RELENG_DEV_PATH != "" - hosts: localhost connection: local diff --git a/xci/playbooks/configure-opnfvhost.yml b/xci/playbooks/configure-opnfvhost.yml index fdf21786..0f288459 100644 --- a/xci/playbooks/configure-opnfvhost.yml +++ b/xci/playbooks/configure-opnfvhost.yml @@ -30,12 +30,10 @@ file: ../var/{{ ansible_os_family }}.yml - name: Synchronize local development releng-xci repository to XCI paths synchronize: - src: "{{ OPNFV_RELENG_DEV_PATH }}" + src: "{{ XCI_PATH }}" dest: "{{ OPNFV_RELENG_PATH }}" recursive: yes delete: yes - when: - - OPNFV_RELENG_DEV_PATH != "" - name: Synchronize local development openstack-ansible repository to XCI paths synchronize: src: "{{ OPENSTACK_OSA_DEV_PATH }}" @@ -158,6 +156,12 @@ package: name: "{{ opnfv_required_packages }}" state: latest + # Docker is needed for functest + - name: Ensure Docker service is started and enabled + service: + name: "{{ docker_service_name }}" + state: started + enabled: yes - name: install opnfv required pip packages pip: name: "{{ opnfv_required_pip }}" diff --git a/xci/playbooks/provision-vm-nodes.yml b/xci/playbooks/provision-vm-nodes.yml index b9c13999..aa55f6ce 100644 --- a/xci/playbooks/provision-vm-nodes.yml +++ b/xci/playbooks/provision-vm-nodes.yml @@ -44,12 +44,10 @@ - OPENSTACK_BIFROST_DEV_PATH != "" - name: Synchronize local development releng-xci repository to XCI paths synchronize: - src: "{{ OPNFV_RELENG_DEV_PATH }}" + src: "{{ XCI_PATH }}" dest: "{{ OPNFV_RELENG_PATH }}" recursive: yes delete: yes - when: - - OPNFV_RELENG_DEV_PATH != "" - name: Copy extra vars to releng-xci and bifrost synchronize: src: "{{ XCI_EXTRA_VARS_PATH }}" diff --git a/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/ha/openstack_user_config.yml b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/ha/openstack_user_config.yml new file mode 100644 index 00000000..2ca5a987 --- /dev/null +++ b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/ha/openstack_user_config.yml @@ -0,0 +1,256 @@ +--- +cidr_networks: + container: 172.29.236.0/22 + tunnel: 172.29.240.0/22 + storage: 172.29.244.0/22 + +used_ips: + - "172.29.236.1,172.29.236.50" + - "172.29.240.1,172.29.240.50" + - "172.29.244.1,172.29.244.50" + - "172.29.248.1,172.29.248.50" + - "172.29.236.222" + +global_overrides: + internal_lb_vip_address: 172.29.236.222 + external_lb_vip_address: 192.168.122.220 + tunnel_bridge: "br-vxlan" + management_bridge: "br-mgmt" + provider_networks: + - network: + container_bridge: "br-mgmt" + container_type: "veth" + container_interface: "eth1" + ip_from_q: "container" + type: "raw" + group_binds: + - all_containers + - hosts + is_container_address: true + is_ssh_address: true + - network: + container_bridge: "br-vxlan" + container_type: "veth" + container_interface: "eth10" + ip_from_q: "tunnel" + type: "vxlan" + range: "1:1000" + net_name: "vxlan" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-vlan" + container_type: "veth" + container_interface: "eth12" + host_bind_override: "eth12" + type: "flat" + net_name: "flat" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-vlan" + container_type: "veth" + container_interface: "eth11" + host_bind_override: "eth12" + type: "vlan" + range: "102:199" + net_name: "physnet1" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-storage" + container_type: "veth" + container_interface: "eth2" + ip_from_q: "storage" + type: "raw" + group_binds: + - glance_api + - cinder_api + - cinder_volume + - nova_compute + +# ## +# ## Infrastructure +# ## + +# galera, memcache, rabbitmq, utility +shared-infra_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# repository (apt cache, python packages, etc) +repo-infra_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# load balancer +# Ideally the load balancer should not use the Infrastructure hosts. +# Dedicated hardware is best for improved performance and security. +haproxy_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# rsyslog server +# log_hosts: +# log1: +# ip: 172.29.236.14 + +# ## +# ## OpenStack +# ## + +# keystone +identity_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# cinder api services +storage-infra_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# glance +# The settings here are repeated for each infra host. +# They could instead be applied as global settings in +# user_variables, but are left here to illustrate that +# each container could have different storage targets. +image_hosts: + controller00: + ip: 172.29.236.11 + container_vars: + limit_container_types: glance + glance_nfs_client: + - server: "172.29.244.14" + remote_path: "/images" + local_path: "/var/lib/glance/images" + type: "nfs" + options: "_netdev,auto" + controller01: + ip: 172.29.236.12 + container_vars: + limit_container_types: glance + glance_nfs_client: + - server: "172.29.244.14" + remote_path: "/images" + local_path: "/var/lib/glance/images" + type: "nfs" + options: "_netdev,auto" + controller02: + ip: 172.29.236.13 + container_vars: + limit_container_types: glance + glance_nfs_client: + - server: "172.29.244.14" + remote_path: "/images" + local_path: "/var/lib/glance/images" + type: "nfs" + options: "_netdev,auto" + +# nova api, conductor, etc services +compute-infra_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# heat +orchestration_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# horizon +dashboard_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# neutron server, agents (L3, etc) +network_hosts: + controller00: + ip: 172.29.236.11 + controller01: + ip: 172.29.236.12 + controller02: + ip: 172.29.236.13 + +# nova hypervisors +compute_hosts: + compute00: + ip: 172.29.236.14 + compute01: + ip: 172.29.236.15 + +# cinder volume hosts (NFS-backed) +# The settings here are repeated for each infra host. +# They could instead be applied as global settings in +# user_variables, but are left here to illustrate that +# each container could have different storage targets. +storage_hosts: + controller00: + ip: 172.29.236.11 + container_vars: + cinder_backends: + limit_container_types: cinder_volume + nfs_volume: + volume_backend_name: NFS_VOLUME1 + volume_driver: cinder.volume.drivers.nfs.NfsDriver + nfs_mount_options: "rsize=65535,wsize=65535,timeo=1200,actimeo=120" + nfs_shares_config: /etc/cinder/nfs_shares + shares: + - ip: "172.29.244.14" + share: "/volumes" + controller01: + ip: 172.29.236.12 + container_vars: + cinder_backends: + limit_container_types: cinder_volume + nfs_volume: + volume_backend_name: NFS_VOLUME1 + volume_driver: cinder.volume.drivers.nfs.NfsDriver + nfs_mount_options: "rsize=65535,wsize=65535,timeo=1200,actimeo=120" + nfs_shares_config: /etc/cinder/nfs_shares + shares: + - ip: "172.29.244.14" + share: "/volumes" + controller02: + ip: 172.29.236.13 + container_vars: + cinder_backends: + limit_container_types: cinder_volume + nfs_volume: + volume_backend_name: NFS_VOLUME1 + volume_driver: cinder.volume.drivers.nfs.NfsDriver + nfs_mount_options: "rsize=65535,wsize=65535,timeo=1200,actimeo=120" + nfs_shares_config: /etc/cinder/nfs_shares + shares: + - ip: "172.29.244.14" + share: "/volumes" diff --git a/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/ha/user_variables_os-odl-nofeature-ha.yml b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/ha/user_variables_os-odl-nofeature-ha.yml new file mode 100644 index 00000000..25cd6839 --- /dev/null +++ b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/ha/user_variables_os-odl-nofeature-ha.yml @@ -0,0 +1,22 @@ +--- +# Copyright (c) 2017 Ericsson AB and others. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# ## +# ## This file contains commonly used overrides for convenience. Please inspect +# ## the defaults for each role to find additional override options. +# ## + +# Enable clustering for opendaylight +cluster: true
\ No newline at end of file diff --git a/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/mini/openstack_user_config.yml b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/mini/openstack_user_config.yml new file mode 100644 index 00000000..0f8ccd18 --- /dev/null +++ b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/mini/openstack_user_config.yml @@ -0,0 +1,171 @@ +--- +cidr_networks: + container: 172.29.236.0/22 + tunnel: 172.29.240.0/22 + storage: 172.29.244.0/22 + +used_ips: + - "172.29.236.1,172.29.236.50" + - "172.29.240.1,172.29.240.50" + - "172.29.244.1,172.29.244.50" + - "172.29.248.1,172.29.248.50" + +global_overrides: + internal_lb_vip_address: 172.29.236.11 + external_lb_vip_address: 192.168.122.3 + tunnel_bridge: "br-vxlan" + management_bridge: "br-mgmt" + provider_networks: + - network: + container_bridge: "br-mgmt" + container_type: "veth" + container_interface: "eth1" + ip_from_q: "container" + type: "raw" + group_binds: + - all_containers + - hosts + is_container_address: true + is_ssh_address: true + - network: + container_bridge: "br-vxlan" + container_type: "veth" + container_interface: "eth10" + ip_from_q: "tunnel" + type: "vxlan" + range: "1:1000" + net_name: "vxlan" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-vlan" + container_type: "veth" + container_interface: "eth12" + host_bind_override: "eth12" + type: "flat" + net_name: "flat" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-vlan" + container_type: "veth" + container_interface: "eth11" + host_bind_override: "eth12" + type: "vlan" + range: "102:199" + net_name: "physnet1" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-storage" + container_type: "veth" + container_interface: "eth2" + ip_from_q: "storage" + type: "raw" + group_binds: + - glance_api + - cinder_api + - cinder_volume + - nova_compute + +# ## +# ## Infrastructure +# ## + +# galera, memcache, rabbitmq, utility +shared-infra_hosts: + controller00: + ip: 172.29.236.11 + +# repository (apt cache, python packages, etc) +repo-infra_hosts: + controller00: + ip: 172.29.236.11 + +# load balancer +# Ideally the load balancer should not use the Infrastructure hosts. +# Dedicated hardware is best for improved performance and security. +haproxy_hosts: + controller00: + ip: 172.29.236.11 + +# rsyslog server +# log_hosts: +# log1: +# ip: 172.29.236.14 + +# ## +# ## OpenStack +# ## + +# keystone +identity_hosts: + controller00: + ip: 172.29.236.11 + +# cinder api services +storage-infra_hosts: + controller00: + ip: 172.29.236.11 + +# glance +# The settings here are repeated for each infra host. +# They could instead be applied as global settings in +# user_variables, but are left here to illustrate that +# each container could have different storage targets. +image_hosts: + controller00: + ip: 172.29.236.11 + container_vars: + limit_container_types: glance + glance_nfs_client: + - server: "172.29.244.12" + remote_path: "/images" + local_path: "/var/lib/glance/images" + type: "nfs" + options: "_netdev,auto" + +# nova api, conductor, etc services +compute-infra_hosts: + controller00: + ip: 172.29.236.11 + +# heat +orchestration_hosts: + controller00: + ip: 172.29.236.11 + +# horizon +dashboard_hosts: + controller00: + ip: 172.29.236.11 + +# neutron server, agents (L3, etc) +network_hosts: + controller00: + ip: 172.29.236.11 + +# nova hypervisors +compute_hosts: + compute00: + ip: 172.29.236.12 + +# cinder volume hosts (NFS-backed) +# The settings here are repeated for each infra host. +# They could instead be applied as global settings in +# user_variables, but are left here to illustrate that +# each container could have different storage targets. +storage_hosts: + controller00: + ip: 172.29.236.11 + container_vars: + cinder_backends: + limit_container_types: cinder_volume + nfs_volume: + volume_backend_name: NFS_VOLUME1 + volume_driver: cinder.volume.drivers.nfs.NfsDriver + nfs_mount_options: "rsize=65535,wsize=65535,timeo=1200,actimeo=120" + nfs_shares_config: /etc/cinder/nfs_shares + shares: + - ip: "172.29.244.12" + share: "/volumes" diff --git a/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/noha/openstack_user_config.yml b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/noha/openstack_user_config.yml new file mode 100644 index 00000000..7ed9cd32 --- /dev/null +++ b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/noha/openstack_user_config.yml @@ -0,0 +1,173 @@ +--- +cidr_networks: + container: 172.29.236.0/22 + tunnel: 172.29.240.0/22 + storage: 172.29.244.0/22 + +used_ips: + - "172.29.236.1,172.29.236.50" + - "172.29.240.1,172.29.240.50" + - "172.29.244.1,172.29.244.50" + - "172.29.248.1,172.29.248.50" + +global_overrides: + internal_lb_vip_address: 172.29.236.11 + external_lb_vip_address: 192.168.122.3 + tunnel_bridge: "br-vxlan" + management_bridge: "br-mgmt" + provider_networks: + - network: + container_bridge: "br-mgmt" + container_type: "veth" + container_interface: "eth1" + ip_from_q: "container" + type: "raw" + group_binds: + - all_containers + - hosts + is_container_address: true + is_ssh_address: true + - network: + container_bridge: "br-vxlan" + container_type: "veth" + container_interface: "eth10" + ip_from_q: "tunnel" + type: "vxlan" + range: "1:1000" + net_name: "vxlan" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-vlan" + container_type: "veth" + container_interface: "eth12" + host_bind_override: "eth12" + type: "flat" + net_name: "flat" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-vlan" + container_type: "veth" + container_interface: "eth11" + host_bind_override: "eth12" + type: "vlan" + range: "102:199" + net_name: "physnet1" + group_binds: + - neutron_openvswitch_agent + - network: + container_bridge: "br-storage" + container_type: "veth" + container_interface: "eth2" + ip_from_q: "storage" + type: "raw" + group_binds: + - glance_api + - cinder_api + - cinder_volume + - nova_compute + +# ## +# ## Infrastructure +# ## + +# galera, memcache, rabbitmq, utility +shared-infra_hosts: + controller00: + ip: 172.29.236.11 + +# repository (apt cache, python packages, etc) +repo-infra_hosts: + controller00: + ip: 172.29.236.11 + +# load balancer +# Ideally the load balancer should not use the Infrastructure hosts. +# Dedicated hardware is best for improved performance and security. +haproxy_hosts: + controller00: + ip: 172.29.236.11 + +# rsyslog server +# log_hosts: +# log1: +# ip: 172.29.236.14 + +# ## +# ## OpenStack +# ## + +# keystone +identity_hosts: + controller00: + ip: 172.29.236.11 + +# cinder api services +storage-infra_hosts: + controller00: + ip: 172.29.236.11 + +# glance +# The settings here are repeated for each infra host. +# They could instead be applied as global settings in +# user_variables, but are left here to illustrate that +# each container could have different storage targets. +image_hosts: + controller00: + ip: 172.29.236.11 + container_vars: + limit_container_types: glance + glance_nfs_client: + - server: "172.29.244.12" + remote_path: "/images" + local_path: "/var/lib/glance/images" + type: "nfs" + options: "_netdev,auto" + +# nova api, conductor, etc services +compute-infra_hosts: + controller00: + ip: 172.29.236.11 + +# heat +orchestration_hosts: + controller00: + ip: 172.29.236.11 + +# horizon +dashboard_hosts: + controller00: + ip: 172.29.236.11 + +# neutron server, agents (L3, etc) +network_hosts: + controller00: + ip: 172.29.236.11 + +# nova hypervisors +compute_hosts: + compute00: + ip: 172.29.236.12 + compute01: + ip: 172.29.236.13 + +# cinder volume hosts (NFS-backed) +# The settings here are repeated for each infra host. +# They could instead be applied as global settings in +# user_variables, but are left here to illustrate that +# each container could have different storage targets. +storage_hosts: + controller00: + ip: 172.29.236.11 + container_vars: + cinder_backends: + limit_container_types: cinder_volume + nfs_volume: + volume_backend_name: NFS_VOLUME1 + volume_driver: cinder.volume.drivers.nfs.NfsDriver + nfs_mount_options: "rsize=65535,wsize=65535,timeo=1200,actimeo=120" + nfs_shares_config: /etc/cinder/nfs_shares + shares: + - ip: "172.29.244.12" + share: "/volumes" diff --git a/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/user_variables_os-odl-nofeature.yml b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/user_variables_os-odl-nofeature.yml new file mode 100644 index 00000000..04b1c36e --- /dev/null +++ b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/files/user_variables_os-odl-nofeature.yml @@ -0,0 +1,39 @@ +--- +# Copyright (c) 2017 Ericsson AB and others. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# ## +# ## This file contains commonly used overrides for convenience. Please inspect +# ## the defaults for each role to find additional override options. +# ## + +# Ensure the openvswitch kernel module is loaded +openstack_host_specific_kernel_modules: + - name: "openvswitch" + pattern: "CONFIG_OPENVSWITCH" + group: "network_hosts" + +# Use OpenDaylight SDN Controller +neutron_plugin_type: "ml2.opendaylight" +neutron_opendaylight_conf_ini_overrides: + ml2_odl: + username: "admin" + password: "admin" + port_binding_controller: "pseudo-agentdb-binding" + url: "http://{{ internal_lb_vip_address }}:8080/controller/nb/v2/neutron" + +neutron_ml2_drivers_type: "flat,vlan,vxlan" + +neutron_plugin_base: + - odl-router_v2
\ No newline at end of file diff --git a/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/tasks/main.yml b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/tasks/main.yml new file mode 100644 index 00000000..61d31a7f --- /dev/null +++ b/xci/scenarios/os-odl-nofeature/role/os-odl-nofeature/tasks/main.yml @@ -0,0 +1,26 @@ +--- +# SPDX-license-identifier: Apache-2.0 +############################################################################## +# Copyright (c) 2017 Ericsson AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +- name: copy user_variables_os-odl-nofeature.yml + copy: + src: "user_variables_os-odl-nofeature.yml" + dest: "{{OPENSTACK_OSA_ETC_PATH}}/user_variables_os-odl-nofeature.yml" + +- name: copy user_variables_os-odl-nofeature-ha.yml + copy: + src: "{{XCI_FLAVOR}}/user_variables_os-odl-nofeature-ha.yml" + dest: "{{OPENSTACK_OSA_ETC_PATH}}/user_variables_os-odl-nofeature-ha.yml" + when: + - XCI_FLAVOR == "ha" + +- name: copy os-odl-nofeature scenario specific openstack_user_config.yml + copy: + src: "{{XCI_FLAVOR}}/openstack_user_config.yml" + dest: "{{OPENSTACK_OSA_ETC_PATH}}/openstack_user_config.yml"
\ No newline at end of file diff --git a/xci/scenarios/os-odl-nofeature/xci_overrides b/xci/scenarios/os-odl-nofeature/xci_overrides new file mode 100644 index 00000000..ed6c4489 --- /dev/null +++ b/xci/scenarios/os-odl-nofeature/xci_overrides @@ -0,0 +1,7 @@ +#!/bin/bash + +if [[ $OPNFV_SCENARIO == "os-odl-nofeature" ]] && [[ $XCI_FLAVOR == "ha" ]]; then + export VM_MEMORY_SIZE=20480 +elif [[ $OPNFV_SCENARIO == "os-odl-nofeature" ]]; then + export VM_MEMORY_SIZE=16384 +fi
\ No newline at end of file diff --git a/xci/var/Debian.yml b/xci/var/Debian.yml index 16bb879b..bd07473a 100644 --- a/xci/var/Debian.yml +++ b/xci/var/Debian.yml @@ -11,3 +11,4 @@ interface: "ens3" python_crypto_package_name: python-crypto docker_package_name: docker.io +docker_service_name: docker diff --git a/xci/var/RedHat.yml b/xci/var/RedHat.yml index bcd6d044..8ea2e15a 100644 --- a/xci/var/RedHat.yml +++ b/xci/var/RedHat.yml @@ -10,3 +10,4 @@ # this is placeholder and left blank intentionally to complete later on python_crypto_package_name: python-crypto docker_package_name: docker +docker_service_name: docker diff --git a/xci/var/Suse.yml b/xci/var/Suse.yml index 6b4c76ec..a041e18b 100644 --- a/xci/var/Suse.yml +++ b/xci/var/Suse.yml @@ -11,3 +11,4 @@ interface: "eth0" python_crypto_package_name: python-pycrypto docker_package_name: docker +docker_service_name: docker diff --git a/xci/var/opnfv.yml b/xci/var/opnfv.yml index 5378d13e..287f8849 100644 --- a/xci/var/opnfv.yml +++ b/xci/var/opnfv.yml @@ -10,7 +10,6 @@ OPNFV_RELENG_GIT_URL: "{{ lookup('env','OPNFV_RELENG_GIT_URL') }}" OPNFV_RELENG_PATH: "{{ lookup('env','OPNFV_RELENG_PATH') }}" XCI_DEVEL_ROOT: "{{ lookup('env','XCI_DEVEL_ROOT') }}" -OPNFV_RELENG_DEV_PATH: "{{ lookup('env','OPNFV_RELENG_DEV_PATH') }}" OPNFV_RELENG_VERSION: "{{ lookup('env','OPNFV_RELENG_VERSION') }}" OPENSTACK_BIFROST_GIT_URL: "{{ lookup('env','OPENSTACK_BIFROST_GIT_URL') }}" OPENSTACK_BIFROST_PATH: "{{ lookup('env','OPENSTACK_BIFROST_PATH') }}" @@ -27,6 +26,7 @@ XCI_ANSIBLE_PIP_VERSION: "{{ lookup('env','XCI_ANSIBLE_PIP_VERSION') }}" XCI_FLAVOR: "{{ lookup('env','XCI_FLAVOR') }}" XCI_FLAVOR_ANSIBLE_FILE_PATH: "{{ lookup('env','XCI_FLAVOR_ANSIBLE_FILE_PATH') }}" XCI_LOOP: "{{ lookup('env','XCI_LOOP') }}" +XCI_PATH: "{{ lookup('env', 'XCI_PATH') }}/" LOG_PATH: "{{ lookup('env','LOG_PATH') }}" OPNFV_HOST_IP: "{{ lookup('env','OPNFV_HOST_IP') }}" OPNFV_SSH_HOST_KEYS_PATH: "{{ lookup('env', 'OPNFV_SSH_HOST_KEYS_PATH') }}" diff --git a/xci/xci-deploy.sh b/xci/xci-deploy.sh index a7435e75..3a4616ce 100755 --- a/xci/xci-deploy.sh +++ b/xci/xci-deploy.sh @@ -50,15 +50,15 @@ fi # override any of them. #------------------------------------------------------------------------------- # find where are we -export XCI_PATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +export XCI_PATH="$(git rev-parse --show-toplevel)" # source user vars -source $XCI_PATH/config/user-vars +source $XCI_PATH/xci/config/user-vars # source pinned versions -source $XCI_PATH/config/pinned-versions +source $XCI_PATH/xci/config/pinned-versions # source flavor configuration -source "$XCI_PATH/config/${XCI_FLAVOR}-vars" +source "$XCI_PATH/xci/config/${XCI_FLAVOR}-vars" # source xci configuration -source $XCI_PATH/config/env-vars +source $XCI_PATH/xci/config/env-vars if [[ -z $(echo $PATH | grep "$HOME/.local/bin") ]]; then export PATH="$HOME/.local/bin:$PATH" @@ -67,7 +67,7 @@ fi #------------------------------------------------------------------------------- # Sanitize local development environment variables #------------------------------------------------------------------------------- -user_local_dev_vars=(OPNFV_RELENG_DEV_PATH OPENSTACK_OSA_DEV_PATH OPENSTACK_BIFROST_DEV_PATH) +user_local_dev_vars=(OPENSTACK_OSA_DEV_PATH OPENSTACK_BIFROST_DEV_PATH) for local_user_var in ${user_local_dev_vars[@]}; do [[ -n ${!local_user_var:-} ]] && export $local_user_var=${!local_user_var%/}/ done @@ -136,15 +136,15 @@ fi #------------------------------------------------------------------------------- echo "Info: Cloning OPNFV scenario repositories" echo "-------------------------------------------------------------------------" -cd $XCI_PATH/playbooks +cd $XCI_PATH/xci/playbooks ansible-playbook ${XCI_ANSIBLE_VERBOSITY} -i inventory get-opnfv-scenario-requirements.yml echo "-------------------------------------------------------------------------" #------------------------------------------------------------------------------- # Get scenario variables overrides #------------------------------------------------------------------------------- -if [[ -f $XCI_PATH/scenarios/${OPNFV_SCENARIO:-_no_scenario_}/xci_overrides ]]; then - source $XCI_PATH/scenarios/$OPNFV_SCENARIO/xci_overrides +if [[ -f $XCI_PATH/xci/scenarios/${OPNFV_SCENARIO:-_no_scenario_}/xci_overrides ]]; then + source $XCI_PATH/xci/scenarios/$OPNFV_SCENARIO/xci_overrides fi #------------------------------------------------------------------------------- @@ -161,9 +161,9 @@ echo "Info: Starting provisining VM nodes using openstack/bifrost" echo "-------------------------------------------------------------------------" # We are using sudo so we need to make sure that env_reset is not present sudo sed -i "s/^Defaults.*env_reset/#&/" /etc/sudoers -cd $XCI_PATH/../bifrost/ +cd $XCI_PATH/bifrost/ sudo -E bash ./scripts/destroy-env.sh -cd $XCI_PATH/playbooks +cd $XCI_PATH/xci/playbooks ansible-playbook ${XCI_ANSIBLE_VERBOSITY} -i inventory provision-vm-nodes.yml cd ${OPENSTACK_BIFROST_PATH} bash ./scripts/bifrost-provision.sh @@ -184,7 +184,7 @@ echo echo "Info: Configuring localhost for openstack-ansible" echo "-----------------------------------------------------------------------" -cd $XCI_PATH/playbooks +cd $XCI_PATH/xci/playbooks ansible-playbook ${XCI_ANSIBLE_VERBOSITY} -i inventory configure-localhost.yml echo "-----------------------------------------------------------------------" echo "Info: Configured localhost host for openstack-ansible" @@ -324,7 +324,7 @@ echo "Info: OpenStack installation is successfully completed!" #------------------------------------------------------------------------------- echo "Info: Openstack login details" echo "-----------------------------------------------------------------------" -OS_USER_CONFIG=$XCI_PATH/file/$XCI_FLAVOR/openstack_user_config.yml +OS_USER_CONFIG=$XCI_PATH/xci/file/$XCI_FLAVOR/openstack_user_config.yml python -c \ "import yaml if '$XCI_FLAVOR' is 'aio': |