X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=docker%2Fui%2Fdeploy.sh;h=6a0d58f9e6fb434eba326d2412f3a96bab649f38;hb=148dfe2fad4ce4907e15a9d9c923e324a9d4d8d7;hp=c1be67453f8a6c358e7d43ef8ea9264231b4a225;hpb=e27d588d5911a8f401583630a2521c78cdc16013;p=validation.git diff --git a/docker/ui/deploy.sh b/docker/ui/deploy.sh index c1be674..6a0d58f 100755 --- a/docker/ui/deploy.sh +++ b/docker/ui/deploy.sh @@ -14,6 +14,8 @@ # See the License for the specific language governing permissions and # limitations under the License. +set -ex + # Container name CONTAINER_NAME="akraino-validation-ui" # Image data @@ -22,35 +24,27 @@ NAME=validation TAG_PRE=ui TAG_VER=latest # Container input parameters -MARIADB_AKRAINO_PASSWORD="" -JENKINS_URL="" -JENKINS_USERNAME="" -JENKINS_USER_PASSWORD="" -JENKINS_JOB_NAME="" +MYSQL_USER="akraino" +MYSQL_PASSWORD="" +JENKINS_URL="https://jenkins.akraino.org/" +JENKINS_USERNAME="demo" +JENKINS_USER_PASSWORD="demo" +JENKINS_JOB_NAME="validation" DB_IP_PORT="" NEXUS_PROXY="" JENKINS_PROXY="" +CERTDIR=$(pwd) +ENCRYPTION_KEY="" +UI_ADMIN_PASSWORD="" +TRUST_ALL="false" +USE_NETWORK_HOST="false" -for ARGUMENT in "$@" -do - KEY=$(echo $ARGUMENT | cut -f1 -d=) - VALUE=$(echo $ARGUMENT | cut -f2 -d=) - case "$KEY" in - REGISTRY) REGISTRY=${VALUE} ;; - NAME) NAME=${VALUE} ;; - TAG_PRE) TAG_PRE=${VALUE} ;; - TAG_VER) TAG_VER=${VALUE} ;; - MARIADB_AKRAINO_PASSWORD) MARIADB_AKRAINO_PASSWORD=${VALUE} ;; - JENKINS_URL) JENKINS_URL=${VALUE} ;; - JENKINS_USERNAME) JENKINS_USERNAME=${VALUE} ;; - JENKINS_USER_PASSWORD) JENKINS_USER_PASSWORD=${VALUE} ;; - JENKINS_JOB_NAME) JENKINS_JOB_NAME=${VALUE} ;; - DB_IP_PORT) DB_IP_PORT=${VALUE} ;; - CONTAINER_NAME) CONTAINER_NAME=${VALUE} ;; - NEXUS_PROXY) NEXUS_PROXY=${VALUE} ;; - JENKINS_PROXY) JENKINS_PROXY=${VALUE} ;; - *) - esac +while [ $# -gt 0 ]; do + if [[ $1 == *"--"* ]]; then + v="${1/--/}" + declare $v="$2" + fi + shift done if [ -z "$DB_IP_PORT" ] @@ -59,36 +53,31 @@ if [ -z "$DB_IP_PORT" ] exit 1 fi -if [ -z "$MARIADB_AKRAINO_PASSWORD" ] +if [ -z "$MYSQL_PASSWORD" ] then - echo "ERROR: You must specify the mariadb akraino user password" + echo "ERROR: You must specify the mysql user password" exit 1 fi -if [ -z "$JENKINS_URL" ] +if [ -z "$ENCRYPTION_KEY" ] then - echo "ERROR: You must specify the Jenkins Url" + echo "ERROR: You must specify the encryption key" exit 1 fi -if [ -z "$JENKINS_USERNAME" ] +if [ -z "$UI_ADMIN_PASSWORD" ] then - echo "ERROR: You must specify the Jenkins username" + echo "ERROR: You must specify the UI admin password" exit 1 fi -if [ -z "$JENKINS_USER_PASSWORD" ] - then - echo "ERROR: You must specify the Jenkins user password" - exit 1 -fi +echo "Note: If there is a password already stored in database, the supplied UI_ADMIN_PASSWORD will be ignored." -if [ -z "$JENKINS_JOB_NAME" ] +IMAGE="$REGISTRY"/"$NAME":"$TAG_PRE"-"$TAG_VER" +if [[ $USE_NETWORK_HOST = "true" ]] then - echo "ERROR: You must specify the Jenkins job name" - exit 1 + docker run --detach --name $CONTAINER_NAME --network="host" -v "$(pwd)/server.xml:/usr/local/tomcat/conf/server.xml" -v "$CERTDIR/bluval.key:/usr/local/tomcat/bluval.key" -v "$CERTDIR/bluval.crt:/usr/local/tomcat/bluval.crt" -v "$(pwd)/root_index.jsp:/usr/local/tomcat/webapps/ROOT/index.jsp" -e DB_IP_PORT="$DB_IP_PORT" -e MYSQL_USER="$MYSQL_USER" -e MYSQL_PASSWORD="$MYSQL_PASSWORD" -e JENKINS_URL="$JENKINS_URL" -e JENKINS_USERNAME="$JENKINS_USERNAME" -e JENKINS_USER_PASSWORD="$JENKINS_USER_PASSWORD" -e JENKINS_JOB_NAME="$JENKINS_JOB_NAME" -e NEXUS_PROXY="$NEXUS_PROXY" -e JENKINS_PROXY="$JENKINS_PROXY" -e ENCRYPTION_KEY="$ENCRYPTION_KEY" -e UI_ADMIN_PASSWORD="$UI_ADMIN_PASSWORD" -e TRUST_ALL="$TRUST_ALL" $IMAGE + else + docker run --detach --name $CONTAINER_NAME -v "$(pwd)/server.xml:/usr/local/tomcat/conf/server.xml" -v "$CERTDIR/bluval.key:/usr/local/tomcat/bluval.key" -v "$CERTDIR/bluval.crt:/usr/local/tomcat/bluval.crt" -v "$(pwd)/root_index.jsp:/usr/local/tomcat/webapps/ROOT/index.jsp" -e DB_IP_PORT="$DB_IP_PORT" -e MYSQL_USER="$MYSQL_USER" -e MYSQL_PASSWORD="$MYSQL_PASSWORD" -e JENKINS_URL="$JENKINS_URL" -e JENKINS_USERNAME="$JENKINS_USERNAME" -e JENKINS_USER_PASSWORD="$JENKINS_USER_PASSWORD" -e JENKINS_JOB_NAME="$JENKINS_JOB_NAME" -e NEXUS_PROXY="$NEXUS_PROXY" -e JENKINS_PROXY="$JENKINS_PROXY" -e ENCRYPTION_KEY="$ENCRYPTION_KEY" -e UI_ADMIN_PASSWORD="$UI_ADMIN_PASSWORD" -e TRUST_ALL="$TRUST_ALL" $IMAGE fi - -IMAGE="$REGISTRY"/"$NAME":"$TAG_PRE"-"$TAG_VER" -docker run --detach --name $CONTAINER_NAME --network="host" -e DB_IP_PORT="$DB_IP_PORT" -e MARIADB_AKRAINO_PASSWORD="$MARIADB_AKRAINO_PASSWORD" -e JENKINS_URL="$JENKINS_URL" -e JENKINS_USERNAME="$JENKINS_USERNAME" -e JENKINS_USER_PASSWORD="$JENKINS_USER_PASSWORD" -e JENKINS_JOB_NAME="$JENKINS_JOB_NAME" -e NEXUS_PROXY="$NEXUS_PROXY" -e JENKINS_PROXY="$JENKINS_PROXY" $IMAGE sleep 10