summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xci/openstack.sh30
-rwxr-xr-xjuju/configure-juju-on-openstack2
-rwxr-xr-xjuju/joid-configure-openstack6
3 files changed, 33 insertions, 5 deletions
diff --git a/ci/openstack.sh b/ci/openstack.sh
index 24d068f9..4fdf1f96 100755
--- a/ci/openstack.sh
+++ b/ci/openstack.sh
@@ -92,13 +92,36 @@ create_openrc() {
adminPasswd=$(juju config keystone | grep admin-password -A 5 | grep value | awk '{print $2}' 2> /dev/null)
fi
- configOpenrc admin $adminPasswd admin http://$keystoneIp:5000/v3 RegionOne > ~/joid_config/admin-openrc
+ v3api=`juju config keystone preferred-api-version`
+
+ if [[ "$v3api" == "3" ]]; then
+ configOpenrc admin $adminPasswd admin http://$keystoneIp:5000/v3 RegionOne > ~/joid_config/admin-openrc
+ chmod 0600 ~/joid_config/admin-openrc
+ source ~/joid_config/admin-openrc
+ projectid=`openstack project show admin -c id -f value`
+ configOpenrc admin $adminPasswd admin http://$keystoneIp:5000/v3 RegionOne $projectid > ~/joid_config/admin-openrc
+ else
+ configOpenrc2 admin $adminPasswd admin http://$keystoneIp:5000/v2.0 RegionOne > ~/joid_config/admin-openrc
+ chmod 0600 ~/joid_config/admin-openrc
+ fi
+}
- chmod 0600 ~/joid_config/admin-openrc
+configOpenrc2() {
+cat <<-EOF
+export SERVICE_ENDPOINT=$4
+unset SERVICE_TOKEN
+unset SERVICE_ENDPOINT
+export OS_USERNAME=$1
+export OS_PASSWORD=$2
+export OS_TENANT_NAME=$3
+export OS_AUTH_URL=$4
+export OS_REGION_NAME=$5
+EOF
}
configOpenrc() {
cat <<-EOF
+# unsetting v3 items in case set
export OS_AUTH_URL=$4
export OS_USERNAME=$1
export OS_PASSWORD=$2
@@ -106,9 +129,12 @@ export OS_USER_DOMAIN_NAME=admin_domain
export OS_PROJECT_DOMAIN_NAME=admin_domain
export OS_PROJECT_NAME=$3
export OS_TENANT_NAME=$3
+export OS_TENANT_ID=$6
export OS_REGION_NAME=$5
export OS_IDENTITY_API_VERSION=3
# Swift needs this:
+export OS_ENDPOINT_TYPE=publicURL
+export OS_INTERFACE=public
export OS_AUTH_VERSION=3
EOF
}
diff --git a/juju/configure-juju-on-openstack b/juju/configure-juju-on-openstack
index ad357ce7..c83a45a4 100755
--- a/juju/configure-juju-on-openstack
+++ b/juju/configure-juju-on-openstack
@@ -116,6 +116,8 @@ echo "credentials:
password: $OS_PASSWORD
tenant-name: $OS_TENANT_NAME
username: $OS_USERNAME
+ user-domain-name: $OS_USER_DOMAIN_NAME
+ project-domain-name: $OS_PROJECT_DOMAIN_NAME
" > os-creds.yaml
juju add-credential openstack -f os-creds.yaml --replace
diff --git a/juju/joid-configure-openstack b/juju/joid-configure-openstack
index 5887ac73..52347b4a 100755
--- a/juju/joid-configure-openstack
+++ b/juju/joid-configure-openstack
@@ -57,9 +57,9 @@ echo "Configuring security groups for access to ICMP, SSH and RDP by default"
PROJECT_ID=`openstack project list -c ID -f value --domain admin_domain`
#Configure the default security group to allow ICMP and SSH
-sicmpecuritygroup=`openstack security group list --project "$PROJECT_ID" -c ID -f value`
-openstack security group rule list $securitygroup | grep "icmp" > /dev/null 2>&1 || openstack security group rule create --remote-group $securitygroup --ingress --protocol icmp --prefix "0.0.0.0/0"$securitygroup
-openstack security group rule list $securitygroup | grep "22/tcp" > /dev/null 2>&1 || openstack security group rule create --remote-group $securitygroup --ingress --protocol tcp --dst-port 22:22 --prefix "0.0.0.0/0" $securitygroup
+SEC_GRP=`openstack security group list --project "$PROJECT_ID" -c ID -f value`
+openstack security group rule list $SEC_GRP | grep "icmp" > /dev/null 2>&1 || openstack security group rule create --remote-group $SEC_GRP --ingress --protocol icmp --prefix "0.0.0.0/0" $SEC_GRP
+openstack security group rule list $SEC_GRP | grep "22/tcp" > /dev/null 2>&1 || openstack security group rule create --remote-group $SEC_GRP --ingress --protocol tcp --dst-port 22:22 --prefix "0.0.0.0/0" $SEC_GRP
echo "Uploading default SSH key"