diff options
Diffstat (limited to 'ci')
44 files changed, 588 insertions, 196 deletions
diff --git a/ci/01-bootstrap.sh b/ci/01-bootstrap.sh index e45c2ee0..5d57fab5 100755 --- a/ci/01-bootstrap.sh +++ b/ci/01-bootstrap.sh @@ -4,4 +4,4 @@ set -ex controllername=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml` cloudname=`awk 'NR==1{print substr($1, 1, length($1)-1)}' deployconfig.yaml` -juju bootstrap $controllername $cloudname --debug --to bootstrap.maas +juju bootstrap $controllername $cloudname --debug --constraints tags=bootstrap --bootstrap-series=$1 diff --git a/ci/02-deploybundle.sh b/ci/02-deploybundle.sh index df669a88..9473f322 100755 --- a/ci/02-deploybundle.sh +++ b/ci/02-deploybundle.sh @@ -156,7 +156,7 @@ openfile_fix() { if [ "$opnfvsdn" = "ocl" ] then - TAG="ubuntu16.04-4.0.2.0-34.tar.gz" + TAG="ubuntu16.04-4.1.1.0-103.tar.gz" for ROLE in contrail-controller contrail-analytics contrail-analyticsdb do diff --git a/ci/03-maasdeploy.sh b/ci/03-maasdeploy.sh index a6b311dc..73b789f1 100755 --- a/ci/03-maasdeploy.sh +++ b/ci/03-maasdeploy.sh @@ -61,9 +61,9 @@ if [ "$snapinstall" -eq "0" ]; then sudo apt-add-repository ppa:maas/stable -y fi if [ "bionic" != "$opnfvdistro" ]; then - sudo apt-add-repository cloud-archive:pike -y + sudo apt-add-repository cloud-archive:queens -y if [ "aarch64" == "$NODE_ARCTYPE" ]; then - sudo add-apt-repository ppa:ubuntu-cloud-archive/pike-staging -y + sudo add-apt-repository ppa:ubuntu-cloud-archive/queens-staging -y fi fi @@ -209,7 +209,6 @@ sudo virsh pool-define-as default --type dir --target /var/lib/libvirt/images/ | sudo virsh pool-start default || true sudo virsh pool-autostart default || true -# In case of virtual install set network if [ "$virtinstall" -eq 1 ]; then sudo virsh net-dumpxml default > default-net-org.xml sed -i '/dhcp/d' default-net-org.xml @@ -217,7 +216,18 @@ if [ "$virtinstall" -eq 1 ]; then sudo virsh net-destroy default sudo virsh net-define default-net-org.xml sudo virsh net-start default + sudo virsh net-autostart default || true rm -f default-net-org.xml +else + # As we use kvm so setup network on admin network + ADMIN_BR=`cat labconfig.json | jq '.opnfv.spaces[] | select(.type=="admin")'.bridge | cut -d \" -f 2 ` + sed -i "s@brAdm@$ADMIN_BR@" net.xml + sudo virsh net-destroy default || true + sudo virsh net-undefine default || true + sudo virsh net-define net.xml || true + sudo virsh net-autostart default || true + sudo virsh net-start default || true + sudo virsh net-autostart default || true fi # @@ -282,6 +292,7 @@ configuremaas(){ maas $PROFILE maas set-config name=upstream_dns value=$MY_UPSTREAM_DNS || true maas $PROFILE maas set-config name='maas_name' value=$MAAS_NAME || true maas $PROFILE maas set-config name='ntp_server' value='ntp.ubuntu.com' || true + maas $PROFILE domain update 0 name=$MAAS_NAME || true maas $PROFILE sshkeys create "key=$SSH_KEY" || true for tag in bootstrap compute control storage @@ -293,9 +304,9 @@ configuremaas(){ maas $PROFILE tags create name='opnfv-dpdk' comment='OPNFV DPDK enablement' \ kernel_opts='hugepagesz=2M hugepages=1024 hugepagesz=1G hugepages=20 default_hugepagesz=1G intel_iommu=on' || true - maas $PROFILE package-repositories create name="Ubuntu Proposed new" \ - url="http://archive.ubuntu.com/ubuntu" components="main" \ - distributions="xenial-proposed" arches=amd64,i386 + #maas $PROFILE package-repositories create name="Ubuntu Proposed new" \ + # url="http://archive.ubuntu.com/ubuntu" components="main" \ + # distributions="xenial-proposed" arches=amd64,i386 #create the required spaces. maas $PROFILE space update 0 name=default || true @@ -310,8 +321,16 @@ configuremaas(){ maas $PROFILE boot-source update $SOURCE_ID \ url=$URL keyring_filename=$KEYRING_FILE || true + maas $PROFILE boot-source-selections create 1 \ + os="ubuntu" release="xenial" arches="amd64" \ + labels="*" || true + maas $PROFILE boot-source-selections create 1 \ + os="ubuntu" release="bionic" arches="amd64" \ + labels="*" || true + if [ $NODE_ARCTYPE != "x86_64" ] ; then - maas $PROFILE boot-source-selection update 1 1 arches="$NODE_ARCHES" + maas $PROFILE boot-source-selection update 1 1 arches="$NODE_ARCHES" || true + maas $PROFILE boot-source-selection update 1 2 arches="$NODE_ARCHES" || true fi if [ "$snapinstall" -eq "0" ]; then @@ -465,9 +484,7 @@ addnodes(){ VIRSHIP="" # TODO: parse from $VIRSHURL if needed fi - if [ "$virtinstall" -eq 1 ]; then - netw=" --network bridge=virbr0,model=virtio" - elif ([ "$VIRSHHOST" != "" ]); then + if ([ "$VIRSHHOST" != "" ]); then # Get the bridge hosting the remote virsh brid=$(ssh $VIRSHHOST "ip a l | grep $VIRSHHOST | perl -pe 's/.* (.*)\$/\$1/g'") netw=" --network bridge=$brid,model=virtio" @@ -584,7 +601,20 @@ addnodes(){ done fi - maas $PROFILE pods create type=virsh power_address="$VIRSHURL" power_user=$USER + # Iterate to avoid "Conflict error" issue + for ii in 1 2 3 4 5 6 7 8 9 10 + do + echo "Try $ii" + maas $PROFILE pods create type=virsh power_address="$VIRSHURL" power_user=$USER > /tmp/deploy.out 2>&1 || true + cat /tmp/deploy.out + if ! fgrep -q 'Conflict' /tmp/deploy.out + then + break + else + continue + fi + done + # Make sure nodes are added into MAAS and none of them is in commissioning state i=0 diff --git a/ci/clean.sh b/ci/clean.sh index 1f3ef54f..1bd60056 100755 --- a/ci/clean.sh +++ b/ci/clean.sh @@ -18,6 +18,7 @@ juju destroy-controller $controllername --destroy-all-models -y || true rm -rf precise rm -rf trusty rm -rf xenial +rm -rf bionic rm -rf ~/joid_config/admin-openrc sleep 10 sudo sysctl -w vm.drop_caches=3 diff --git a/ci/config_tpl/juju2/bundle_tpl/aodh.yaml b/ci/config_tpl/juju2/bundle_tpl/aodh.yaml index 1c297ce2..0553ff8f 100644 --- a/ci/config_tpl/juju2/bundle_tpl/aodh.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/aodh.yaml @@ -1,6 +1,6 @@ aodh: charm: "./{{ ubuntu.release }}/aodh" - num_units: 1 + num_units: {{ unit_qty() }} {% if os.service.bindings %} bindings: "": *oam-space @@ -9,8 +9,22 @@ internal: *internal-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin +{% if os.ha.mode == 'ha' %} + vip: *aodh-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_aodh_public + os-internal-hostname: *hostname_aodh_public + os-admin-hostname: *hostname_aodh_public +{% endif %} to: - - "lxd:nodes/0" +{% for unit_id in to_select() %} + - "lxd:nodes/{{ unit_id }}" +{% endfor %} {# Empty block to avoid bad block trim #} diff --git a/ci/config_tpl/juju2/bundle_tpl/bundle.yaml b/ci/config_tpl/juju2/bundle_tpl/bundle.yaml index 8c248ce0..1ad45fb9 100644 --- a/ci/config_tpl/juju2/bundle_tpl/bundle.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/bundle.yaml @@ -10,6 +10,7 @@ {% else %} nodes: charm: "cs:{{ ubuntu.release }}/ubuntu" + series: {{ ubuntu.release }} {% if os.ha.mode == 'ha' %} num_units: 3 {% else %} @@ -18,6 +19,7 @@ nodes-compute: charm: "cs:{{ ubuntu.release }}/ubuntu" + series: {{ ubuntu.release }} {% if os.ha.mode == 'ha' %} num_units: {{ opnfv.units - 3 }} {% else %} @@ -26,6 +28,7 @@ {% endif %} ntp: charm: "./{{ ubuntu.release }}/ntp" + series: {{ ubuntu.release }} {% if os.network.controller == 'ocl' %} options: source: "0.ubuntu.pool.ntp.org 1.ubuntu.pool.ntp.org 2.ubuntu.pool.ntp.org 3.ubuntu.pool.ntp.org" @@ -57,6 +60,7 @@ {% include 'rabbitmq.yaml' %} {% include 'neutron-api.yaml' %} {% include 'heat.yaml' %} +{% include 'designate.yaml' %} {% if os.network.controller != 'ocl' %} {% include 'neutron-gateway.yaml' %} {% include 'ceilometer.yaml' %} diff --git a/ci/config_tpl/juju2/bundle_tpl/ceilometer.yaml b/ci/config_tpl/juju2/bundle_tpl/ceilometer.yaml index 49bd4f7d..2f7a1dc4 100644 --- a/ci/config_tpl/juju2/bundle_tpl/ceilometer.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/ceilometer.yaml @@ -1,13 +1,44 @@ - mongodb: - charm: ./{{ ubuntu.release }}/mongodb - num_units: 1 - constraints: *oam-space-constr + gnocchi: + charm: ./{{ ubuntu.release }}/gnocchi + num_units: {{ unit_qty() }} +{% if os.service.bindings %} + bindings: + "": *oam-space + public: *public-space + admin: *admin-space + internal: *internal-space +{% endif %} + series: {{ ubuntu.release }} + options: + openstack-origin: *openstack-origin +{% if os.ha.mode == 'ha' %} + vip: *gnocchi-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_gnocchi_public + os-internal-hostname: *hostname_gnocchi_public + os-admin-hostname: *hostname_gnocchi_public +{% endif %} + to: +{% for unit_id in to_select() %} + - "lxd:nodes/{{ unit_id }}" +{% endfor %} + memcached: + charm: ./{{ ubuntu.release }}/memcached + num_units: 2 {% if os.service.bindings %} bindings: "": *internal-space {% endif %} + series: {{ ubuntu.release }} + options: + allow-ufw-ip6-softfail: True to: - "lxd:nodes/0" + - "lxd:nodes/1" ceilometer: charm: "./{{ ubuntu.release }}/ceilometer" num_units: {{ unit_qty() }} @@ -18,11 +49,20 @@ admin: *admin-space internal: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin region: *openstack-region {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.ceilometer }} + vip: *ceilometer-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_ceilometer_public + os-internal-hostname: *hostname_ceilometer_public + os-admin-hostname: *hostname_ceilometer_public {% endif %} to: {% for unit_id in to_select() %} diff --git a/ci/config_tpl/juju2/bundle_tpl/ceph.yaml b/ci/config_tpl/juju2/bundle_tpl/ceph.yaml index b8948e61..180e0490 100644 --- a/ci/config_tpl/juju2/bundle_tpl/ceph.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/ceph.yaml @@ -8,6 +8,7 @@ public: *ceph-public-space cluster: *ceph-cluster-space {% endif %} + series: {{ ubuntu.release }} options: expected-osd-count: {{ unit_ceph_qty() }} source: *openstack-origin @@ -43,10 +44,11 @@ public: *ceph-public-space cluster: *ceph-cluster-space {% endif %} + series: {{ ubuntu.release }} options: osd-devices: *osd-devices osd-journal: *osd-journal - osd-reformat: 'yes' + #osd-reformat: 'True' source: *openstack-origin {% if os.network.ipv6 %} prefer-ipv6: {{ os.network.ipv6 }} @@ -79,6 +81,7 @@ internal: *internal-space mon: *ceph-public-space {% endif %} + series: {{ ubuntu.release }} options: region: *openstack-region operator-roles: "Member,admin,SwiftOperator" @@ -90,7 +93,15 @@ ceph-osd-replication-count: {{ unit_ceph_qty() }} {% endif %} {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.radosgw }} + vip: *rados-gateway-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_radosgw_public + os-admin-hostname: *hostname_radosgw_public + os-internal-hostname: *hostname_radosgw_public {% endif %} to: {% for unit_id in to_select(unit_qty()) %} diff --git a/ci/config_tpl/juju2/bundle_tpl/cinder.yaml b/ci/config_tpl/juju2/bundle_tpl/cinder.yaml index 12b6acc6..7486172b 100644 --- a/ci/config_tpl/juju2/bundle_tpl/cinder.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/cinder.yaml @@ -14,6 +14,7 @@ internal: *internal-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin {% if os.git_repo.origin_git %} @@ -32,7 +33,15 @@ ceph-osd-replication-count: {{ unit_ceph_qty() }} {% endif %} {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.cinder }} + vip: *cinder-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_cinder_public + os-internal-hostname: *hostname_cinder_public + os-admin-hostname: *hostname_cinder_public {% endif %} to: {% if opnfv.storage_dict.scaleio is defined %} diff --git a/ci/config_tpl/juju2/bundle_tpl/congress.yaml b/ci/config_tpl/juju2/bundle_tpl/congress.yaml index 03ebc7d0..a96951a7 100644 --- a/ci/config_tpl/juju2/bundle_tpl/congress.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/congress.yaml @@ -9,6 +9,7 @@ shared-db: *internal-space public: *public-space {% endif %} + series: {{ ubuntu.release }} options: region: *openstack-region {% if ubuntu.release == 'trusty' %} diff --git a/ci/config_tpl/juju2/bundle_tpl/designate.yaml b/ci/config_tpl/juju2/bundle_tpl/designate.yaml new file mode 100644 index 00000000..208b1951 --- /dev/null +++ b/ci/config_tpl/juju2/bundle_tpl/designate.yaml @@ -0,0 +1,49 @@ + designate: + charm: "./{{ ubuntu.release }}/designate" + num_units: {{ unit_qty() }} +{% if os.service.bindings %} + bindings: + "": *oam-space + public: *public-space + admin: *admin-space + internal: *internal-space + shared-db: *internal-space +{% endif %} + series: {{ ubuntu.release }} + options: + openstack-origin: *openstack-origin +{% if os.git_repo.origin_git %} + openstack-origin-git: "{{ os.git_repo.branch }}" +{% endif %} + region: *openstack-region +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_keystone_public + os-internal-hostname: *hostname_keystone_public + os-admin-hostname: *hostname_keystone_public +{% endif %} +{% if os.network.ipv6 %} + prefer-ipv6: {{ os.network.ipv6 }} +{% endif %} +{% if os.api.worker_multiplier %} + worker-multiplier: *worker-multiplier +{% endif %} +{% if os.ha.mode == 'ha' %} + vip: *designate-vip +{% endif %} + to: +{% for unit_id in to_select() %} + - "lxd:nodes/{{ unit_id }}" +{% endfor %} + designate-bind: + charm: "./{{ ubuntu.release }}/designate-bind" + num_units: 2 + bindings: + "": *internal-space + series: {{ ubuntu.release }} + to: + - "lxd:nodes/0" + - "lxd:nodes/1" + diff --git a/ci/config_tpl/juju2/bundle_tpl/glance.yaml b/ci/config_tpl/juju2/bundle_tpl/glance.yaml index e765bc30..1eac2e07 100644 --- a/ci/config_tpl/juju2/bundle_tpl/glance.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/glance.yaml @@ -10,6 +10,7 @@ internal: *internal-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin worker-multiplier: *worker-multiplier @@ -24,7 +25,15 @@ ceph-osd-replication-count: {{ unit_ceph_qty() }} {% endif %} {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.glance }} + vip: *glance-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_glance_public + os-internal-hostname: *hostname_glance_public + os-admin-hostname: *hostname_glance_public {% endif %} to: {% for unit_id in to_select() %} diff --git a/ci/config_tpl/juju2/bundle_tpl/haclusters.yaml b/ci/config_tpl/juju2/bundle_tpl/haclusters.yaml index 26ea2867..79efb3fb 100644 --- a/ci/config_tpl/juju2/bundle_tpl/haclusters.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/haclusters.yaml @@ -1,6 +1,7 @@ hacluster-keystone: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 @@ -9,6 +10,7 @@ {% endif %} hacluster-cinder: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 @@ -17,6 +19,7 @@ {% endif %} hacluster-heat: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 @@ -25,6 +28,7 @@ {% endif %} hacluster-horizon: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 @@ -33,6 +37,7 @@ {% endif %} hacluster-nova: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 @@ -41,6 +46,7 @@ {% endif %} hacluster-neutron: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 @@ -49,6 +55,7 @@ {% endif %} hacluster-glance: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 @@ -58,6 +65,7 @@ {% if os.network.controller != 'ocl' %} hacluster-ceilometer: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 @@ -67,19 +75,46 @@ {% endif %} hacluster-mysql: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 {% if os.network.ipv6 %} prefer-ipv6: {{ os.network.ipv6 }} {% endif %} -{% if os.beta.hacluster_ceph_radosgw %} hacluster-ceph-radosgw: charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} options: corosync_transport: unicast cluster_count: 3 {% if os.network.ipv6 %} prefer-ipv6: {{ os.network.ipv6 }} {% endif %} + hacluster-aodh: + charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} + options: + corosync_transport: unicast + cluster_count: 3 +{% if os.network.ipv6 %} + prefer-ipv6: {{ os.network.ipv6 }} +{% endif %} + hacluster-gnocchi: + charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} + options: + corosync_transport: unicast + cluster_count: 3 +{% if os.network.ipv6 %} + prefer-ipv6: {{ os.network.ipv6 }} +{% endif %} + hacluster-designate: + charm: "./{{ ubuntu.release }}/hacluster" + series: {{ ubuntu.release }} + options: + corosync_transport: unicast + cluster_count: 3 +{% if os.network.ipv6 %} + prefer-ipv6: {{ os.network.ipv6 }} {% endif %} diff --git a/ci/config_tpl/juju2/bundle_tpl/harelations.yaml b/ci/config_tpl/juju2/bundle_tpl/harelations.yaml index e5274ed8..60652fe6 100644 --- a/ci/config_tpl/juju2/bundle_tpl/harelations.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/harelations.yaml @@ -11,4 +11,7 @@ - [ 'nova-cloud-controller:ha', 'hacluster-nova:ha' ] - [ 'openstack-dashboard:ha', 'hacluster-horizon:ha' ] - [ 'ceph-radosgw:ha', 'hacluster-ceph-radosgw:ha' ] + - [ 'aodh:ha', 'hacluster-aodh:ha' ] + - [ 'gnocchi:ha', 'hacluster-gnocchi:ha' ] + - [ 'designate:ha', 'hacluster-designate:ha' ] {% endif %} diff --git a/ci/config_tpl/juju2/bundle_tpl/heat.yaml b/ci/config_tpl/juju2/bundle_tpl/heat.yaml index bff431d3..4a647e8a 100644 --- a/ci/config_tpl/juju2/bundle_tpl/heat.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/heat.yaml @@ -9,6 +9,7 @@ internal: *internal-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin region: *openstack-region @@ -18,7 +19,15 @@ {% endif %} worker-multiplier: *worker-multiplier {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.heat }} + vip: *heat-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_heat_public + os-internal-hostname: *hostname_heat_public + os-admin-hostname: *hostname_heat_public {% endif %} to: {% for unit_id in to_select() %} diff --git a/ci/config_tpl/juju2/bundle_tpl/keystone.yaml b/ci/config_tpl/juju2/bundle_tpl/keystone.yaml index 1c6b78f6..9314af16 100644 --- a/ci/config_tpl/juju2/bundle_tpl/keystone.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/keystone.yaml @@ -9,6 +9,7 @@ internal: *internal-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin {% if os.git_repo.origin_git %} @@ -18,6 +19,16 @@ admin-role: {{ os.admin.role }} keystone-admin-role: {{ os.admin.role }} preferred-api-version: 3 +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + #use-https: 'yes' + #https-service-endpoints: 'True' + os-public-hostname: *hostname_keystone_public + os-internal-hostname: *hostname_keystone_public + os-admin-hostname: *hostname_keystone_public +{% endif %} {% if os.network.ipv6 %} prefer-ipv6: {{ os.network.ipv6 }} {% endif %} @@ -27,7 +38,7 @@ admin-password: {{ opnfv.admin_password | default(os.admin.password) }} admin-token: {{ os.admin.name }} {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.keystone }} + vip: *keystone-vip {% endif %} to: {% for unit_id in to_select() %} diff --git a/ci/config_tpl/juju2/bundle_tpl/mysql.yaml b/ci/config_tpl/juju2/bundle_tpl/mysql.yaml index f7ecc708..273c9f8b 100644 --- a/ci/config_tpl/juju2/bundle_tpl/mysql.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/mysql.yaml @@ -7,6 +7,7 @@ cluster: *internal-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: innodb-buffer-pool-size: 256M max-connections: 4000 @@ -23,7 +24,7 @@ prefer-ipv6: {{ os.network.ipv6 }} {% endif %} {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.mysql }} + vip: *mysql-vip {% endif %} min-cluster-size: {{ unit_qty() }} to: diff --git a/ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml b/ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml index f6daca52..3bdee5e8 100644 --- a/ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/neutron-api.yaml @@ -9,6 +9,7 @@ internal: *internal-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin {% if os.git_repo.origin_git %} @@ -21,7 +22,7 @@ prefer-ipv6: {{ os.network.ipv6 }} {% endif %} {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.neutron }} + vip: *neutron-api-vip {% endif %} {% if os.network.controller == 'nosdn' %} flat-network-providers: physnet1 @@ -47,6 +48,14 @@ {% if os.network.l2_population %} l2-population: true {% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_neutron_public + os-internal-hostname: *hostname_neutron_public + os-admin-hostname: *hostname_neutron_public +{% endif %} to: {% for unit_id in to_select() %} - "lxd:nodes/{{ unit_id }}" diff --git a/ci/config_tpl/juju2/bundle_tpl/neutron-gateway.yaml b/ci/config_tpl/juju2/bundle_tpl/neutron-gateway.yaml index dd1471d2..1f307da6 100644 --- a/ci/config_tpl/juju2/bundle_tpl/neutron-gateway.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/neutron-gateway.yaml @@ -10,6 +10,7 @@ "": *oam-space data: *overlay-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin {% if os.git_repo.origin_git %} diff --git a/ci/config_tpl/juju2/bundle_tpl/neutron-ovs.yaml b/ci/config_tpl/juju2/bundle_tpl/neutron-ovs.yaml index 7714456a..eae8e4ec 100644 --- a/ci/config_tpl/juju2/bundle_tpl/neutron-ovs.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/neutron-ovs.yaml @@ -3,6 +3,7 @@ {% if os.service.bindings %} bindings: data: *overlay-space + series: {{ ubuntu.release }} options: {% else %} options: @@ -23,6 +24,7 @@ {% if os.network.controller == 'nosdn' %} bridge-mappings: physnet1:br-data data-port: *data-port + #enable-local-dhcp-and-metadata: true {% else %} ext-port: {{ opnfv.ext_port }} {% endif %} diff --git a/ci/config_tpl/juju2/bundle_tpl/nova-cloud-controller.yaml b/ci/config_tpl/juju2/bundle_tpl/nova-cloud-controller.yaml index bfb4c27d..7b9520f5 100644 --- a/ci/config_tpl/juju2/bundle_tpl/nova-cloud-controller.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/nova-cloud-controller.yaml @@ -9,6 +9,7 @@ internal: *internal-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin {% if os.git_repo.origin_git %} @@ -25,7 +26,15 @@ prefer-ipv6: {{ os.network.ipv6 }} {% endif %} {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.nova }} + vip: *nova-cc-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_nova_public + os-internal-hostname: *hostname_nova_public + os-admin-hostname: *hostname_nova_public {% endif %} {% if opnfv.domain is defined %} #console-proxy-ip: {{ opnfv.domain }} diff --git a/ci/config_tpl/juju2/bundle_tpl/nova-compute.yaml b/ci/config_tpl/juju2/bundle_tpl/nova-compute.yaml index 73591b6b..93c97705 100644 --- a/ci/config_tpl/juju2/bundle_tpl/nova-compute.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/nova-compute.yaml @@ -16,6 +16,7 @@ bindings: "": *oam-space internal: *internal-space + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin {% if os.git_repo.origin_git %} diff --git a/ci/config_tpl/juju2/bundle_tpl/oclphase1.yaml b/ci/config_tpl/juju2/bundle_tpl/oclphase1.yaml index 3746a1e5..3d754b59 100644 --- a/ci/config_tpl/juju2/bundle_tpl/oclphase1.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/oclphase1.yaml @@ -1,82 +1,83 @@ contrail-openstack: charm: ./{{ ubuntu.release }}/contrail-openstack + series: {{ ubuntu.release }} options: install-keys: | - | -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1 - - mQENBFgjd4cBCAC7nEIGx6SRod7OONALolVPDV/lGIRUH/qU1HYULTxALnve0vn2 - gOYDROZWWLN5yAWwOnNJ/xrXJdvlJ+wT3vSord3dafe42ynajJB48NNfgq0qCzJy - 832jA5CUPqoSBEQtWnEl6oDTf9iL/bsvybLKys1llQqZkgLNOunwJe9Mp0nhv9G3 - 7C7MpmjGjd3eviZaTPevONFVtDbWHU5QG8VEdX3n9QBNLzgaddMrY3ejg9ajGJ5H - OOiSa71OxVZG+hc6O26LtjZgXikZ5CZLbCSHMpzXOZzuKn1xbLz1BLna5F5Y7czs - XywyHK/Fq07T7ihzZ3GEhVfpbpOF+7egSY4lABEBAAG0J2plbmtpbnMgKGplbmtp - bnMpIDxqZW5raW5zQGp1bmlwZXIubmV0PokBOAQTAQIAIgUCWCN3hwIbAwYLCQgH - AwIGFQgCCQoLBBYCAwECHgECF4AACgkQeXOdQRGBcvcSaggAoh/87zZvJ09dH9yn - gGMtlnRyfob9LIpW9A9QB7yIpwm+awye0rG7cH6vs3LH9sr4V+GDhXNl3eaO9+BT - 9XxoyPllZ4tjiZ7kCKslK95V5mmHKa8hnnA7bo7sKrXJ3w5nYowEQUYLdaMdrWLx - cyJFJuYKEP5Fkx6TECsebMR4ly6rJjGDLFysuhWNAjOm7lNG2ZtS9s5d101HNhxN - RH71YMOGEfc2XeW5B6o2enjRmBWeoEIVhxn8YyPqtHbwQNwoSCdIXNyWF0f6Ju+s - q7OAPzGkWMdvXwN3Wlko8qitB+yGXE9muip7osEbt3gpwhMCcYiprvIBKdDoQPBc - 1xYMDrkBDQRYI3eHAQgAniMKcSf1aEergyyZZKFyQ4hkgAsg5eM3H5UngKDqAJZF - fuaibQ3jzpdqtGQU2xLPHNKsJIqAsGtxEnfXmZAdwJHkx+xMOV0VorMEU5HuuEFc - WXL1WL6dRfEmmFev0/ZBtZm4EE/ARlnTLBqxLRooEGljIacdqVakr8J23kbChulA - oz7AaWzJYzCcbvwveNL9ZxEQDLMtIcAXh5LubBZDR0uq9UgkPX3wTdQ0zQ6hR3MZ - KK0WYvXIPgESmrstCOrSR9X1d8hwjjwsgwVQwp1vGGHjWjEleCZvz7WyM0qFIRcj - 9kLbnm6flJMK0Bowg/3yuiG55EBK+3b9TNdSDuG/mwARAQABiQEfBBgBAgAJBQJY - I3eHAhsMAAoJEHlznUERgXL3aYAH/3GKj4V0qJCi7lW2NMH0nCdqp5Q1pyIm77Nv - VU4WH16jNXcNPKJv+9yLC2tCkfVcX7C2clT25SJ4dwPsos2Kcnnh3nNHi6S9SxWG - GzVy7o0preT1M01LE5zAADQlBPelOZseEM4EWgszNQ0dxrn030YWH9jKoNjUGI0W - hRq4c2qV1N7RG/QiIWJhB4Fkyxh5bl0GODjYhPB/3am2i8gkTksH9FQa1cVydVSc - FV6Ju8WGiUPpHGnDEmyzqudIAXtNApN16AO+09ECOaIJEgO+wcUZpJ8tAkrQ1CZs - FMy4DESyZ1go1Myueds3X6iCCCtrmk9x5FAKRMb7NvkN2+dbj5s= - =9u/w + mQENBFqVcvkBCACnPEXVBLmB79vQFRMu8sg4cNl0nvxTfStlkbrsuqs4JCKhvVWU + 6xF7Fa3e8up6t8Wn+53yqBEQhImN3RTDfE1RijHbIDHED2K8XtmMzHzN/ZuOwTxN + PdXN70HF+HBMW4egbDcImSyullPw65D5C3pHKZHmbnwPjXOAEdy3+6/8iNZex3mf + 4PDNs+KFmEblRWMTWryK7BdU3KI41o6jlixm5BkgPOQ5Tn0IZ300pGsIm2rvb6nN + LHsBDSPkamjGleDidqqEnS7ueMiRNSYg33bxbA/V5EtMcHpGbLSyMaLodqv5H/0L + ibt1nKEJnuV1/nNrTQMSpWCIGn5+f3UzQX+XABEBAAG0LFN0dWFydCBNYWNraWUg + KE9QTkZWKSA8d3NtYWNraWVAanVuaXBlci5uZXQ+iQE4BBMBAgAiBQJalXL5AhsD + BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDVIWmOj2VUIlUFB/9T8faY5vnZ + zJvU3GUJI4nNjj7kZeotfItBrBTtcWblkalIvDg/qqyMW6ZWr8Bl5I/Cs8LIDi5/ + UaHkrekpU5tECWZkF+qbUcoZ7e0wENj1L3j+SHHJZ231pU2N6Dkrks+X1QL7qcx1 + xXUMajzd+BfyxMGshpNu1vRmwVbtJNrRYzpPclfNsdz0D264o04n9XgSZMCz52gM + bNF1l9QEm7mVDZMxPImSNr2JjQCtKOuiTyQpXtzXQEVPwLerrG+3Ys6leSggckXp + W9sTEGDt8fREsUgWthAST4k2NRtA/yaULnbQZYChTmIzOPcw9gT5gl4KIzOpZc5t + fTIc/RNsBB2BuQENBFqVcvkBCACzqDT7QAw7xIN7gKQWzX82DZLCnTuOx83jW3U+ + cEZVFhYNfsqUY+Kp48IyePqeQCYvoBxkVGhnIBCT4cRzlfwj2AxoI8S4mDMI6GlD + Q0DaAlX+BFKDqLPOrDrFGtYBDwMWVjhgV4PaZ5w4J17RKaann5RWBTFObNtUNVtJ + Xr7XRUjBnUg76nZX6qzUj22V7LBMtF8vcf+pe+AHY0OV24CGJOvHbUNS+sh8Sfse + yGpqSdoVjU9UjgkSpiJl7PWFPrXqoiNsxR6nEeXufy8q9+X4DsCVdiaomifCw1FN + HoP/xVUDUDBMeTAC8zseTardit4rt0Gtuk+5DuRm9otpGNSbABEBAAGJAR8EGAEC + AAkFAlqVcvkCGwwACgkQ1SFpjo9lVCKUOggAh8CNa+AkoEJsRCtzjW+3dJIaSk5w + KEpq9fVlmAcCbyIimB3NDAgGLSCTSc3JeXt5Hdgp4M0+j56lVEOtcTC0HWQYYVL2 + 4QKv9fLypgJe5DLYtQmAyQOXNmO6P77/2KdeB1flxZiWmCDr3VJRgWseMILKb3oQ + 49Hfmk7HQrKOi0KaHbx0tpbUHo3uWR4H/QeQE3pCOA+ighqP3Mu3AHI/ySmWZyhc + kvvGambz75gXUdOb9L6eqV9lHQhFUCJznMdjCpd8HUFsbQiAaWKsFv5T5cpmBhDc + /MslWGpfFi+hs/ritGELl9+CiFdn6YPXULEb653V65ev8vg7NwX78ifNQw== + =SMUT -----END PGP PUBLIC KEY BLOCK----- install-sources: | - - "deb http://65.122.57.42/repo /" + - "deb http://65.122.57.45:30002/opnfv /" contrail-agent: charm: ./{{ ubuntu.release }}/contrail-agent + series: {{ ubuntu.release }} options: install-keys: | - | -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1 - mQENBFgjd4cBCAC7nEIGx6SRod7OONALolVPDV/lGIRUH/qU1HYULTxALnve0vn2 - gOYDROZWWLN5yAWwOnNJ/xrXJdvlJ+wT3vSord3dafe42ynajJB48NNfgq0qCzJy - 832jA5CUPqoSBEQtWnEl6oDTf9iL/bsvybLKys1llQqZkgLNOunwJe9Mp0nhv9G3 - 7C7MpmjGjd3eviZaTPevONFVtDbWHU5QG8VEdX3n9QBNLzgaddMrY3ejg9ajGJ5H - OOiSa71OxVZG+hc6O26LtjZgXikZ5CZLbCSHMpzXOZzuKn1xbLz1BLna5F5Y7czs - XywyHK/Fq07T7ihzZ3GEhVfpbpOF+7egSY4lABEBAAG0J2plbmtpbnMgKGplbmtp - bnMpIDxqZW5raW5zQGp1bmlwZXIubmV0PokBOAQTAQIAIgUCWCN3hwIbAwYLCQgH - AwIGFQgCCQoLBBYCAwECHgECF4AACgkQeXOdQRGBcvcSaggAoh/87zZvJ09dH9yn - gGMtlnRyfob9LIpW9A9QB7yIpwm+awye0rG7cH6vs3LH9sr4V+GDhXNl3eaO9+BT - 9XxoyPllZ4tjiZ7kCKslK95V5mmHKa8hnnA7bo7sKrXJ3w5nYowEQUYLdaMdrWLx - cyJFJuYKEP5Fkx6TECsebMR4ly6rJjGDLFysuhWNAjOm7lNG2ZtS9s5d101HNhxN - RH71YMOGEfc2XeW5B6o2enjRmBWeoEIVhxn8YyPqtHbwQNwoSCdIXNyWF0f6Ju+s - q7OAPzGkWMdvXwN3Wlko8qitB+yGXE9muip7osEbt3gpwhMCcYiprvIBKdDoQPBc - 1xYMDrkBDQRYI3eHAQgAniMKcSf1aEergyyZZKFyQ4hkgAsg5eM3H5UngKDqAJZF - fuaibQ3jzpdqtGQU2xLPHNKsJIqAsGtxEnfXmZAdwJHkx+xMOV0VorMEU5HuuEFc - WXL1WL6dRfEmmFev0/ZBtZm4EE/ARlnTLBqxLRooEGljIacdqVakr8J23kbChulA - oz7AaWzJYzCcbvwveNL9ZxEQDLMtIcAXh5LubBZDR0uq9UgkPX3wTdQ0zQ6hR3MZ - KK0WYvXIPgESmrstCOrSR9X1d8hwjjwsgwVQwp1vGGHjWjEleCZvz7WyM0qFIRcj - 9kLbnm6flJMK0Bowg/3yuiG55EBK+3b9TNdSDuG/mwARAQABiQEfBBgBAgAJBQJY - I3eHAhsMAAoJEHlznUERgXL3aYAH/3GKj4V0qJCi7lW2NMH0nCdqp5Q1pyIm77Nv - VU4WH16jNXcNPKJv+9yLC2tCkfVcX7C2clT25SJ4dwPsos2Kcnnh3nNHi6S9SxWG - GzVy7o0preT1M01LE5zAADQlBPelOZseEM4EWgszNQ0dxrn030YWH9jKoNjUGI0W - hRq4c2qV1N7RG/QiIWJhB4Fkyxh5bl0GODjYhPB/3am2i8gkTksH9FQa1cVydVSc - FV6Ju8WGiUPpHGnDEmyzqudIAXtNApN16AO+09ECOaIJEgO+wcUZpJ8tAkrQ1CZs - FMy4DESyZ1go1Myueds3X6iCCCtrmk9x5FAKRMb7NvkN2+dbj5s= - =9u/w + mQENBFqVcvkBCACnPEXVBLmB79vQFRMu8sg4cNl0nvxTfStlkbrsuqs4JCKhvVWU + 6xF7Fa3e8up6t8Wn+53yqBEQhImN3RTDfE1RijHbIDHED2K8XtmMzHzN/ZuOwTxN + PdXN70HF+HBMW4egbDcImSyullPw65D5C3pHKZHmbnwPjXOAEdy3+6/8iNZex3mf + 4PDNs+KFmEblRWMTWryK7BdU3KI41o6jlixm5BkgPOQ5Tn0IZ300pGsIm2rvb6nN + LHsBDSPkamjGleDidqqEnS7ueMiRNSYg33bxbA/V5EtMcHpGbLSyMaLodqv5H/0L + ibt1nKEJnuV1/nNrTQMSpWCIGn5+f3UzQX+XABEBAAG0LFN0dWFydCBNYWNraWUg + KE9QTkZWKSA8d3NtYWNraWVAanVuaXBlci5uZXQ+iQE4BBMBAgAiBQJalXL5AhsD + BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDVIWmOj2VUIlUFB/9T8faY5vnZ + zJvU3GUJI4nNjj7kZeotfItBrBTtcWblkalIvDg/qqyMW6ZWr8Bl5I/Cs8LIDi5/ + UaHkrekpU5tECWZkF+qbUcoZ7e0wENj1L3j+SHHJZ231pU2N6Dkrks+X1QL7qcx1 + xXUMajzd+BfyxMGshpNu1vRmwVbtJNrRYzpPclfNsdz0D264o04n9XgSZMCz52gM + bNF1l9QEm7mVDZMxPImSNr2JjQCtKOuiTyQpXtzXQEVPwLerrG+3Ys6leSggckXp + W9sTEGDt8fREsUgWthAST4k2NRtA/yaULnbQZYChTmIzOPcw9gT5gl4KIzOpZc5t + fTIc/RNsBB2BuQENBFqVcvkBCACzqDT7QAw7xIN7gKQWzX82DZLCnTuOx83jW3U+ + cEZVFhYNfsqUY+Kp48IyePqeQCYvoBxkVGhnIBCT4cRzlfwj2AxoI8S4mDMI6GlD + Q0DaAlX+BFKDqLPOrDrFGtYBDwMWVjhgV4PaZ5w4J17RKaann5RWBTFObNtUNVtJ + Xr7XRUjBnUg76nZX6qzUj22V7LBMtF8vcf+pe+AHY0OV24CGJOvHbUNS+sh8Sfse + yGpqSdoVjU9UjgkSpiJl7PWFPrXqoiNsxR6nEeXufy8q9+X4DsCVdiaomifCw1FN + HoP/xVUDUDBMeTAC8zseTardit4rt0Gtuk+5DuRm9otpGNSbABEBAAGJAR8EGAEC + AAkFAlqVcvkCGwwACgkQ1SFpjo9lVCKUOggAh8CNa+AkoEJsRCtzjW+3dJIaSk5w + KEpq9fVlmAcCbyIimB3NDAgGLSCTSc3JeXt5Hdgp4M0+j56lVEOtcTC0HWQYYVL2 + 4QKv9fLypgJe5DLYtQmAyQOXNmO6P77/2KdeB1flxZiWmCDr3VJRgWseMILKb3oQ + 49Hfmk7HQrKOi0KaHbx0tpbUHo3uWR4H/QeQE3pCOA+ighqP3Mu3AHI/ySmWZyhc + kvvGambz75gXUdOb9L6eqV9lHQhFUCJznMdjCpd8HUFsbQiAaWKsFv5T5cpmBhDc + /MslWGpfFi+hs/ritGELl9+CiFdn6YPXULEb653V65ev8vg7NwX78ifNQw== + =SMUT -----END PGP PUBLIC KEY BLOCK----- install-sources: | - - "deb http://65.122.57.42/repo /" + - "deb http://65.122.57.45:30002/opnfv /" contrail-analytics: charm: ./{{ ubuntu.release }}/contrail-analytics diff --git a/ci/config_tpl/juju2/bundle_tpl/odl.yaml b/ci/config_tpl/juju2/bundle_tpl/odl.yaml index 2b12e6f0..b38d92dc 100644 --- a/ci/config_tpl/juju2/bundle_tpl/odl.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/odl.yaml @@ -7,6 +7,7 @@ controller-api: *internal-space ovsdb-manager: *internal-space {% endif %} + series: {{ ubuntu.release }} options: install-url: "https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.6.0-Carbon/distribution-karaf-0.6.0-Carbon.tar.gz" {% if os.network.sfc %} diff --git a/ci/config_tpl/juju2/bundle_tpl/onos.yaml b/ci/config_tpl/juju2/bundle_tpl/onos.yaml index a59d584f..da7f7202 100644 --- a/ci/config_tpl/juju2/bundle_tpl/onos.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/onos.yaml @@ -1,6 +1,7 @@ onos-controller: charm: ./{{ ubuntu.release }}/onos-controller num_units: 1 + series: {{ ubuntu.release }} options: {% if opnfv.ext_port is defined %} ext-port: {{ opnfv.ext_port }} diff --git a/ci/config_tpl/juju2/bundle_tpl/openbaton.yaml b/ci/config_tpl/juju2/bundle_tpl/openbaton.yaml index a01d13ff..a3fc3cd9 100644 --- a/ci/config_tpl/juju2/bundle_tpl/openbaton.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/openbaton.yaml @@ -6,6 +6,7 @@ "": *oam-space internal: *internal-space {% endif %} + series: {{ ubuntu.release }} to: - "lxd:nodes/0" {# Empty block to avoid bad block trim #} diff --git a/ci/config_tpl/juju2/bundle_tpl/openstack-dashboard.yaml b/ci/config_tpl/juju2/bundle_tpl/openstack-dashboard.yaml index 87fe85e9..c789df64 100644 --- a/ci/config_tpl/juju2/bundle_tpl/openstack-dashboard.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/openstack-dashboard.yaml @@ -7,6 +7,7 @@ "": *public-space shared-db: *internal-space {% endif %} + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin {% if os.git_repo.origin_git %} @@ -22,7 +23,15 @@ prefer-ipv6: {{ os.network.ipv6 }} {% endif %} {% if os.ha.mode == 'ha' %} - vip: {{ opnfv.vip.dashboard }} + vip: *dashboard-vip +{% endif %} +{% if os.api.ssl %} + ssl_ca: *ssl_ca + ssl_cert: *ssl_cert + ssl_key: *ssl_key + os-public-hostname: *hostname_dashboard_public + os-internal-hostname: *hostname_dashboard_public + os-admin-hostname: *hostname_dashboard_public {% endif %} to: {% for unit_id in to_select() %} diff --git a/ci/config_tpl/juju2/bundle_tpl/opnfv-promise.yaml b/ci/config_tpl/juju2/bundle_tpl/opnfv-promise.yaml index d00d47b0..8fecd04e 100644 --- a/ci/config_tpl/juju2/bundle_tpl/opnfv-promise.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/opnfv-promise.yaml @@ -5,6 +5,7 @@ bindings: "": *internal-space {% endif %} + series: {{ ubuntu.release }} to: - "lxd:nodes/0" {# Empty block to avoid bad block trim #} diff --git a/ci/config_tpl/juju2/bundle_tpl/rabbitmq.yaml b/ci/config_tpl/juju2/bundle_tpl/rabbitmq.yaml index b3bba40d..ff0ca773 100644 --- a/ci/config_tpl/juju2/bundle_tpl/rabbitmq.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/rabbitmq.yaml @@ -7,6 +7,7 @@ amqp: *internal-space cluster: *internal-space {% endif %} + series: {{ ubuntu.release }} options: source: *openstack-origin {% if opnfv.storage_dict.ceph is defined %} diff --git a/ci/config_tpl/juju2/bundle_tpl/relations.yaml b/ci/config_tpl/juju2/bundle_tpl/relations.yaml index 2ed75e67..04ce15ef 100644 --- a/ci/config_tpl/juju2/bundle_tpl/relations.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/relations.yaml @@ -5,10 +5,16 @@ - [ 'nova-cloud-controller:quantum-network-service', 'neutron-gateway:quantum-network-service' ] - [ 'ceilometer:amqp', 'rabbitmq-server:amqp' ] - [ 'ceilometer-agent:ceilometer-service', 'ceilometer:ceilometer-service' ] - - [ 'ceilometer:identity-service', 'keystone:identity-service' ] - [ 'ceilometer:identity-notifications', 'keystone:identity-notifications' ] + - [ 'ceilometer:identity-service', 'keystone:identity-service' ] + - [ 'ceilometer:identity-credentials', 'keystone:identity-credentials' ] - [ 'ceilometer-agent:nova-ceilometer', 'nova-compute:nova-ceilometer' ] - - [ 'ceilometer:shared-db', 'mongodb:database' ] + - [ 'gnocchi:storage-ceph', 'ceph-mon:client' ] + - [ 'gnocchi:shared-db', 'mysql:shared-db' ] + - [ 'gnocchi:amqp', 'rabbitmq-server:amqp' ] + - [ 'gnocchi:coordinator-memcached', 'memcached:cache' ] + - [ 'gnocchi:metric-service', 'ceilometer:metric-service' ] + - [ 'gnocchi:identity-service', 'keystone:identity-service' ] {% endif %} - [ 'heat:shared-db', 'mysql:shared-db' ] - [ 'heat:identity-service', 'keystone:identity-service' ] @@ -59,6 +65,11 @@ - [ 'aodh:amqp', 'rabbitmq-server:amqp' ] - [ 'aodh:shared-db', 'mysql:shared-db' ] - [ 'aodh:identity-service', 'keystone:identity-service' ] + - [ designate, mysql ] + - [ designate, designate-bind ] + - [ designate, keystone ] + - [ designate, rabbitmq-server ] + - [ designate, memcached ] {% if os.lxd %} - [ 'nova-compute:lxd', 'lxd:lxd' ] {% endif %} diff --git a/ci/config_tpl/juju2/bundle_tpl/scaleio.yaml b/ci/config_tpl/juju2/bundle_tpl/scaleio.yaml index 0dae4294..c083b3d4 100644 --- a/ci/config_tpl/juju2/bundle_tpl/scaleio.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/scaleio.yaml @@ -2,6 +2,7 @@ scaleio-mdm: charm: "./{{ ubuntu.release }}/scaleio-mdm" num_units: {{ unit_scaleio_qty() }} + series: {{ ubuntu.release }} options: cluster-mode: 3 to: @@ -17,6 +18,7 @@ scaleio-sds: charm: "./{{ ubuntu.release }}/scaleio-sds" num_units: {{ opnfv.units }} + series: {{ ubuntu.release }} options: protection-domain: 'pd1' device-paths: {{ opnfv.storage_dict.scaleio.disk }} @@ -32,6 +34,7 @@ {% endif %} scaleio-sdc: charm: "./{{ ubuntu.release }}/scaleio-sdc" + series: {{ ubuntu.release }} num_units: {{ opnfv.units }} to: {% if os.hyperconverged %} @@ -45,12 +48,14 @@ {% endif %} scaleio-gw: charm: "./{{ ubuntu.release }}/scaleio-gw" + series: {{ ubuntu.release }} num_units: 1 to: - "nodes/0" scaleio-gui: charm: "./{{ ubuntu.release }}/scaleio-gui" num_units: 1 + series: {{ ubuntu.release }} to: - "nodes/0" {% endif %} diff --git a/ci/config_tpl/juju2/bundle_tpl/spaces.yaml b/ci/config_tpl/juju2/bundle_tpl/spaces.yaml index 3023dfc0..7036b936 100644 --- a/ci/config_tpl/juju2/bundle_tpl/spaces.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/spaces.yaml @@ -1,4 +1,4 @@ -{% if os.release == 'mitaka' %} +{% if ubuntu.release == 'bionic' %} openstack-origin: &openstack-origin distro {% else %} openstack-origin: &openstack-origin cloud:{{ ubuntu.release }}-{{ os.release }} @@ -66,3 +66,40 @@ {% endif %} osd-journal: &osd-journal +{% if os.ha.mode == 'ha' %} + # Various VIPs + aodh-vip: &aodh-vip {{ opnfv.vip.aodh }} + ceilometer-vip: &ceilometer-vip {{ opnfv.vip.ceilometer }} + cinder-vip: &cinder-vip {{ opnfv.vip.cinder }} + dashboard-vip: &dashboard-vip {{ opnfv.vip.dashboard }} + designate-vip: &designate-vip {{ opnfv.vip.designate }} + glance-vip: &glance-vip {{ opnfv.vip.glance }} + gnocchi-vip: &gnocchi-vip {{ opnfv.vip.gnocchi }} + heat-vip: &heat-vip {{ opnfv.vip.heat }} + keystone-vip: &keystone-vip {{ opnfv.vip.keystone }} + mysql-vip: &mysql-vip {{ opnfv.vip.mysql }} + neutron-api-vip: &neutron-api-vip {{ opnfv.vip.neutron }} + nova-cc-vip: &nova-cc-vip {{ opnfv.vip.nova }} + rados-gateway-vip: &rados-gateway-vip {{ opnfv.vip.radosgw }} +{% endif %} + +{% if os.api.ssl %} + ssl_ca: &ssl_ca include-base64://ssl/ca.crt + ssl_cert: &ssl_cert include-base64://ssl/maas.crt + ssl_key: &ssl_key include-base64://ssl/maas.key + + hostname_aodh_public: &hostname_aodh_public aodh.maas + hostname_ceilometer_public: &hostname_ceilometer_public ceilometer.maas + hostname_cinder_public: &hostname_cinder_public cinder.maas + hostname_dashboard_public: &hostname_dashboard_public openstack-dashboard.maas + hostname_designate_public: &hostname_designate_public designate.maas + hostname_glance_public: &hostname_glance_public glance.maas + hostname_gnocchi_public: &hostname_gnocchi_public gnocchi.maas + hostname_heat_public: &hostname_heat_public heat.maas + hostname_keystone_public: &hostname_keystone_public keystone.maas + hostname_rabbitmq: &hostname_rabbitmq rabbitmq.maas + hostname_neutron_public: &hostname_neutron_public neutron-api.maas + hostname_nova_public: &hostname_nova_public nova-cloud-controller.maas + hostname_radosgw_public: &hostname_radosgw_public rados-gateway.maas +{% endif %} + diff --git a/ci/config_tpl/juju2/bundle_tpl/subordinate.yaml b/ci/config_tpl/juju2/bundle_tpl/subordinate.yaml index 488462fe..61e672df 100644 --- a/ci/config_tpl/juju2/bundle_tpl/subordinate.yaml +++ b/ci/config_tpl/juju2/bundle_tpl/subordinate.yaml @@ -2,12 +2,14 @@ {% if os.network.controller != 'ocl' %} ceilometer-agent: charm: ./{{ ubuntu.release }}/ceilometer-agent + series: {{ ubuntu.release }} options: openstack-origin: *openstack-origin {% endif %} {% if opnfv.storage_dict.ceph is defined %} cinder-ceph: charm: ./{{ ubuntu.release }}/cinder-ceph + series: {{ ubuntu.release }} options: {% if opnfv.storage_dict.ceph is defined %} ceph-osd-replication-count: {{ unit_ceph_qty() }} @@ -18,11 +20,13 @@ {% elif os.network.controller == 'odl' %} neutron-api-odl: charm: ./{{ ubuntu.release }}/neutron-api-odl + series: {{ ubuntu.release }} options: overlay-network-type: 'vxlan' security-groups: True openvswitch-odl: charm: ./{{ ubuntu.release }}/openvswitch-odl + series: {{ ubuntu.release }} options: {% if opnfv.ext_port is defined %} provider_mappings: "physnet1:{{ opnfv.ext_port }}" @@ -35,11 +39,13 @@ {% elif os.network.controller == 'onos' %} neutron-api-onos: charm: ./{{ ubuntu.release }}/neutron-api-onos + series: {{ ubuntu.release }} options: overlay-network-type: 'vxlan' security-groups: True openvswitch-onos: charm: ./{{ ubuntu.release }}/openvswitch-onos + series: {{ ubuntu.release }} options: {% if opnfv.spaces_dict.data is defined %} os-data-network: {{ opnfv.spaces_dict.data.cidr }} @@ -51,6 +57,7 @@ {% if os.lxd %} lxd: charm: ./{{ ubuntu.release }}/lxd + series: {{ ubuntu.release }} options: {% if 'srv' not in opnfv.storage_dict.ceph.disk %} block-devices: {{ opnfv.storage_dict.ceph.disk }} @@ -61,6 +68,7 @@ {% if opnfv.storage_dict.scaleio is defined %} scaleio-openstack: charm: ./{{ ubuntu.release }}/scaleio-openstack + series: {{ ubuntu.release }} options: protection-domains: 'pd1' {% endif %} diff --git a/ci/config_tpl/juju2/deployconfig.yaml b/ci/config_tpl/juju2/deployconfig.yaml index f94154cd..2d59b88a 100644 --- a/ci/config_tpl/juju2/deployconfig.yaml +++ b/ci/config_tpl/juju2/deployconfig.yaml @@ -46,25 +46,32 @@ opnfv: units: {{ lab.racks[0].nodes|count }} vip: {% if opnfv.spaces_dict.public is defined %} + aodh: {{ netpublic_prefix }}33 {{ net_prefix }}33 + ceilometer: {{ netpublic_prefix }}24 {{ net_prefix }}24 + cinder: {{ netpublic_prefix }}29 {{ net_prefix }}29 dashboard: {{ netpublic_prefix }}21 {{ net_prefix }}21 + designate: {{ netpublic_prefix }}32 {{ net_prefix }}32 glance: {{ netpublic_prefix }}22 {{ net_prefix }}22 + gnocchi: {{ netpublic_prefix }}31 {{ net_prefix }}31 + heat: {{ netpublic_prefix }}28 {{ net_prefix }}28 keystone: {{ netpublic_prefix }}23 {{ net_prefix }}23 - ceilometer: {{ netpublic_prefix }}24 {{ net_prefix }}24 mysql: {{ net_prefix }}25 - nova: {{ netpublic_prefix }}26 {{ net_prefix }}26 neutron: {{ netpublic_prefix }}27 {{ net_prefix }}27 - heat: {{ netpublic_prefix }}28 {{ net_prefix }}28 - cinder: {{ netpublic_prefix }}29 {{ net_prefix }}29 + nova: {{ netpublic_prefix }}26 {{ net_prefix }}26 radosgw: {{ netpublic_prefix }}30 {{ net_prefix }}30 {% else %} + aodh: {{ net_prefix }}33 + ceilometer: {{ net_prefix }}24 + cinder: {{ net_prefix }}29 dashboard: {{ net_prefix }}21 + designate: {{ net_prefix }}32 glance: {{ net_prefix }}22 + gnocchi: {{ net_prefix }}31 + heat: {{ net_prefix }}28 keystone: {{ net_prefix }}23 - ceilometer: {{ net_prefix }}24 mysql: {{ net_prefix }}25 - nova: {{ net_prefix }}26 neutron: {{ net_prefix }}27 - heat: {{ net_prefix }}28 - cinder: {{ net_prefix }}29 + nova: {{ net_prefix }}26 radosgw: {{ net_prefix }}30 {% endif %} + diff --git a/ci/default_deployment_config.yaml b/ci/default_deployment_config.yaml index 587c39a1..f4006128 100644 --- a/ci/default_deployment_config.yaml +++ b/ci/default_deployment_config.yaml @@ -1,10 +1,10 @@ ubuntu: release: xenial os: - release: pike + release: queens git_repo: origin_git: False - branch: pike + branch: queens hyperconverged: True ha: mode: ha @@ -14,6 +14,7 @@ os: api: worker_multiplier: 1.0 haproxy_timeout: 10000 + ssl: False admin: role: admin name: admin @@ -27,7 +28,6 @@ os: ipv6: False l2_population: False beta: - hacluster_ceph_radosgw: True huge_pages: False cpu_pin: False cpu_pin_set: all diff --git a/ci/deploy.sh b/ci/deploy.sh index ab3e5e34..3bbddb6f 100755 --- a/ci/deploy.sh +++ b/ci/deploy.sh @@ -9,7 +9,7 @@ source common/tools.sh opnfvsdn=nosdn opnfvtype=noha -openstack=pike +openstack=queens opnfvlab=default opnfvlabfile= opnfvrel=e @@ -21,9 +21,9 @@ virtinstall=0 maasinstall=0 usage() { echo "Usage: $0 - [-s|--sdn <nosdn|odl|opencontrail>] + [-s|--sdn <nosdn|odl|ocl>] [-t|--type <noha|ha|tip>] - [-o|--openstack <ocata|pike>] + [-o|--openstack <ocata|queens>] [-l|--lab <default|custom>] [-f|--feature <ipv6,dpdk,lxd,dvr,openbaton,multus>] [-d|--distro <xenial>] @@ -90,7 +90,7 @@ for argument in $options -d|--distro ) if ([ "arguments[index]" != "" ]); then - opnfdistro=${arguments[index]} + opnfvdistro=${arguments[index]} fi; ;; @@ -261,9 +261,10 @@ deploy() { fi #bootstrap the node - ./01-bootstrap.sh + ./01-bootstrap.sh $opnfvdistro juju model-config default-series=$opnfvdistro enable-os-refresh-update=false enable-os-upgrade=false + juju set-model-constraints tags= # case default deploy the opnfv platform: ./02-deploybundle.sh $opnfvtype $openstack $opnfvlab $opnfvsdn $opnfvfeature $opnfvdistro $opnfvmodel @@ -320,18 +321,6 @@ python -c 'import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, i # Configuring deployment if ([ $opnfvmodel == "openstack" ]); then - if ([ $opnfvsdn == "ocl" ]); then - echo_info "Patching OpenContrail controller container" - juju run --application contrail-controller sudo docker cp contrail-controller:/etc/contrail/vnc_api_lib.ini /tmp - juju run --application contrail-controller cp /tmp/vnc_api_lib.ini /tmp/vnc_api_lib.ini2 - juju run --application contrail-controller 'echo "AUTHN_DOMAIN = admin_domain" >> /tmp/vnc_api_lib.ini2' - juju run --application contrail-controller sudo docker cp /tmp/vnc_api_lib.ini2 contrail-controller:/etc/contrail/vnc_api_lib.ini - juju run --application contrail-controller sudo docker exec contrail-controller service contrail-api restart - - juju run --application contrail-controller sudo docker cp /tmp/vnc_api_lib.ini2 contrail-analytics:/etc/contrail/vnc_api_lib.ini - echo_info "Wait for OpenContrail components to stabilize" - sleep 600 - fi echo_info "Configuring OpenStack deployment" @@ -340,11 +329,23 @@ if ([ $opnfvmodel == "openstack" ]); then # creating heat domain after pushing the public API into /etc/hosts status=`juju run-action heat/0 domain-setup` echo $status + if ([ $opnfvsdn != "ocl" ]) then + status=`juju run-action ceilometer/0 ceilometer-upgrade` + fi + echo $status if ([ $opnftype == "ha" ]); then status=`juju run-action heat/1 domain-setup` echo $status + if ([ $opnfvsdn != "ocl" ]) then + status=`juju run-action ceilometer/1 ceilometer-upgrade` + fi + echo $status status=`juju run-action heat/2 domain-setup` echo $status + if ([ $opnfvsdn != "ocl" ]) then + status=`juju run-action ceilometer/2 ceilometer-upgrade` + fi + echo $status fi sudo ../juju/get-cloud-images || true diff --git a/ci/genBundle.py b/ci/genBundle.py index ffe9cb8f..3df31776 100644 --- a/ci/genBundle.py +++ b/ci/genBundle.py @@ -200,14 +200,14 @@ if 'radosgwcluster' in extra: if 'hugepages' in extra: config['os']['beta']['huge_pages'] = True config['os']['beta']['cpu_pin'] = True -if 'mitaka' in extra: - config['os']['release'] = 'mitaka' -if 'trusty' in extra: - config['ubuntu']['release'] = 'trusty' - if 'liberty' in extra: - config['os']['release'] = 'liberty' +if 'pike' in extra: + config['os']['release'] = 'pike' if 'xenial' in extra: config['ubuntu']['release'] = 'xenial' +if 'bionic' in extra: + config['ubuntu']['release'] = 'bionic' + if 'pike' in extra: + config['os']['release'] = 'queens' if 'dishypcon' in extra: config['os']['hyperconverged'] = False if 'openbaton' in features: @@ -3,6 +3,21 @@ set -ex opnfvfeature=$1 +juju scp kubernetes-master/0:/home/ubuntu/config ~/joid_config/config + +export KUBE_MASTER_IP=`juju status kubernetes-master --format=yaml | grep public-address | cut -d ":" -f 2 | head -1 | sed "s/^[ \t]*//g"` +export KUBE_MASTER_URL=http://${KUBE_MASTER_IP}:6443 + +configk8(){ +cat <<-EOF +export KUBERNETES_PROVIDER=local +export KUBE_MASTER_IP=${KUBE_MASTER_IP} +export KUBE_MASTER_URL=${KUBE_MASTER_URL} +EOF +} + +configk8 > ~/joid_config/k8config + juju run-action kubernetes-worker/0 microbot replicas=3 juju config kubernetes-master enable-dashboard-addons=true || true juju expose kubernetes-worker || true diff --git a/ci/kubernetes/fetch-charms.sh b/ci/kubernetes/fetch-charms.sh index 4ab94a98..3906d7bd 100755 --- a/ci/kubernetes/fetch-charms.sh +++ b/ci/kubernetes/fetch-charms.sh @@ -11,5 +11,5 @@ function build { # openstack charm pull cs:ntp $distro/ntp -git clone -b stable/17.11 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon -git clone -b stable/17.11 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd +git clone -b stable/18.02 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon +git clone -b stable/18.02 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd diff --git a/ci/net.xml b/ci/net.xml new file mode 100644 index 00000000..110428f1 --- /dev/null +++ b/ci/net.xml @@ -0,0 +1,5 @@ +<network> + <name>default</name> + <forward mode='bridge'/> + <bridge name='brAdm'/> +</network> diff --git a/ci/nosdn/fetch-charms.sh b/ci/nosdn/fetch-charms.sh index 7ada1697..547bdba9 100755 --- a/ci/nosdn/fetch-charms.sh +++ b/ci/nosdn/fetch-charms.sh @@ -12,30 +12,33 @@ function build { # openstack bzr branch lp:~narindergupta/charms/trusty/promise/trunk $distro/promise -git clone -b stable/17.11 https://github.com/openstack/charm-hacluster.git $distro/hacluster -git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer -git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent -git clone -b stable/17.11 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon -git clone -b stable/17.11 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd -git clone -b stable/17.11 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw -git clone -b stable/17.11 https://github.com/openstack/charm-cinder.git $distro/cinder -git clone -b stable/17.11 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph -git clone -b stable/17.11 https://github.com/openstack/charm-glance.git $distro/glance -git clone -b stable/17.11 https://github.com/openstack/charm-keystone.git $distro/keystone -git clone -b stable/17.11 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster -git clone -b stable/17.11 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api -git clone -b stable/17.11 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway -git clone -b stable/17.11 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch -git clone -b stable/17.11 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller -git clone -b stable/17.11 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute -git clone -b stable/17.11 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard -git clone -b stable/17.11 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server -git clone -b stable/17.11 https://github.com/openstack/charm-heat.git $distro/heat -git clone -b stable/17.11 https://github.com/openstack/charm-lxd.git $distro/lxd +git clone https://github.com/openstack/charm-hacluster.git $distro/hacluster +git clone https://github.com/openstack/charm-ceilometer.git $distro/ceilometer +git clone https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent +git clone https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon +git clone https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd +git clone https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw +git clone https://github.com/openstack/charm-cinder.git $distro/cinder +git clone https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph +git clone https://github.com/openstack/charm-glance.git $distro/glance +git clone https://github.com/openstack/charm-keystone.git $distro/keystone +git clone https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster +git clone https://github.com/openstack/charm-neutron-api.git $distro/neutron-api +git clone https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway +git clone https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch +git clone https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller +git clone https://github.com/openstack/charm-nova-compute.git $distro/nova-compute +git clone https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard +git clone https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server +git clone https://github.com/openstack/charm-heat.git $distro/heat +git clone https://github.com/openstack/charm-lxd.git $distro/lxd git clone https://github.com/openbaton/juju-charm.git $distro/openbaton +charm pull cs:designate $distro/designate +charm pull cs:designate-bind $distro/designate-bind +charm pull cs:memcached $distro/memcached +charm pull cs:gnocchi $distro/gnocchi charm pull cs:$distro/aodh $distro/aodh -charm pull cs:$distro/mongodb $distro/mongodb charm pull cs:ntp $distro/ntp charm pull cs:$distro/haproxy $distro/haproxy charm pull cs:~narindergupta/congress-1 $distro/congress diff --git a/ci/odl/fetch-charms.sh b/ci/odl/fetch-charms.sh index cf8c6dc8..15cb941c 100755 --- a/ci/odl/fetch-charms.sh +++ b/ci/odl/fetch-charms.sh @@ -12,29 +12,29 @@ function build { # openstack bzr branch lp:~narindergupta/charms/trusty/promise/trunk $distro/promise -git clone -b stable/17.11 https://github.com/openstack/charm-hacluster.git $distro/hacluster -git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer -git clone -b stable/17.11 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent -git clone -b stable/17.11 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon -git clone -b stable/17.11 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd -git clone -b stable/17.11 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw -git clone -b stable/17.11 https://github.com/openstack/charm-cinder.git $distro/cinder -git clone -b stable/17.11 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph -git clone -b stable/17.11 https://github.com/openstack/charm-glance.git $distro/glance -git clone -b stable/17.11 https://github.com/openstack/charm-keystone.git $distro/keystone -git clone -b stable/17.11 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster -git clone -b stable/17.11 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api -git clone -b stable/17.11 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway -git clone -b stable/17.11 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch -git clone -b stable/17.11 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller -git clone -b stable/17.11 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute -git clone -b stable/17.11 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard -git clone -b stable/17.11 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server -git clone -b stable/17.11 https://github.com/openstack/charm-heat.git $distro/heat -git clone -b stable/17.11 https://github.com/openstack/charm-lxd.git $distro/lxd -git clone -b stable/17.11 https://github.com/openstack/charm-odl-controller.git $distro/odl-controller -git clone -b stable/17.11 https://github.com/openstack/charm-neutron-api-odl.git $distro/neutron-api-odl -git clone -b stable/17.11 https://github.com/openstack/charm-openvswitch-odl.git $distro/openvswitch-odl +git clone -b stable/18.02 https://github.com/openstack/charm-hacluster.git $distro/hacluster +git clone -b stable/18.02 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer +git clone -b stable/18.02 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent +git clone -b stable/18.02 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon +git clone -b stable/18.02 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd +git clone -b stable/18.02 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw +git clone -b stable/18.02 https://github.com/openstack/charm-cinder.git $distro/cinder +git clone -b stable/18.02 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph +git clone -b stable/18.02 https://github.com/openstack/charm-glance.git $distro/glance +git clone -b stable/18.02 https://github.com/openstack/charm-keystone.git $distro/keystone +git clone -b stable/18.02 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster +git clone -b stable/18.02 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api +git clone -b stable/18.02 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway +git clone -b stable/18.02 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch +git clone -b stable/18.02 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller +git clone -b stable/18.02 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute +git clone -b stable/18.02 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard +git clone -b stable/18.02 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server +git clone -b stable/18.02 https://github.com/openstack/charm-heat.git $distro/heat +git clone -b stable/18.02 https://github.com/openstack/charm-lxd.git $distro/lxd +git clone -b stable/18.02 https://github.com/openstack/charm-odl-controller.git $distro/odl-controller +git clone -b stable/18.02 https://github.com/openstack/charm-neutron-api-odl.git $distro/neutron-api-odl +git clone -b stable/18.02 https://github.com/openstack/charm-openvswitch-odl.git $distro/openvswitch-odl git clone https://github.com/openbaton/juju-charm.git $distro/openbaton charm pull cs:$distro/aodh $distro/aodh diff --git a/ci/opencontrail/fetch-charms.sh b/ci/opencontrail/fetch-charms.sh index 62fbbd6b..03b67eed 100755 --- a/ci/opencontrail/fetch-charms.sh +++ b/ci/opencontrail/fetch-charms.sh @@ -12,28 +12,30 @@ function build { # openstack bzr branch lp:~narindergupta/charms/trusty/promise/trunk $distro/promise -git clone -b stable/17.08 https://github.com/openstack/charm-hacluster.git $distro/hacluster -git clone -b stable/17.08 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer -git clone -b stable/17.08 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent -git clone -b stable/17.08 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon -git clone -b stable/17.08 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd -git clone -b stable/17.08 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw -git clone -b stable/17.08 https://github.com/openstack/charm-cinder.git $distro/cinder -git clone -b stable/17.08 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph -git clone -b stable/17.08 https://github.com/openstack/charm-glance.git $distro/glance -git clone -b stable/17.08 https://github.com/openstack/charm-keystone.git $distro/keystone -git clone -b stable/17.08 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster -git clone -b stable/17.08 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api -git clone -b stable/17.08 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway -git clone -b stable/17.08 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch -git clone -b stable/17.08 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller -git clone -b stable/17.08 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute -git clone -b stable/17.08 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard -git clone -b stable/17.08 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server -git clone -b stable/17.08 https://github.com/openstack/charm-heat.git $distro/heat -git clone -b stable/17.08 https://github.com/openstack/charm-lxd.git $distro/lxd +git clone -b stable/18.02 https://github.com/openstack/charm-hacluster.git $distro/hacluster +git clone -b stable/18.02 https://github.com/openstack/charm-ceilometer.git $distro/ceilometer +git clone -b stable/18.02 https://github.com/openstack/charm-ceilometer-agent.git $distro/ceilometer-agent +git clone -b stable/18.02 https://github.com/openstack/charm-ceph-mon.git $distro/ceph-mon +git clone -b stable/18.02 https://github.com/openstack/charm-ceph-osd.git $distro/ceph-osd +git clone -b stable/18.02 https://github.com/openstack/charm-ceph-radosgw.git $distro/ceph-radosgw +git clone -b stable/18.02 https://github.com/openstack/charm-cinder.git $distro/cinder +git clone -b stable/18.02 https://github.com/openstack/charm-cinder-ceph.git $distro/cinder-ceph +git clone -b stable/18.02 https://github.com/openstack/charm-glance.git $distro/glance +git clone -b stable/18.02 https://github.com/openstack/charm-keystone.git $distro/keystone +git clone -b stable/18.02 https://github.com/openstack/charm-percona-cluster.git $distro/percona-cluster +git clone -b stable/18.02 https://github.com/openstack/charm-neutron-api.git $distro/neutron-api +git clone -b stable/18.02 https://github.com/openstack/charm-neutron-gateway.git $distro/neutron-gateway +git clone -b stable/18.02 https://github.com/openstack/charm-neutron-openvswitch.git $distro/neutron-openvswitch +git clone -b stable/18.02 https://github.com/openstack/charm-nova-cloud-controller.git $distro/nova-cloud-controller +git clone -b stable/18.02 https://github.com/openstack/charm-nova-compute.git $distro/nova-compute +git clone -b stable/18.02 https://github.com/openstack/charm-openstack-dashboard.git $distro/openstack-dashboard +git clone -b stable/18.02 https://github.com/openstack/charm-rabbitmq-server.git $distro/rabbitmq-server +git clone -b stable/18.02 https://github.com/openstack/charm-heat.git $distro/heat +git clone -b stable/18.02 https://github.com/openstack/charm-lxd.git $distro/lxd git clone https://github.com/openbaton/juju-charm.git $distro/openbaton +charm pull cs:memcached $distro/memcached +charm pull cs:gnocchi $distro/gnocchi charm pull cs:$distro/mongodb $distro/mongodb charm pull cs:ntp $distro/ntp charm pull cs:$distro/aodh $distro/aodh diff --git a/ci/openstack.sh b/ci/openstack.sh index 3c8f9757..139a0dfc 100755 --- a/ci/openstack.sh +++ b/ci/openstack.sh @@ -62,7 +62,7 @@ keystoneIp() { if [ $(juju status keystone --format=short | grep " keystone"|wc -l) == 1 ];then unitAddress keystone 0 else - juju config keystone | python -c "import yaml; import sys; print yaml.load(sys.stdin)['settings']['vip']['value']" | cut -d " " -f 1 + juju config keystone vip | cut -d " " -f 1 fi } @@ -71,13 +71,26 @@ create_openrc() { echo_info "Creating the openrc (OpenStack client environment scripts)" mkdir -m 0700 -p cloud - keystoneIp=$(keystoneIp) - adminPasswd=$(juju config keystone | python -c "import yaml; import sys; print yaml.load(sys.stdin)['settings']['admin-password']['value']" | cut -d " " -f 1) + usessl=$(juju config keystone ssl_ca) + if [[ "$usessl" == "" ]]; then + usessl=no + else + usessl=yes + fi + keystoneIp=$(juju config keystone os-public-hostname | cut -d " " -f 1) + if [[ "$keystoneIp" == "" ]]; then + keystoneIp=$(keystoneIp) + fi + adminPasswd=$(juju config keystone admin-password | cut -d " " -f 1) - v3api=`juju config keystone preferred-api-version` + v3api=$(juju config keystone preferred-api-version) if [[ "$v3api" == "3" ]]; then - configOpenrc admin $adminPasswd admin http://$keystoneIp:5000/v3 RegionOne publicURL > ~/joid_config/admin-openrc + if [ "$usessl" == "yes" ]; then + configOpenrc admin $adminPasswd admin https://$keystoneIp:5000/v3 RegionOne publicURL > ~/joid_config/admin-openrc + else + configOpenrc admin $adminPasswd admin http://$keystoneIp:5000/v3 RegionOne publicURL > ~/joid_config/admin-openrc + fi chmod 0600 ~/joid_config/admin-openrc source ~/joid_config/admin-openrc projectid=`openstack project show admin -c id -f value` @@ -105,6 +118,7 @@ EOF } configOpenrc() { +if [ "$usessl" == "yes" ]; then cat <<-EOF #export OS_NO_CACHE='true' export OS_AUTH_URL=$4 @@ -117,11 +131,31 @@ export OS_PASSWORD=$2 export OS_IDENTITY_API_VERSION=3 export OS_REGION_NAME=$5 export OS_INTERFACE=public -#export OS_INSECURE=true -#export OS_CASSL=~/joid_config/ca.pem +export OS_CACERT=~/joid_config/keystone_juju_ca_cert.crt EOF +else +cat <<-EOF +#export OS_NO_CACHE='true' +export OS_AUTH_URL=$4 +export OS_USER_DOMAIN_NAME=admin_domain +export OS_PROJECT_DOMAIN_NAME=admin_domain +export OS_USERNAME=$1 +export OS_TENANT_NAME=$3 +export OS_PROJECT_NAME=$3 +export OS_PASSWORD=$2 +export OS_IDENTITY_API_VERSION=3 +export OS_REGION_NAME=$5 +export OS_INTERFACE=public +#export OS_CACERT=~/joid_config/bradm.etsi-ubuntu-jh.maas.pem +EOF +fi } + +if [ "$usessl" == "yes" ]; then + juju scp keystone/0:/usr/local/share/ca-certificates/keystone_juju_ca_cert.crt ~/joid_config/ +fi + # Create an load openrc create_openrc |