Skip to content
This repository has been archived by the owner on Nov 19, 2020. It is now read-only.

Commit

Permalink
Update scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
Sabha Parameswaran committed Jan 13, 2015
1 parent c690d97 commit 83f6eb7
Show file tree
Hide file tree
Showing 12 changed files with 471 additions and 36 deletions.
6 changes: 3 additions & 3 deletions config/blobs.yml
Expand Up @@ -4,6 +4,6 @@ openjdk/openjdk-1.7.0_71.tar.gz:
sha: f10e858fec40629611493c31b919e4eb7b0b181f
size: 67043436
oracle-service-broker/oracle-service-broker-0.1.0.jar:
object_id: 12ecd2c5-b700-4451-af03-81acff346e05
sha: 7d94a05d6face666e6a212944ac3944be7a20220
size: 21650818
object_id: d94d7041-95b6-4a4a-8872-44ddd0f0f61a
sha: 00cea8407f1333c601894cdf5a7236daca6f0a1f
size: 21650866
6 changes: 6 additions & 0 deletions config/final.yml
@@ -0,0 +1,6 @@
---
blobstore:
provider: s3
options:
bucket_name: bosh-oracle-xe-release
final_name: oracle-xe
23 changes: 23 additions & 0 deletions createRelease.sh
@@ -0,0 +1,23 @@
#!/bin/sh

# For use to create final release tarball
CREATE_FINAL_TARBALL=true
VERSION=11.2
RELEASE_NAME=oracle-xe

echo "Cleanup previous release ..."
rm -rf releases/* .dev_builds/* .final_builds/*

echo "Creating the release ..."
bosh create release --force;

if [ "$CREATE_FINAL_TARBALL" == "true" ]; then
# To create a final tarball release
bosh -n create release --name $RELEASE_NAME --version $VERSION --with-tarball --final --force
fi

echo "Done creating the release ..."

# Upload release if no running deployment using it
#bosh -n upload release;
#echo "Done uploading the release ..."
19 changes: 19 additions & 0 deletions createTile.sh
@@ -0,0 +1,19 @@
#!/bin/sh

TILE_NAME=Oracle-XE-Experimental
TILE_FILE=`pwd`/*tile.yml
RELEASE_TARFILE=`pwd`/releases/*/*.tgz
BOSH_STEMCELL_FILE=bosh-stemcell-2690.2-vsphere-esxi-centos-go_agent.tgz
BOSH_STEMCELL_LOCATION=https://s3.amazonaws.com/bosh-jenkins-artifacts/bosh-stemcell/vsphere

mkdir -p tmp
pushd tmp
mkdir -p metadata releases stemcells
cp $TILE_FILE metadata
cp $RELEASE_TARFILE releases
if [ ! -e "stemcells/$BOSH_STEMCELL_FILE" ]; then
curl -k $BOSH_STEMCELL_LOCATION/$BOSH_STEMCELL_FILE -o stemcells/$BOSH_STEMCELL_FILE
fi
zip -r $TILE_NAME.pivotal metadata releases stemcells
mv $TILE_NAME.pivotal ..
popd
26 changes: 26 additions & 0 deletions deployRelease.sh
@@ -0,0 +1,26 @@
#!/bin/sh

# Cleanup existing deployment and release
CLEAN_UP=true

# For use to create final release tarball
RELEASE_NAME=oracle-xe

DEPLOYMENT_NAME=oracle-xe
DEPLOYMENT_PLATFORM=boshlite
#DEPLOYMENT_PLATFORM=vSphere
DEPLOYMENT_MANIFEST=`pwd`/oracle-xe-${DEPLOYMENT_PLATFORM}.yml

if [ "$CLEAN_UP" == "true" ]; then
bosh deployment $DEPLOYMENT_MANIFEST
bosh -n delete deployment $DEPLOYMENT_NAME
bosh -n delete release $RELEASE_NAME
fi

# Make sure the release has already been uploaded
#bosh -n upload release;
#echo "Done uploading the release ..."

bosh -d $DEPLOYMENT_MANIFEST -n deploy
echo "Done deploying ..."

4 changes: 2 additions & 2 deletions jobs/oracle_xe_node/templates/ctl.erb
Expand Up @@ -245,14 +245,14 @@ case $1 in

log_debug "Starting off the Oracle-XE Service"
/etc/init.d/oracle-xe start 2>&1 >> $DEBUG_LOG
sudo - oracle -c "lsnrctl start"
su -c "lsnrctl start" - oracle
ps -ef | grep "tnslsnr LISTENER" | grep -v "grep" | awk ' { print $2 }' > $PIDFILE
;;

