You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ch...@apache.org on 2014/07/29 21:30:20 UTC

git commit: added openstack and vcloud to docker images

Repository: stratos
Updated Branches:
  refs/heads/master bb9d7e2e8 -> 3d0a71c35


added openstack and vcloud to docker images


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/3d0a71c3
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/3d0a71c3
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/3d0a71c3

Branch: refs/heads/master
Commit: 3d0a71c352d27165698c734804b2065e77e625c2
Parents: bb9d7e2
Author: Chris Snow <ch...@apache.org>
Authored: Tue Jul 29 19:28:02 2014 +0000
Committer: Chris Snow <ch...@apache.org>
Committed: Tue Jul 29 19:28:02 2014 +0000

----------------------------------------------------------------------
 tools/stratos-docker-images/README.md          |  2 +-
 tools/stratos-docker-images/run-example-ec2.sh | 82 -----------------
 tools/stratos-docker-images/run-example.sh     | 97 +++++++++++++++++++++
 tools/stratos-docker-images/stratos/run        | 42 ++++++++-
 4 files changed, 139 insertions(+), 84 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/3d0a71c3/tools/stratos-docker-images/README.md
----------------------------------------------------------------------
diff --git a/tools/stratos-docker-images/README.md b/tools/stratos-docker-images/README.md
index d9940c7..4678f0f 100644
--- a/tools/stratos-docker-images/README.md
+++ b/tools/stratos-docker-images/README.md
@@ -21,5 +21,5 @@ To upload images:
 
 See the example:
 
-`./run-example-ec2.sh`
+`./run-example.sh`
 

http://git-wip-us.apache.org/repos/asf/stratos/blob/3d0a71c3/tools/stratos-docker-images/run-example-ec2.sh
----------------------------------------------------------------------
diff --git a/tools/stratos-docker-images/run-example-ec2.sh b/tools/stratos-docker-images/run-example-ec2.sh
deleted file mode 100755
index bab92bd..0000000
--- a/tools/stratos-docker-images/run-example-ec2.sh
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/bash
-# ----------------------------------------------------------------------------
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you 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 script runs activemq, mysql and docker containers
-# change the docker-env environment variables to reflect your environment
-
-#
-# Start activemq docker container 
-# (skip this step if you already have activemq installed)
-#
-
-MB_ID=$(sudo docker run -p=61616:61616 -d apachestratos/activemq); sleep 2s;
-MB_IP_ADDR=$(sudo docker inspect $MB_ID | grep IPAddress | cut -d '"' -f 4)
-
-#
-# Start mysql docker container 
-# (skip this step if you already have mysql already installed that has a Stratos schema)
-#
-
-USERSTORE_ID=$(sudo docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password apachestratos/mysql); sleep 2s;
-USERSTORE_IP_ADDR=$(sudo docker inspect $USERSTORE_ID | grep IPAddress | cut -d '"' -f 4)
-
-#
-# Start Stratos
-#
-
-unset docker_env
-
-# Database Settings
-docker_env+=(-e "USERSTORE_DB_HOSTNAME=${USERSTORE_IP_ADDR}")
-docker_env+=(-e "USERSTORE_DB_PORT=3306")
-docker_env+=(-e "USERSTORE_DB_SCHEMA=USERSTORE_DB_SCHEMA")
-docker_env+=(-e "USERSTORE_DB_USER=root")
-docker_env+=(-e "USERSTORE_DB_PASS=password")
-
-# Puppet Setings
-docker_env+=(-e "PUPPET_IP=192.168.56.5")
-docker_env+=(-e "PUPPET_HOSTNAME=stratos.com")
-docker_env+=(-e "PUPPET_ENVIRONMENT=none")
-
-# MB Settings
-docker_env+=(-e "MB_HOSTNAME=${MB_IP_ADDR}")
-docker_env+=(-e "MB_PORT=61616")
-
-# IAAS Settings
-docker_env+=(-e "EC2_ENABLED=true")
-docker_env+=(-e "EC2_IDENTITY=none")
-docker_env+=(-e "EC2_CREDENTIAL=none")
-docker_env+=(-e "EC2_CREDENTIAL=none")
-docker_env+=(-e "EC2_OWNER_ID=none")
-docker_env+=(-e "EC2_AVAILABILITY_ZONE=none")
-docker_env+=(-e "EC2_SECURITY_GROUPS=none")
-docker_env+=(-e "EC2_KEYPAIR=none")
-
-# Stratos Settings [profile=default|cc|as|sm]
-docker_env+=(-e "STRATOS_PROFILE=default")
-
-# Start Stratos container as daemon
-container_id=$(sudo docker run -d "${docker_env[@]}" -p 9443:9443 apachestratos/stratos)
-sudo docker logs -f $container_id
-
-# Start interactively (requires running /usr/local/bin/run manually)
-# sudo docker run -i -t "${docker_env[@]}" apachestratos/stratos /bin/bash

