Initial commit
This commit is contained in:
		
							
								
								
									
										38
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,38 @@
 | 
				
			|||||||
 | 
					src/main/resources/configs/*.yaml
 | 
				
			||||||
 | 
					src/main/resources/configs/*.yml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					HELP.md
 | 
				
			||||||
 | 
					target/
 | 
				
			||||||
 | 
					!.mvn/wrapper/maven-wrapper.jar
 | 
				
			||||||
 | 
					!**/src/main/**/target/
 | 
				
			||||||
 | 
					!**/src/test/**/target/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.mvn/
 | 
				
			||||||
 | 
					### STS ###
 | 
				
			||||||
 | 
					.apt_generated
 | 
				
			||||||
 | 
					.classpath
 | 
				
			||||||
 | 
					.factorypath
 | 
				
			||||||
 | 
					.project
 | 
				
			||||||
 | 
					.settings
 | 
				
			||||||
 | 
					.springBeans
 | 
				
			||||||
 | 
					.sts4-cache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### IntelliJ IDEA ###
 | 
				
			||||||
 | 
					.idea
 | 
				
			||||||
 | 
					*.iws
 | 
				
			||||||
 | 
					*.iml
 | 
				
			||||||
 | 
					*.ipr
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### NetBeans ###
 | 
				
			||||||
 | 
					/nbproject/private/
 | 
				
			||||||
 | 
					/nbbuild/
 | 
				
			||||||
 | 
					/dist/
 | 
				
			||||||
 | 
					/nbdist/
 | 
				
			||||||
 | 
					/.nb-gradle/
 | 
				
			||||||
 | 
					build/
 | 
				
			||||||
 | 
					!**/src/main/**/build/
 | 
				
			||||||
 | 
					!**/src/test/**/build/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### VS Code ###
 | 
				
			||||||
 | 
					.vscode/
 | 
				
			||||||
							
								
								
									
										64
									
								
								.gitlab-ci.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								.gitlab-ci.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,64 @@
 | 
				
			|||||||
 | 
					stages:          # List of stages for jobs, and their order of execution
 | 
				
			||||||
 | 
					  - build
 | 
				
			||||||
 | 
					  - docker
 | 
				
			||||||
 | 
					  - deploy
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					variables:
 | 
				
			||||||
 | 
					  CI_REGISTRY_IMAGE: docker.dergeorg.at/dergeorg
 | 
				
			||||||
 | 
					  SERVICE: todo-config
 | 
				
			||||||
 | 
					  Docker_name:  gitlab-todo-config
 | 
				
			||||||
 | 
					  TAG_LATEST: $CI_REGISTRY_IMAGE/$Docker_name:latest
 | 
				
			||||||
 | 
					  Project_name: todo-config
 | 
				
			||||||
 | 
					  Docker_url:  docker.dergeorg.at
 | 
				
			||||||
 | 
					  Docker_namespace:  dergeorg
 | 
				
			||||||
 | 
					  DOCKER_TAG:  latest
 | 
				
			||||||
 | 
					  ENV: test
 | 
				
			||||||
 | 
					  PORT_HOST: 1111
 | 
				
			||||||
 | 
					  PORT_CONTAINER: 1111
 | 
				
			||||||
 | 
					  EUREKA_HOSTNAME: 192.168.1.65
 | 
				
			||||||
 | 
					  EUREKA_PORT: 9995
 | 
				
			||||||
 | 
					  CONFIG_PORT: 1111
 | 
				
			||||||
 | 
					  CONFIG_URL: service.todo.gitlab.dergeorg.at
 | 
				
			||||||
 | 
					  CONFIG_HTTP: https
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					build-job:       # Building jar file
 | 
				
			||||||
 | 
					  image: maven:3.6.3-jdk-11-slim
 | 
				
			||||||
 | 
					  stage: build
 | 
				
			||||||
 | 
					  script:
 | 
				
			||||||
 | 
					    - mkdir src/main/resources/configs
 | 
				
			||||||
 | 
					    - echo "$APPLICATION_TODO_SERVICE_YAML" > src/main/resources/configs/todo-service.yaml
 | 
				
			||||||
 | 
					    - mvn clean install && mvn package -B -e 
 | 
				
			||||||
 | 
					    - export
 | 
				
			||||||
 | 
					  artifacts:
 | 
				
			||||||
 | 
					    paths:
 | 
				
			||||||
 | 
					      - target/*.jar
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					publish-job:       # Building docker image and publishing it
 | 
				
			||||||
 | 
					  image: docker:latest
 | 
				
			||||||
 | 
					  stage: docker
 | 
				
			||||||
 | 
					  services:
 | 
				
			||||||
 | 
					    - docker:dind
 | 
				
			||||||
 | 
					  script:
 | 
				
			||||||
 | 
					    - docker login $DOCKER_URL -u $DOCKER_USER -p $DOCKER_PW
 | 
				
			||||||
 | 
					    - docker build -t $DOCKER_URL/$TAG_LATEST .
 | 
				
			||||||
 | 
					    - docker push $DOCKER_URL/$TAG_LATEST
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					deploy-job:      # Deploy docker image on ssh server
 | 
				
			||||||
 | 
					  image: alpine:latest
 | 
				
			||||||
 | 
					  stage: deploy
 | 
				
			||||||
 | 
					  tags:
 | 
				
			||||||
 | 
					    - deployment
 | 
				
			||||||
 | 
					  before_script:
 | 
				
			||||||
 | 
					    - 'command -v ssh-agent >/dev/null || ( apk add --update openssh )' 
 | 
				
			||||||
 | 
					    - eval $(ssh-agent -s)
 | 
				
			||||||
 | 
					    - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
 | 
				
			||||||
 | 
					    - mkdir -p ~/.ssh
 | 
				
			||||||
 | 
					    - chmod 700 ~/.ssh
 | 
				
			||||||
 | 
					    - ssh-keyscan $SERVER_IP >> ~/.ssh/known_hosts
 | 
				
			||||||
 | 
					    - chmod 644 ~/.ssh/known_hosts
 | 
				
			||||||
 | 
					  script:
 | 
				
			||||||
 | 
					    - ssh $SSH_USER@$SERVER_IP "docker login $DOCKER_URL -u $DOCKER_USER -p $DOCKER_PW"
 | 
				
			||||||
 | 
					    - ssh $SSH_USER@$SERVER_IP "docker push $DOCKER_URL/$TAG_LATEST"
 | 
				
			||||||
 | 
					    - ssh $SSH_USER@$SERVER_IP "docker container rm -f $Docker_name || true"
 | 
				
			||||||
 | 
					    - ssh $SSH_USER@$SERVER_IP "docker run -it -d --name $Docker_name -e PROJEKTNAME_UNIQUE='$Project_name:$CI_JOB_ID' -e PROJEKTNAME='$Project_name' -e HOSTNAME=$EUREKA_HOSTNAME -e EUREKAPORT=$EUREKA_PORT -e server.port=$CONFIG_PORT -e CONFIGPORT=$CONFIG_PORT -e KEY='$CONFIG_KEY' -e CONFIGURL='$CONFIG_URL' -e CONFIGUSER='$CONFIG_USER' -e CONFIGHTTP=$CONFIG_HTTP -p $PORT_HOST:$PORT_CONTAINER $DOCKER_URL/$TAG_LATEST"
 | 
				
			||||||
							
								
								
									
										17
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
				
			|||||||
 | 
					# For Java 8, try this
 | 
				
			||||||
 | 
					# FROM openjdk:8-jdk-alpine
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# For Java 11, try this
 | 
				
			||||||
 | 
					FROM adoptopenjdk/openjdk11:alpine-jre
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Refer to Maven build -> finalName
 | 
				
			||||||
 | 
					ARG JAR_FILE=target/todo-configserver-0.0.1-SNAPSHOT.jar
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cd /opt/app
 | 
				
			||||||
 | 
					WORKDIR /opt/app
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cp target/spring-boot-web.jar /opt/app/app.jar
 | 
				
			||||||
 | 
					COPY ${JAR_FILE} app.jar
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# java -jar /opt/app/app.jar
 | 
				
			||||||
 | 
					ENTRYPOINT ["java", "-Dspring.HOSTNAME=${HOSTNAME}", "-Dspring.EUREKAPORT=${EUREKAPORT}", "-DCONFIGPORT=${CONFIGPORT}", "-Dspring.KEY=${KEY}", "-Deureka.instance.instance-id=${PROJEKTNAME_UNIQUE}", "-Dspring.application.name=${PROJEKTNAME}", "-jar", "app.jar"]
 | 
				
			||||||
							
								
								
									
										5
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
				
			|||||||
 | 
					# todo-service
 | 
				
			||||||
 | 
					* Env variable 'HOSTNAME' is available to set the Eureka hostname to something other than the 'localhost'.
 | 
				
			||||||
 | 
					* Env variable 'EUREKAPORT' is available to set the port to something other than the '8761'.
 | 
				
			||||||
 | 
					* Env variable 'CONFIGPORT' is available to set the config server url to something other than the '1111'.
 | 
				
			||||||
 | 
					* Env variable 'KEY' is available to set the key to something other than the 'mysuperkey'.
 | 
				
			||||||
							
								
								
									
										316
									
								
								mvnw
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										316
									
								
								mvnw
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@@ -0,0 +1,316 @@
 | 
				
			|||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					# ----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# 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
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#    https://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.
 | 
				
			||||||
 | 
					# ----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# ----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Maven Start Up Batch script
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Required ENV vars:
 | 
				
			||||||
 | 
					# ------------------
 | 
				
			||||||
 | 
					#   JAVA_HOME - location of a JDK home dir
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Optional ENV vars
 | 
				
			||||||
 | 
					# -----------------
 | 
				
			||||||
 | 
					#   M2_HOME - location of maven2's installed home dir
 | 
				
			||||||
 | 
					#   MAVEN_OPTS - parameters passed to the Java VM when running Maven
 | 
				
			||||||
 | 
					#     e.g. to debug Maven itself, use
 | 
				
			||||||
 | 
					#       set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
 | 
				
			||||||
 | 
					#   MAVEN_SKIP_RC - flag to disable loading of mavenrc files
 | 
				
			||||||
 | 
					# ----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -z "$MAVEN_SKIP_RC" ] ; then
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if [ -f /usr/local/etc/mavenrc ] ; then
 | 
				
			||||||
 | 
					    . /usr/local/etc/mavenrc
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if [ -f /etc/mavenrc ] ; then
 | 
				
			||||||
 | 
					    . /etc/mavenrc
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if [ -f "$HOME/.mavenrc" ] ; then
 | 
				
			||||||
 | 
					    . "$HOME/.mavenrc"
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# OS specific support.  $var _must_ be set to either true or false.
 | 
				
			||||||
 | 
					cygwin=false;
 | 
				
			||||||
 | 
					darwin=false;
 | 
				
			||||||
 | 
					mingw=false
 | 
				
			||||||
 | 
					case "`uname`" in
 | 
				
			||||||
 | 
					  CYGWIN*) cygwin=true ;;
 | 
				
			||||||
 | 
					  MINGW*) mingw=true;;
 | 
				
			||||||
 | 
					  Darwin*) darwin=true
 | 
				
			||||||
 | 
					    # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
 | 
				
			||||||
 | 
					    # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
 | 
				
			||||||
 | 
					    if [ -z "$JAVA_HOME" ]; then
 | 
				
			||||||
 | 
					      if [ -x "/usr/libexec/java_home" ]; then
 | 
				
			||||||
 | 
					        export JAVA_HOME="`/usr/libexec/java_home`"
 | 
				
			||||||
 | 
					      else
 | 
				
			||||||
 | 
					        export JAVA_HOME="/Library/Java/Home"
 | 
				
			||||||
 | 
					      fi
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					    ;;
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -z "$JAVA_HOME" ] ; then
 | 
				
			||||||
 | 
					  if [ -r /etc/gentoo-release ] ; then
 | 
				
			||||||
 | 
					    JAVA_HOME=`java-config --jre-home`
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -z "$M2_HOME" ] ; then
 | 
				
			||||||
 | 
					  ## resolve links - $0 may be a link to maven's home
 | 
				
			||||||
 | 
					  PRG="$0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # need this for relative symlinks
 | 
				
			||||||
 | 
					  while [ -h "$PRG" ] ; do
 | 
				
			||||||
 | 
					    ls=`ls -ld "$PRG"`
 | 
				
			||||||
 | 
					    link=`expr "$ls" : '.*-> \(.*\)$'`
 | 
				
			||||||
 | 
					    if expr "$link" : '/.*' > /dev/null; then
 | 
				
			||||||
 | 
					      PRG="$link"
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					      PRG="`dirname "$PRG"`/$link"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					  done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  saveddir=`pwd`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  M2_HOME=`dirname "$PRG"`/..
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # make it fully qualified
 | 
				
			||||||
 | 
					  M2_HOME=`cd "$M2_HOME" && pwd`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  cd "$saveddir"
 | 
				
			||||||
 | 
					  # echo Using m2 at $M2_HOME
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# For Cygwin, ensure paths are in UNIX format before anything is touched
 | 
				
			||||||
 | 
					if $cygwin ; then
 | 
				
			||||||
 | 
					  [ -n "$M2_HOME" ] &&
 | 
				
			||||||
 | 
					    M2_HOME=`cygpath --unix "$M2_HOME"`
 | 
				
			||||||
 | 
					  [ -n "$JAVA_HOME" ] &&
 | 
				
			||||||
 | 
					    JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
 | 
				
			||||||
 | 
					  [ -n "$CLASSPATH" ] &&
 | 
				
			||||||
 | 
					    CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# For Mingw, ensure paths are in UNIX format before anything is touched
 | 
				
			||||||
 | 
					if $mingw ; then
 | 
				
			||||||
 | 
					  [ -n "$M2_HOME" ] &&
 | 
				
			||||||
 | 
					    M2_HOME="`(cd "$M2_HOME"; pwd)`"
 | 
				
			||||||
 | 
					  [ -n "$JAVA_HOME" ] &&
 | 
				
			||||||
 | 
					    JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -z "$JAVA_HOME" ]; then
 | 
				
			||||||
 | 
					  javaExecutable="`which javac`"
 | 
				
			||||||
 | 
					  if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
 | 
				
			||||||
 | 
					    # readlink(1) is not available as standard on Solaris 10.
 | 
				
			||||||
 | 
					    readLink=`which readlink`
 | 
				
			||||||
 | 
					    if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
 | 
				
			||||||
 | 
					      if $darwin ; then
 | 
				
			||||||
 | 
					        javaHome="`dirname \"$javaExecutable\"`"
 | 
				
			||||||
 | 
					        javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
 | 
				
			||||||
 | 
					      else
 | 
				
			||||||
 | 
					        javaExecutable="`readlink -f \"$javaExecutable\"`"
 | 
				
			||||||
 | 
					      fi
 | 
				
			||||||
 | 
					      javaHome="`dirname \"$javaExecutable\"`"
 | 
				
			||||||
 | 
					      javaHome=`expr "$javaHome" : '\(.*\)/bin'`
 | 
				
			||||||
 | 
					      JAVA_HOME="$javaHome"
 | 
				
			||||||
 | 
					      export JAVA_HOME
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -z "$JAVACMD" ] ; then
 | 
				
			||||||
 | 
					  if [ -n "$JAVA_HOME"  ] ; then
 | 
				
			||||||
 | 
					    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
 | 
				
			||||||
 | 
					      # IBM's JDK on AIX uses strange locations for the executables
 | 
				
			||||||
 | 
					      JAVACMD="$JAVA_HOME/jre/sh/java"
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					      JAVACMD="$JAVA_HOME/bin/java"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					  else
 | 
				
			||||||
 | 
					    JAVACMD="`\\unset -f command; \\command -v java`"
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ ! -x "$JAVACMD" ] ; then
 | 
				
			||||||
 | 
					  echo "Error: JAVA_HOME is not defined correctly." >&2
 | 
				
			||||||
 | 
					  echo "  We cannot execute $JAVACMD" >&2
 | 
				
			||||||
 | 
					  exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -z "$JAVA_HOME" ] ; then
 | 
				
			||||||
 | 
					  echo "Warning: JAVA_HOME environment variable is not set."
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# traverses directory structure from process work directory to filesystem root
 | 
				
			||||||
 | 
					# first directory with .mvn subdirectory is considered project base directory
 | 
				
			||||||
 | 
					find_maven_basedir() {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if [ -z "$1" ]
 | 
				
			||||||
 | 
					  then
 | 
				
			||||||
 | 
					    echo "Path not specified to find_maven_basedir"
 | 
				
			||||||
 | 
					    return 1
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  basedir="$1"
 | 
				
			||||||
 | 
					  wdir="$1"
 | 
				
			||||||
 | 
					  while [ "$wdir" != '/' ] ; do
 | 
				
			||||||
 | 
					    if [ -d "$wdir"/.mvn ] ; then
 | 
				
			||||||
 | 
					      basedir=$wdir
 | 
				
			||||||
 | 
					      break
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					    # workaround for JBEAP-8937 (on Solaris 10/Sparc)
 | 
				
			||||||
 | 
					    if [ -d "${wdir}" ]; then
 | 
				
			||||||
 | 
					      wdir=`cd "$wdir/.."; pwd`
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					    # end of workaround
 | 
				
			||||||
 | 
					  done
 | 
				
			||||||
 | 
					  echo "${basedir}"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# concatenates all lines of a file
 | 
				
			||||||
 | 
					concat_lines() {
 | 
				
			||||||
 | 
					  if [ -f "$1" ]; then
 | 
				
			||||||
 | 
					    echo "$(tr -s '\n' ' ' < "$1")"
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BASE_DIR=`find_maven_basedir "$(pwd)"`
 | 
				
			||||||
 | 
					if [ -z "$BASE_DIR" ]; then
 | 
				
			||||||
 | 
					  exit 1;
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					##########################################################################################
 | 
				
			||||||
 | 
					# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
 | 
				
			||||||
 | 
					# This allows using the maven wrapper in projects that prohibit checking in binary data.
 | 
				
			||||||
 | 
					##########################################################################################
 | 
				
			||||||
 | 
					if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
 | 
				
			||||||
 | 
					    if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					      echo "Found .mvn/wrapper/maven-wrapper.jar"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					    if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					      echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					    if [ -n "$MVNW_REPOURL" ]; then
 | 
				
			||||||
 | 
					      jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					      jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					    while IFS="=" read key value; do
 | 
				
			||||||
 | 
					      case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
 | 
				
			||||||
 | 
					      esac
 | 
				
			||||||
 | 
					    done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
 | 
				
			||||||
 | 
					    if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					      echo "Downloading from: $jarUrl"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					    wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
 | 
				
			||||||
 | 
					    if $cygwin; then
 | 
				
			||||||
 | 
					      wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if command -v wget > /dev/null; then
 | 
				
			||||||
 | 
					        if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					          echo "Found wget ... using wget"
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					        if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
 | 
				
			||||||
 | 
					            wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					            wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					    elif command -v curl > /dev/null; then
 | 
				
			||||||
 | 
					        if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					          echo "Found curl ... using curl"
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					        if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
 | 
				
			||||||
 | 
					            curl -o "$wrapperJarPath" "$jarUrl" -f
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					            curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					          echo "Falling back to using Java to download"
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					        javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
 | 
				
			||||||
 | 
					        # For Cygwin, switch paths to Windows format before running javac
 | 
				
			||||||
 | 
					        if $cygwin; then
 | 
				
			||||||
 | 
					          javaClass=`cygpath --path --windows "$javaClass"`
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					        if [ -e "$javaClass" ]; then
 | 
				
			||||||
 | 
					            if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
 | 
				
			||||||
 | 
					                if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					                  echo " - Compiling MavenWrapperDownloader.java ..."
 | 
				
			||||||
 | 
					                fi
 | 
				
			||||||
 | 
					                # Compiling the Java class
 | 
				
			||||||
 | 
					                ("$JAVA_HOME/bin/javac" "$javaClass")
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
 | 
					            if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
 | 
				
			||||||
 | 
					                # Running the downloader
 | 
				
			||||||
 | 
					                if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					                  echo " - Running MavenWrapperDownloader.java ..."
 | 
				
			||||||
 | 
					                fi
 | 
				
			||||||
 | 
					                ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					##########################################################################################
 | 
				
			||||||
 | 
					# End of extension
 | 
				
			||||||
 | 
					##########################################################################################
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
 | 
				
			||||||
 | 
					if [ "$MVNW_VERBOSE" = true ]; then
 | 
				
			||||||
 | 
					  echo $MAVEN_PROJECTBASEDIR
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# For Cygwin, switch paths to Windows format before running java
 | 
				
			||||||
 | 
					if $cygwin; then
 | 
				
			||||||
 | 
					  [ -n "$M2_HOME" ] &&
 | 
				
			||||||
 | 
					    M2_HOME=`cygpath --path --windows "$M2_HOME"`
 | 
				
			||||||
 | 
					  [ -n "$JAVA_HOME" ] &&
 | 
				
			||||||
 | 
					    JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
 | 
				
			||||||
 | 
					  [ -n "$CLASSPATH" ] &&
 | 
				
			||||||
 | 
					    CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
 | 
				
			||||||
 | 
					  [ -n "$MAVEN_PROJECTBASEDIR" ] &&
 | 
				
			||||||
 | 
					    MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Provide a "standardized" way to retrieve the CLI args that will
 | 
				
			||||||
 | 
					# work with both Windows and non-Windows executions.
 | 
				
			||||||
 | 
					MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
 | 
				
			||||||
 | 
					export MAVEN_CMD_LINE_ARGS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					exec "$JAVACMD" \
 | 
				
			||||||
 | 
					  $MAVEN_OPTS \
 | 
				
			||||||
 | 
					  $MAVEN_DEBUG_OPTS \
 | 
				
			||||||
 | 
					  -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
 | 
				
			||||||
 | 
					  "-Dmaven.home=${M2_HOME}" \
 | 
				
			||||||
 | 
					  "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
 | 
				
			||||||
 | 
					  ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
 | 
				
			||||||
							
								
								
									
										188
									
								
								mvnw.cmd
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										188
									
								
								mvnw.cmd
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,188 @@
 | 
				
			|||||||
 | 
					@REM ----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					@REM Licensed to the Apache Software Foundation (ASF) under one
 | 
				
			||||||
 | 
					@REM or more contributor license agreements.  See the NOTICE file
 | 
				
			||||||
 | 
					@REM distributed with this work for additional information
 | 
				
			||||||
 | 
					@REM regarding copyright ownership.  The ASF licenses this file
 | 
				
			||||||
 | 
					@REM to you under the Apache License, Version 2.0 (the
 | 
				
			||||||
 | 
					@REM "License"); you may not use this file except in compliance
 | 
				
			||||||
 | 
					@REM with the License.  You may obtain a copy of the License at
 | 
				
			||||||
 | 
					@REM
 | 
				
			||||||
 | 
					@REM    https://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					@REM
 | 
				
			||||||
 | 
					@REM Unless required by applicable law or agreed to in writing,
 | 
				
			||||||
 | 
					@REM software distributed under the License is distributed on an
 | 
				
			||||||
 | 
					@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 | 
				
			||||||
 | 
					@REM KIND, either express or implied.  See the License for the
 | 
				
			||||||
 | 
					@REM specific language governing permissions and limitations
 | 
				
			||||||
 | 
					@REM under the License.
 | 
				
			||||||
 | 
					@REM ----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM ----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					@REM Maven Start Up Batch script
 | 
				
			||||||
 | 
					@REM
 | 
				
			||||||
 | 
					@REM Required ENV vars:
 | 
				
			||||||
 | 
					@REM JAVA_HOME - location of a JDK home dir
 | 
				
			||||||
 | 
					@REM
 | 
				
			||||||
 | 
					@REM Optional ENV vars
 | 
				
			||||||
 | 
					@REM M2_HOME - location of maven2's installed home dir
 | 
				
			||||||
 | 
					@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
 | 
				
			||||||
 | 
					@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
 | 
				
			||||||
 | 
					@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
 | 
				
			||||||
 | 
					@REM     e.g. to debug Maven itself, use
 | 
				
			||||||
 | 
					@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
 | 
				
			||||||
 | 
					@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
 | 
				
			||||||
 | 
					@REM ----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
 | 
				
			||||||
 | 
					@echo off
 | 
				
			||||||
 | 
					@REM set title of command window
 | 
				
			||||||
 | 
					title %0
 | 
				
			||||||
 | 
					@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
 | 
				
			||||||
 | 
					@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM set %HOME% to equivalent of $HOME
 | 
				
			||||||
 | 
					if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM Execute a user defined script before this one
 | 
				
			||||||
 | 
					if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
 | 
				
			||||||
 | 
					@REM check for pre script, once with legacy .bat ending and once with .cmd ending
 | 
				
			||||||
 | 
					if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %*
 | 
				
			||||||
 | 
					if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %*
 | 
				
			||||||
 | 
					:skipRcPre
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@setlocal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set ERROR_CODE=0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM To isolate internal variables from possible post scripts, we use another setlocal
 | 
				
			||||||
 | 
					@setlocal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM ==== START VALIDATION ====
 | 
				
			||||||
 | 
					if not "%JAVA_HOME%" == "" goto OkJHome
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo.
 | 
				
			||||||
 | 
					echo Error: JAVA_HOME not found in your environment. >&2
 | 
				
			||||||
 | 
					echo Please set the JAVA_HOME variable in your environment to match the >&2
 | 
				
			||||||
 | 
					echo location of your Java installation. >&2
 | 
				
			||||||
 | 
					echo.
 | 
				
			||||||
 | 
					goto error
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:OkJHome
 | 
				
			||||||
 | 
					if exist "%JAVA_HOME%\bin\java.exe" goto init
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo.
 | 
				
			||||||
 | 
					echo Error: JAVA_HOME is set to an invalid directory. >&2
 | 
				
			||||||
 | 
					echo JAVA_HOME = "%JAVA_HOME%" >&2
 | 
				
			||||||
 | 
					echo Please set the JAVA_HOME variable in your environment to match the >&2
 | 
				
			||||||
 | 
					echo location of your Java installation. >&2
 | 
				
			||||||
 | 
					echo.
 | 
				
			||||||
 | 
					goto error
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM ==== END VALIDATION ====
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:init
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
 | 
				
			||||||
 | 
					@REM Fallback to current working directory if not found.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
 | 
				
			||||||
 | 
					IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set EXEC_DIR=%CD%
 | 
				
			||||||
 | 
					set WDIR=%EXEC_DIR%
 | 
				
			||||||
 | 
					:findBaseDir
 | 
				
			||||||
 | 
					IF EXIST "%WDIR%"\.mvn goto baseDirFound
 | 
				
			||||||
 | 
					cd ..
 | 
				
			||||||
 | 
					IF "%WDIR%"=="%CD%" goto baseDirNotFound
 | 
				
			||||||
 | 
					set WDIR=%CD%
 | 
				
			||||||
 | 
					goto findBaseDir
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:baseDirFound
 | 
				
			||||||
 | 
					set MAVEN_PROJECTBASEDIR=%WDIR%
 | 
				
			||||||
 | 
					cd "%EXEC_DIR%"
 | 
				
			||||||
 | 
					goto endDetectBaseDir
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:baseDirNotFound
 | 
				
			||||||
 | 
					set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
 | 
				
			||||||
 | 
					cd "%EXEC_DIR%"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:endDetectBaseDir
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@setlocal EnableExtensions EnableDelayedExpansion
 | 
				
			||||||
 | 
					for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
 | 
				
			||||||
 | 
					@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:endReadAdditionalConfig
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
 | 
				
			||||||
 | 
					set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
 | 
				
			||||||
 | 
					set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
 | 
				
			||||||
 | 
					    IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
 | 
				
			||||||
 | 
					@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
 | 
				
			||||||
 | 
					if exist %WRAPPER_JAR% (
 | 
				
			||||||
 | 
					    if "%MVNW_VERBOSE%" == "true" (
 | 
				
			||||||
 | 
					        echo Found %WRAPPER_JAR%
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					) else (
 | 
				
			||||||
 | 
					    if not "%MVNW_REPOURL%" == "" (
 | 
				
			||||||
 | 
					        SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					    if "%MVNW_VERBOSE%" == "true" (
 | 
				
			||||||
 | 
					        echo Couldn't find %WRAPPER_JAR%, downloading it ...
 | 
				
			||||||
 | 
					        echo Downloading from: %DOWNLOAD_URL%
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    powershell -Command "&{"^
 | 
				
			||||||
 | 
							"$webclient = new-object System.Net.WebClient;"^
 | 
				
			||||||
 | 
							"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
 | 
				
			||||||
 | 
							"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
 | 
				
			||||||
 | 
							"}"^
 | 
				
			||||||
 | 
							"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
 | 
				
			||||||
 | 
							"}"
 | 
				
			||||||
 | 
					    if "%MVNW_VERBOSE%" == "true" (
 | 
				
			||||||
 | 
					        echo Finished downloading %WRAPPER_JAR%
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					@REM End of extension
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM Provide a "standardized" way to retrieve the CLI args that will
 | 
				
			||||||
 | 
					@REM work with both Windows and non-Windows executions.
 | 
				
			||||||
 | 
					set MAVEN_CMD_LINE_ARGS=%*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					%MAVEN_JAVA_EXE% ^
 | 
				
			||||||
 | 
					  %JVM_CONFIG_MAVEN_PROPS% ^
 | 
				
			||||||
 | 
					  %MAVEN_OPTS% ^
 | 
				
			||||||
 | 
					  %MAVEN_DEBUG_OPTS% ^
 | 
				
			||||||
 | 
					  -classpath %WRAPPER_JAR% ^
 | 
				
			||||||
 | 
					  "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
 | 
				
			||||||
 | 
					  %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
 | 
				
			||||||
 | 
					if ERRORLEVEL 1 goto error
 | 
				
			||||||
 | 
					goto end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:error
 | 
				
			||||||
 | 
					set ERROR_CODE=1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:end
 | 
				
			||||||
 | 
					@endlocal & set ERROR_CODE=%ERROR_CODE%
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost
 | 
				
			||||||
 | 
					@REM check for post script, once with legacy .bat ending and once with .cmd ending
 | 
				
			||||||
 | 
					if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat"
 | 
				
			||||||
 | 
					if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd"
 | 
				
			||||||
 | 
					:skipRcPost
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
 | 
				
			||||||
 | 
					if "%MAVEN_BATCH_PAUSE%"=="on" pause
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE%
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cmd /C exit /B %ERROR_CODE%
 | 
				
			||||||
							
								
								
									
										60
									
								
								pom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								pom.xml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,60 @@
 | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?>
 | 
				
			||||||
 | 
					<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 | 
				
			||||||
 | 
					         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
 | 
				
			||||||
 | 
					    <modelVersion>4.0.0</modelVersion>
 | 
				
			||||||
 | 
					    <parent>
 | 
				
			||||||
 | 
					        <groupId>org.springframework.boot</groupId>
 | 
				
			||||||
 | 
					        <artifactId>spring-boot-starter-parent</artifactId>
 | 
				
			||||||
 | 
					        <version>2.6.6</version>
 | 
				
			||||||
 | 
					        <relativePath/> <!-- lookup parent from repository -->
 | 
				
			||||||
 | 
					    </parent>
 | 
				
			||||||
 | 
					    <groupId>at.dergeorg.todoconfig</groupId>
 | 
				
			||||||
 | 
					    <artifactId>todo-configserver</artifactId>
 | 
				
			||||||
 | 
					    <version>0.0.1-SNAPSHOT</version>
 | 
				
			||||||
 | 
					    <name>todo-configserver</name>
 | 
				
			||||||
 | 
					    <description>todo-configserver</description>
 | 
				
			||||||
 | 
					    <properties>
 | 
				
			||||||
 | 
					        <java.version>11</java.version>
 | 
				
			||||||
 | 
					        <spring-cloud.version>2021.0.1</spring-cloud.version>
 | 
				
			||||||
 | 
					    </properties>
 | 
				
			||||||
 | 
					    <dependencies>
 | 
				
			||||||
 | 
					        <dependency>
 | 
				
			||||||
 | 
					            <groupId>org.springframework.cloud</groupId>
 | 
				
			||||||
 | 
					            <artifactId>spring-cloud-config-server</artifactId>
 | 
				
			||||||
 | 
					        </dependency>
 | 
				
			||||||
 | 
					        <dependency>
 | 
				
			||||||
 | 
					            <groupId>org.springframework.cloud</groupId>
 | 
				
			||||||
 | 
					            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
 | 
				
			||||||
 | 
					        </dependency>
 | 
				
			||||||
 | 
					        <dependency>
 | 
				
			||||||
 | 
					            <groupId>org.springframework.boot</groupId>
 | 
				
			||||||
 | 
					            <artifactId>spring-boot-starter-security</artifactId>
 | 
				
			||||||
 | 
					        </dependency>
 | 
				
			||||||
 | 
					        <dependency>
 | 
				
			||||||
 | 
					            <groupId>org.springframework.boot</groupId>
 | 
				
			||||||
 | 
					            <artifactId>spring-boot-starter-test</artifactId>
 | 
				
			||||||
 | 
					            <scope>test</scope>
 | 
				
			||||||
 | 
					        </dependency>
 | 
				
			||||||
 | 
					    </dependencies>
 | 
				
			||||||
 | 
					    <dependencyManagement>
 | 
				
			||||||
 | 
					        <dependencies>
 | 
				
			||||||
 | 
					            <dependency>
 | 
				
			||||||
 | 
					                <groupId>org.springframework.cloud</groupId>
 | 
				
			||||||
 | 
					                <artifactId>spring-cloud-dependencies</artifactId>
 | 
				
			||||||
 | 
					                <version>${spring-cloud.version}</version>
 | 
				
			||||||
 | 
					                <type>pom</type>
 | 
				
			||||||
 | 
					                <scope>import</scope>
 | 
				
			||||||
 | 
					            </dependency>
 | 
				
			||||||
 | 
					        </dependencies>
 | 
				
			||||||
 | 
					    </dependencyManagement>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <build>
 | 
				
			||||||
 | 
					        <plugins>
 | 
				
			||||||
 | 
					            <plugin>
 | 
				
			||||||
 | 
					                <groupId>org.springframework.boot</groupId>
 | 
				
			||||||
 | 
					                <artifactId>spring-boot-maven-plugin</artifactId>
 | 
				
			||||||
 | 
					            </plugin>
 | 
				
			||||||
 | 
					        </plugins>
 | 
				
			||||||
 | 
					    </build>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</project>
 | 
				
			||||||
@@ -0,0 +1,17 @@
 | 
				
			|||||||
 | 
					package at.dergeorg.todoconfig.todoconfigserver;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.springframework.boot.SpringApplication;
 | 
				
			||||||
 | 
					import org.springframework.boot.autoconfigure.SpringBootApplication;
 | 
				
			||||||
 | 
					import org.springframework.cloud.config.server.EnableConfigServer;
 | 
				
			||||||
 | 
					import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@EnableConfigServer
 | 
				
			||||||
 | 
					@SpringBootApplication
 | 
				
			||||||
 | 
					@EnableEurekaClient
 | 
				
			||||||
 | 
					public class TodoConfigserverApplication {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static void main(String[] args) {
 | 
				
			||||||
 | 
					        SpringApplication.run(TodoConfigserverApplication.class, args);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										32
									
								
								src/main/resources/application.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								src/main/resources/application.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,32 @@
 | 
				
			|||||||
 | 
					server:
 | 
				
			||||||
 | 
					    port: ${CONFIGPORT:1111}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					encrypt:
 | 
				
			||||||
 | 
					    key: ${KEY:mysuperkey}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					spring:
 | 
				
			||||||
 | 
					    application:
 | 
				
			||||||
 | 
					        name: todo-config
 | 
				
			||||||
 | 
					    security:
 | 
				
			||||||
 | 
					        user:
 | 
				
			||||||
 | 
					            name: admin
 | 
				
			||||||
 | 
					            password: '{cipher}367f874ef1761f9fb5dd7da7dbe66ea1211a51e45153dfcd3ae58e68f4adfc33'
 | 
				
			||||||
 | 
					    profiles:
 | 
				
			||||||
 | 
					        active: native
 | 
				
			||||||
 | 
					    cloud:
 | 
				
			||||||
 | 
					        config:
 | 
				
			||||||
 | 
					            server:
 | 
				
			||||||
 | 
					                native:
 | 
				
			||||||
 | 
					                    search-locations: classpath:configs
 | 
				
			||||||
 | 
					                encrypt:
 | 
				
			||||||
 | 
					                    enabled: false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					eureka:
 | 
				
			||||||
 | 
					    client:
 | 
				
			||||||
 | 
					        service-url:
 | 
				
			||||||
 | 
					            defaultZone: http://${HOSTNAME:localhost}:${EUREKAPORT:8761}/eureka
 | 
				
			||||||
 | 
					    instance:
 | 
				
			||||||
 | 
					        ip-address: ${HOSTNAME:localhost}
 | 
				
			||||||
 | 
					        hostname: ${HOSTNAME:localhost}
 | 
				
			||||||
 | 
					        instance-id: ${spring.application.name}:${random.value}
 | 
				
			||||||
 | 
					    prefer-ip-address: true
 | 
				
			||||||
							
								
								
									
										15
									
								
								src/main/resources/configs/todo-service.yaml.example
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								src/main/resources/configs/todo-service.yaml.example
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					server:
 | 
				
			||||||
 | 
					  port: 2222
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					spring:
 | 
				
			||||||
 | 
					  jpa:
 | 
				
			||||||
 | 
					    hibernate:
 | 
				
			||||||
 | 
					      ddl-auto: update
 | 
				
			||||||
 | 
					  datasource:
 | 
				
			||||||
 | 
					    url: jdbc:mariadb://<MY IP>/<DB>
 | 
				
			||||||
 | 
					    username: <MY USERNAME>
 | 
				
			||||||
 | 
					    password: '<MY PASSWORD>'
 | 
				
			||||||
 | 
					    driver-class-name: org.mariadb.jdbc.Driver
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -0,0 +1,13 @@
 | 
				
			|||||||
 | 
					package at.dergeorg.todoconfig.todoconfigserver;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.junit.jupiter.api.Test;
 | 
				
			||||||
 | 
					import org.springframework.boot.test.context.SpringBootTest;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@SpringBootTest
 | 
				
			||||||
 | 
					class TodoConfigserverApplicationTests {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Test
 | 
				
			||||||
 | 
					    void contextLoads() {
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Reference in New Issue
	
	Block a user