stop)

log_debug "Stopping the oracle-xe service "
sudo - oracle -c "lsnrctl stop"
su -c "lsnrctl stop" - oracle
/etc/init.d/oracle-xe stop

rm -f $PIDFILE
Expand Down
3 changes: 3 additions & 0 deletions jobs/oracle_xe_sb/spec
Expand Up @@ -10,6 +10,9 @@ properties:
description: "Download url for the jdbc driver"
oracle_xe_sb.listen_port:
description: "Listen Port of the SB App instance"
oracle_xe_sb.run_arg:
description: "Argument for kicking off the SB App instance"
default: "org.springframework.boot.loader.JarLauncher"
oracle_xe_sb.memory.min_heap:
description: "Min Heap in MB"
default: 1024
Expand Down
70 changes: 40 additions & 30 deletions jobs/oracle_xe_sb/templates/ctl.erb
Expand Up @@ -27,6 +27,7 @@ chown -R vcap:vcap $RUN_DIR $LOG_DIR

export OPENJDK_INSTALL_HOME=/var/vcap/packages/openjdk/
export ORACLE_SB_INSTALL_HOME=/var/vcap/packages/oracle-service-broker/
export JAVA_RUN_ARG=<%=properties.oracle_xe_sb.run_arg %>

export OPENJDK=openjdk
export ORACLE_SB_APP_DIR="oracle-service-broker"
Expand Down Expand Up @@ -108,53 +109,69 @@ case $1 in
if [ -d $ORACLE_SB_APP_DIR ]; then
ORACLE_SB_APP=`ls ${ORACLE_SB_APP_DIR}/*.jar`
ORACLE_SB_APP_PATH=${ORACLE_SB_INSTALL_HOME}/${ORACLE_SB_APP}
ORACLE_SB_EXPLODED_APP_PATH=${ORACLE_SB_INSTALL_HOME}/exploded
mkdir -p $ORACLE_SB_EXPLODED_APP_PATH
else
echo "Oracle Service Broker App Jar is not properly packaged"
exit 1
fi
log_debug "Located App at: ${ORACLE_SB_APP_PATH}"

mkdir -p /var/vcap/data/tmp

cp -r templates/config /var/vcap/data/tmp
sed -i.bak "s/XE_ADMIN_USER/${XE_ADMIN_USER}/g; \
s/XE_ADMIN_PASSWD/${XE_ADMIN_PASSWD}/g; \
s/XE_SB_USER/${XE_SB_USER}/g; \
s/XE_SB_PASSWD/${XE_SB_PASSWD}/g; \
s/XE_HOST_ADDR/${XE_HOST_ADDR}/g; \
s/XE_HOST_PORT/${XE_HOST_PORT}/g; \
s/XE_SERVICE_SID/${XE_SERVICE_SID}/g" \
/var/vcap/data/tmp/{SB_APP_CONFIG}

cp templates/${SB_APP_ENV} /var/vcap/data/tmp
pushd $ORACLE_SB_EXPLODED_APP_PATH
# openjdk or some weird jar problem appears to corrupt the nested jar files when used to update the oracle jdbc driver
# java.lang.IllegalStateException: Unable to open nested compressed entry lib/jboss-logging-3.1.3.GA.jar
# at org.springframework.boot.loader.jar.JarFile.createJarFileFromFileEntry(JarFile.java:378)
# at org.springframework.boot.loader.jar.JarFile.createJarFileFromEntry(JarFile.java:355)
# at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(JarFile.java:341)
# at org.springframework.boot.loader.archive.JarFileArchive.getNestedArchive(JarFileArchive.java:108)
# at org.springframework.boot.loader.archive.JarFileArchive.getNestedArchives(JarFileArchive.java:92)
# at org.springframework.boot.loader.ExecutableArchiveLauncher.getClassPathArchives(ExecutableArchiveLauncher.java:68)
# at org.springframework.boot.loader.Launcher.launch(Launcher.java:60)
# at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:45)
# Unzip the app contents and use the exploded path in classpath to start the java type service broker
unzip ${ORACLE_SB_APP_PATH}
log_debug "Extracted App contents under $ORACLE_SB_EXPLODED_APP_PATH"

cp -r $ORACLE_SB_INSTALL_HOME/templates/config .
sed -i.bak "s/XE_ADMIN_USER/${XE_ADMIN_USER}/g; \
s/XE_ADMIN_PASSWD/${XE_ADMIN_PASSWD}/g; \
s/XE_SB_USER/${XE_SB_USER}/g; \
s/XE_SB_PASSWD/${XE_SB_PASSWD}/g; \
s/XE_HOST_ADDR/${XE_HOST_ADDR}/g; \
s/XE_HOST_PORT/${XE_HOST_PORT}/g; \
s/XE_SERVICE_SID/${XE_SERVICE_SID}/g" \
/var/vcap/data/tmp/{SB_APP_ENV}

