Switch build to distributed config; universal Dockerfile
This commit is contained in:
		
							parent
							
								
									a0367df667
								
							
						
					
					
						commit
						129e3e305a
					
				
					 3 changed files with 61 additions and 11 deletions
				
			
		|  | @ -1,3 +1,7 @@ | ||||||
|  | # On pushing to master branch, build and push docker images with tags | ||||||
|  | # - latest | ||||||
|  | # - shorted SHA | ||||||
|  | 
 | ||||||
| name: latest | name: latest | ||||||
| 
 | 
 | ||||||
| on: | on: | ||||||
|  | @ -25,25 +29,38 @@ jobs: | ||||||
|   #         MYSQL_ROOT_PASSWORD: somePW |   #         MYSQL_ROOT_PASSWORD: somePW | ||||||
|   #         MYSQL_ALLOW_EMPTY_PASSWORD: yes |   #         MYSQL_ALLOW_EMPTY_PASSWORD: yes | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
|   build: |   build: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout repository |       -  | ||||||
|  |         name: Get short SHA | ||||||
|  |         uses: benjlevesque/short-sha@v1.2 | ||||||
|  |         id: short-sha | ||||||
|  |       -  | ||||||
|  |         name: Store short SHA as environment variable | ||||||
|  |         run: echo $SHA | ||||||
|  |         env:  | ||||||
|  |           SHA: ${{ steps.short-sha.outputs.sha }} | ||||||
|  |       -  | ||||||
|  |         name: Checkout repository | ||||||
|         uses: actions/checkout@v2 |         uses: actions/checkout@v2 | ||||||
|       - name: Set up JDK11 |       -  | ||||||
|  |         name: Set up JDK11 | ||||||
|         uses: actions/setup-java@v1 |         uses: actions/setup-java@v1 | ||||||
|         with: |         with: | ||||||
|           java-version: 11 |           java-version: 11 | ||||||
|       - name: Cache Maven packages |       -  | ||||||
|  |         name: Cache Maven packages | ||||||
|         uses: actions/cache@v2 |         uses: actions/cache@v2 | ||||||
|         with: |         with: | ||||||
|           path: ~/.m2 |           path: ~/.m2 | ||||||
|           key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} |           key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} | ||||||
|           restore-keys: ${{ runner.os }}-m2 |           restore-keys: ${{ runner.os }}-m2 | ||||||
|       - name: Build with maven |       -  | ||||||
|         run: mvn clean package -DskipTests -Dbuild-version="demo" |         name: Build with maven | ||||||
|       - uses: actions/upload-artifact@v2 |         run: mvn clean package -DskipTests -Dbuild-version="${{ env.SHA }}" | ||||||
|  |       -  | ||||||
|  |         uses: actions/upload-artifact@v2 | ||||||
|         with: |         with: | ||||||
|           name: Package |           name: Package | ||||||
|           path: target/seb-server-demo.jar |           path: target/seb-server-demo.jar | ||||||
|  | @ -86,8 +103,8 @@ jobs: | ||||||
|         uses: docker/build-push-action@v2 |         uses: docker/build-push-action@v2 | ||||||
|         with: |         with: | ||||||
|           context: . |           context: . | ||||||
|           file: ./docker/demo/Dockerfile |           file: ./docker/testing/distributed/sebuniversal.Dockerfile | ||||||
|           push: true |           push: true | ||||||
|           tags: | |           tags: | | ||||||
|             bengig/seb-server:demo |             bengig/seb-server:latest | ||||||
|             bengig/seb-server:${{ github.sha }} |             bengig/seb-server:${{ env.SHA }} | ||||||
|  | @ -8,7 +8,7 @@ ENV SERVER_PWD=somePW | ||||||
| RUN groupadd --system spring && useradd --system --gid spring spring | RUN groupadd --system spring && useradd --system --gid spring spring | ||||||
| 
 | 
 | ||||||
| # TODO: this shouldn't be necessary, log to stdout instead | # TODO: this shouldn't be necessary, log to stdout instead | ||||||
| RUN mkdir -p /sebserver/log && touch /sebserver/log/sebserver.log && chown -R spring:spring /sebserver/log | # RUN mkdir -p /sebserver/log && touch /sebserver/log/sebserver.log && chown -R spring:spring /sebserver/log | ||||||
| 
 | 
 | ||||||
| USER spring:spring | USER spring:spring | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										33
									
								
								docker/testing/distributed/sebuniversal.Dockerfile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								docker/testing/distributed/sebuniversal.Dockerfile
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,33 @@ | ||||||
|  | FROM openjdk:11-jre-stretch | ||||||
|  | 
 | ||||||
|  | ENV SEBSERVER_MODE="webservice" | ||||||
|  | ENV SERVER_PORT="8080" | ||||||
|  | ENV SECRET=somePW | ||||||
|  | 
 | ||||||
|  | RUN groupadd --system spring && useradd --system --gid spring spring | ||||||
|  | USER spring:spring | ||||||
|  | 
 | ||||||
|  | COPY docker/testing/distributed/webservice/config/ /sebserver/config/ | ||||||
|  | COPY  /sebserver/target/seb-server.jar /sebserver/seb-server.jar | ||||||
|  | 
 | ||||||
|  | WORKDIR /sebserver | ||||||
|  | 
 | ||||||
|  | CMD if [ ${SEBSERVER_MODE} == "gui" ]; then exec java \ | ||||||
|  |     -Xms64M \ | ||||||
|  |     -Xmx1G \ | ||||||
|  |     -jar "seb-server.jar" \ | ||||||
|  |     --spring.profiles.active=gui,prod,prod-gui \ | ||||||
|  |     --spring.config.location=file:/sebserver/config/spring/,classpath:/config/ \ | ||||||
|  |     --sebserver.password="${SECRET}" ; \ | ||||||
|  |     else \ | ||||||
|  |     exec java \ | ||||||
|  |     -Xms64M \ | ||||||
|  |     -Xmx1G \ | ||||||
|  |     -jar "${SEBSERVER_JAR}" \ | ||||||
|  |     --spring.profiles.active=ws,prod,prod-ws \ | ||||||
|  |     --spring.config.location=file:/sebserver/config/spring/,classpath:/config/ \ | ||||||
|  |     --sebserver.mariadb.password="${SECRET}" \ | ||||||
|  |     --sebserver.password="${SECRET}" ; \ | ||||||
|  |     fi; | ||||||
|  | 
 | ||||||
|  | EXPOSE 8080 | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Bengt Giger
						Bengt Giger