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
###########