http://git-wip-us.apache.org/repos/asf/stratos/blob/3d0a71c3/tools/stratos-docker-images/run-example.sh
----------------------------------------------------------------------
diff --git a/tools/stratos-docker-images/run-example.sh b/tools/stratos-docker-images/run-example.sh
new file mode 100755
index 0000000..4ebde97
--- /dev/null
+++ b/tools/stratos-docker-images/run-example.sh
@@ -0,0 +1,97 @@
+#!/bin/bash
+# ----------------------------------------------------------------------------
+#
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you 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 script runs activemq, mysql and docker containers
+# change the docker-env environment variables to reflect your environment
+
+#
+# Start activemq docker container 
+# (skip this step if you already have activemq installed)
+#
+
+MB_ID=$(sudo docker run -p 61616 -d apachestratos/activemq); sleep 2s;
+MB_IP_ADDR=$(sudo docker inspect $MB_ID | grep IPAddress | cut -d '"' -f 4)
+MB_PORT=$(sudo docker port 61616 $MB_ID)
+
+#
+# Start mysql docker container 
+# (skip this step if you already have mysql already installed that has a Stratos schema)
+# 
+# NOTE: This image does NOT persist data - all data is lost when this image stops.
+#
+
+USERSTORE_ID=$(sudo docker run -d -p 3306 -e MYSQL_ROOT_PASSWORD=password apachestratos/mysql); sleep 2s;
+USERSTORE_IP_ADDR=$(sudo docker inspect $USERSTORE_ID | grep IPAddress | cut -d '"' -f 4)
+USERSTORE_PORT=$(sudo docker port 3306 $USERSTORE_ID)
+
+#
+# Start Stratos
+#
+
+# Ensure docker environment variable is clean
+unset docker_env
+
+# Database Settings
+docker_env+=(-e "USERSTORE_DB_HOSTNAME=${USERSTORE_IP_ADDR}")
+docker_env+=(-e "USERSTORE_DB_PORT=${USERSTORE_PORT}")
+docker_env+=(-e "USERSTORE_DB_SCHEMA=USERSTORE_DB_SCHEMA")
+docker_env+=(-e "USERSTORE_DB_USER=root")
+docker_env+=(-e "USERSTORE_DB_PASS=password")
+
+# Puppet Setings
+docker_env+=(-e "PUPPET_IP=192.168.56.5")
+docker_env+=(-e "PUPPET_HOSTNAME=stratos.com")
+docker_env+=(-e "PUPPET_ENVIRONMENT=none")
+
+# MB Settings
+docker_env+=(-e "MB_HOSTNAME=${MB_IP_ADDR}")
+docker_env+=(-e "MB_PORT=${MB_PORT}")
+
+# IAAS Settings
+docker_env+=(-e "EC2_ENABLED=true")
+docker_env+=(-e "EC2_IDENTITY=none")
+docker_env+=(-e "EC2_CREDENTIAL=none")
+docker_env+=(-e "EC2_CREDENTIAL=none")
+docker_env+=(-e "EC2_OWNER_ID=none")
+docker_env+=(-e "EC2_AVAILABILITY_ZONE=none")
+docker_env+=(-e "EC2_SECURITY_GROUPS=none")
+docker_env+=(-e "EC2_KEYPAIR=none")
+
+docker_env+=(-e "OPENSTACK_ENABLED=false")
+docker_env+=(-e "OPENSTACK_IDENTITY=none")
+docker_env+=(-e "OPENSTACK_CREDENTIAL=none")
+docker_env+=(-e "OPENSTACK_ENDPOINT=none")
+
+docker_env+=(-e "VCLOUD_ENABLED=false")
+docker_env+=(-e "VCLOUD_IDENTITY=none")
+docker_env+=(-e "VCLOUD_CREDENTIAL=none")
+docker_env+=(-e "VCLOUD_ENDPOINT=none")
+
+# Stratos Settings [profile=default|cc|as|sm]
+docker_env+=(-e "STRATOS_PROFILE=default")
+
+# Start Stratos container as daemon
+container_id=$(sudo docker run -d "${docker_env[@]}" -p 9443:9443 apachestratos/stratos)
+sudo docker logs -f $container_id
+
+# Start interactively (requires running /usr/local/bin/run manually)
+# sudo docker run -i -t "${docker_env[@]}" apachestratos/stratos /bin/bash