$JAVA_HOME/bin/jar uvf ${ORACLE_SB_APP_PATH} ${SB_APP_CONFIG}
log_debug "Updated App with correct db connectivity information changes"
${SB_APP_CONFIG}

pushd /var/vcap/data/tmp
mkdir lib
curl -k ${OJDBC_DRIVER_DOWNLOAD_URL} -o lib/ojdbc.jar
if [ "$?" == "0" ]; then
log_debug "Successfully downloaded Oracle JDBC Driver"
else
log_debug "Unable to download Oracle JDBC Driver from url: ${OJDBC_DRIVER_DOWNLOAD_URL}"
fi

$JAVA_HOME/bin/jar uvf ${ORACLE_SB_APP_PATH} lib/ojdbc.jar
log_debug "Updated App with ojdbc driver "
log_debug "Added Oracle jdbc driver to App bits"
log_debug "Updated App with correct db connectivity information changes"
popd

mkdir -p /var/vcap/data/tmp
cp -r templates/${SB_APP_ENV} /var/vcap/data/tmp
pushd /var/vcap/data/tmp
sed -i.bak "s/XE_ADMIN_USER/${XE_ADMIN_USER}/g; \
s/XE_ADMIN_PASSWD/${XE_ADMIN_PASSWD}/g; \
s/XE_SB_USER/${XE_SB_USER}/g; \
s/XE_SB_PASSWD/${XE_SB_PASSWD}/g; \
s/XE_HOST_ADDR/${XE_HOST_ADDR}/g; \
s/XE_HOST_PORT/${XE_HOST_PORT}/g; \
s/XE_SERVICE_SID/${XE_SERVICE_SID}/g" \
/var/vcap/data/tmp/${SB_APP_ENV}

cp /var/vcap/data/tmp/${SB_APP_ENV} $ORACLE_SB_INSTALL_HOME
popd


log_debug "Starting off the Oracle XE Service Broker App on ${SB_HOST_IP}:${LISTEN_PORT}"
source ./${SB_APP_ENV}
nohup $JAVA_BINARY -verbose:gc -Xms${MIN_HEAP}m -Xmx${MAX_HEAP}m -Dserver.port=${LISTEN_PORT} -jar ${ORACLE_SB_APP_PATH} 2>&1 >> $DEBUG_LOG &
source $ORACLE_SB_INSTALL_HOME/${SB_APP_ENV}
nohup $JAVA_BINARY -verbose:gc -Xms${MIN_HEAP}m -Xmx${MAX_HEAP}m -Dserver.port=${LISTEN_PORT} -classpath ${ORACLE_SB_EXPLODED_APP_PATH}:${ORACLE_SB_EXPLODED_APP_PATH}/lib $JAVA_RUN_ARG 2>&1 >> $DEBUG_LOG &
APP_PID=`ps -ef | grep "java" | grep -v "grep" | awk ' { print $2 }' `
log_debug "Kicked off the Oracle XE Service Broker App with Pid: $APP_PID"
echo $APP_PID > $PIDFILE
Expand Down Expand Up @@ -212,13 +229,6 @@ case $1 in



# if [ "$plan_id" == "" ]; then
# plan_creation_output=`curl ${app_catalog_url}/services/${service_id}/plans -X POST -H "Content-Type:application/json" -d @${ORACLE_SB_INSTALL_HOME}/service_plan.json`
# log_debug "Service Plan created!!"
# log_debug "Service Plan details: ${plan_creation_output}"
# else
# log_debug "Existing Plan Id : $plan_id "
# fi
;;

stop)
Expand Down
3 changes: 2 additions & 1 deletion oracle-xe-boshlite.yml
Expand Up @@ -5,7 +5,7 @@ meta:

director_uuid: DIRECTOR_UUID # EDIT ME

name: oracle-xe-complete
name: oracle-xe

releases:
- name: oracle-xe
Expand Down Expand Up @@ -369,6 +369,7 @@ properties:
oracle_xe_sb:
jdbc_driver_download_url: "http://12.1.1.1:7777/fileserver/oracle-xe/ojdbc7.jar" # EDIT ME
listen_port: 9000
run_arg: "org.springframework.boot.loader.JarLauncher" # EDIT ME
service:
service_port: 1521
service_sid: XE
Expand Down

0 comments on commit 83f6eb7

Please sign in to comment.