http://git-wip-us.apache.org/repos/asf/stratos/blob/3d0a71c3/tools/stratos-docker-images/stratos/run
----------------------------------------------------------------------
diff --git a/tools/stratos-docker-images/stratos/run b/tools/stratos-docker-images/stratos/run
index 650ce52..1213d51 100755
--- a/tools/stratos-docker-images/stratos/run
+++ b/tools/stratos-docker-images/stratos/run
@@ -47,7 +47,9 @@ echo Setting MB_HOSTNAME=$MB_HOSTNAME
 echo Setting MB_PORT=$MB_PORT
 echo =========================
 echo Cloud Controller Settings
-echo =========================
+echo ===
+echo EC2
+echo ===
 echo Setting EC2_ENABLED=$EC2_ENABLED
 echo Setting EC2_IDENTITY=$EC2_IDENTITY
 echo Setting EC2_CREDENTIAL=$EC2_CREDENTIAL
@@ -55,6 +57,20 @@ echo Setting EC2_OWNER_ID=$EC2_OWNER_ID
 echo Setting EC2_AVAILABILITY_ZONE=$EC2_AVAILABILITY_ZONE
 echo Setting EC2_SECURITY_GROUPS=$EC2_SECURITY_GROUPS
 echo Setting EC2_KEYPAIR=$EC2_KEYPAIR
+echo =========
+echo OpenStack
+echo =========
+echo Setting OPENSTACK_ENABLED=$OPENSTACK_ENABLED
+echo Setting OPENSTACK_IDENTITY=$OPENSTACK_IDENTITY
+echo Setting OPENSTACK_CREDENTIAL=$OPENSTACK_CREDENTIAL
+echo Setting OPENSTACK_ENDPOINT=$OPENSTACK_ENDPOINT
+echo ======
+echo vCloud
+echo ======
+echo Setting VCLOUD_ENABLED=$VCLOUD_ENABLED
+echo Setting VCLOUD_IDENTITY=$VCLOUD_IDENTITY
+echo Setting VCLOUD_CREDENTIAL=$VCLOUD_CREDENTIAL
+echo Setting VCLOUD_ENDPOINT=$VCLOUD_ENDPOINT
 echo ===================
 echo Autoscaler Settings
 echo ===================
@@ -114,6 +130,30 @@ if [[ $EC2_ENABLED = true ]]; then
   sed -i "s@VCLOUD_PROVIDER_END@--@g" $CLOUD_CONTROLLER_CONFIG_FILE
 fi
 
+if [[ $OPENSTACK_ENABLED = true ]]; then
+  sed -i "s@OPENSTACK_PROVIDER_START@@g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s@OPENSTACK_IDENTITY@$openstack_identity@g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s@OPENSTACK_CREDENTIAL@$openstack_credential@g" $CLOUD_CONTROLLER_CONFIG_FILE 
+  sed -i "s@OPENSTACK_ENDPOINT@$openstack_jclouds_endpoint@g" $CLOUD_CONTROLLER_CONFIG_FILE 
+  sed -i "s@OPENSTACK_PROVIDER_END@@g" $CLOUD_CONTROLLER_CONFIG_FILE 
+  sed -i "s@EC2_PROVIDER_START@!--@g" $CLOUD_CONTROLLER_CONFIG_FILE 
+  sed -i "s@EC2_PROVIDER_END@--@g" $CLOUD_CONTROLLER_CONFIG_FILE 
+  sed -i "s@VCLOUD_PROVIDER_START@!--@g" $CLOUD_CONTROLLER_CONFIG_FILE 
+  sed -i "s@VCLOUD_PROVIDER_END@--@g" $CLOUD_CONTROLLER_CONFIG_FILE 
+fi
+
+if [[ $VCLOUD_ENABLED = true ]]; then
+  sed -i "s@VCLOUD_PROVIDER_START@@g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s/VCLOUD_IDENTITY/$vcloud_identity/g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s/VCLOUD_CREDENTIAL/$vcloud_credential/g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s@VCLOUD_ENDPOINT@$vcloud_jclouds_endpoint@g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s@VCLOUD_PROVIDER_END@@g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s@EC2_PROVIDER_START@!--@g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s@EC2_PROVIDER_END@--@g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s@OPENSTACK_PROVIDER_START@!--@g" $CLOUD_CONTROLLER_CONFIG_FILE
+  sed -i "s@OPENSTACK_PROVIDER_END@--@g" $CLOUD_CONTROLLER_CONFIG_FILE
+fi
+
 ###########
 # AS setup
 ###########