From 114167c0822f35b738d13699e15a7f2a1c292391 Mon Sep 17 00:00:00 2001 From: Omeir Fawaz <54888682+omeiirr@users.noreply.github.com> Date: Mon, 28 Aug 2023 14:22:15 +0530 Subject: [PATCH 1/6] add acknowldegement for contributor: Omeir --- src/main/resources/banner.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/banner.txt b/src/main/resources/banner.txt index 6225d12..b40b380 100644 --- a/src/main/resources/banner.txt +++ b/src/main/resources/banner.txt @@ -12,4 +12,4 @@ ==================================================================/_/_/_/ :: Built with Spring Boot :: ${spring-boot.version} - +Created by Omeir Fawaz [Omeir.Fawaz@shell.com] From bc934e887b9b9faa6917061266311a20e53f20f5 Mon Sep 17 00:00:00 2001 From: Omeir Fawaz <54888682+omeiirr@users.noreply.github.com> Date: Mon, 28 Aug 2023 16:15:19 +0530 Subject: [PATCH 2/6] create Dockerfile --- Dockerfile | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4812d06 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,5 @@ +FROM openjdk:17.0.2-slim +EXPOSE 80 +ARG JAR=target/spring-petclinic-3.1.0-SNAPSHOT.jar +COPY $JAR /app.jar +ENTRYPOINT ["java", "-jar", "/app.jar"] \ No newline at end of file From 77fb1b9bbf92553cbd6c8f5f94719dd5e16fb6ed Mon Sep 17 00:00:00 2001 From: Omeir Fawaz <54888682+omeiirr@users.noreply.github.com> Date: Mon, 28 Aug 2023 16:23:17 +0530 Subject: [PATCH 3/6] Create main.yml for automated Docker publication --- .github/workflows/main.yml | 52 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..aab8e52 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,52 @@ +name: Azure Web App Container Automated Deployment + +on: + push: + branches: + - main + - automated-deployment + +jobs: + build-and-deploy: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + cache: maven + + # - name: Skip TEST Maven + # run: mvn install -Dmaven.test.skip=true + + - name: Build with Maven + run: mvn -B package --file pom.xml + + - name: Set up Docker + uses: azure/docker-login@v1 + with: + login-server: https://hub.docker.com/ + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + # - name: Build and push Docker image + # run: | + # docker build -t deepansha14/shell-java-app:0.0.1.Release . + # docker push deepansha14/shell-java-app:0.0.1.Release + + - name: Build Docker Image + run: docker build -t omeiirr/shell-casestudy:latest . + + - name: Login to Docker Hub + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Push Docker Image + run: docker push omeiirr/shell-casestudy:latest \ No newline at end of file From 9c94ef91e28dcd745b03c610db4b747480e69cb1 Mon Sep 17 00:00:00 2001 From: Omeir Fawaz <54888682+omeiirr@users.noreply.github.com> Date: Mon, 28 Aug 2023 19:34:52 +0530 Subject: [PATCH 4/6] update main.yml for deployment --- .github/workflows/main.yml | 74 ++++++++++++++++---------------------- 1 file changed, 30 insertions(+), 44 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index aab8e52..11b02fc 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,52 +1,38 @@ -name: Azure Web App Container Automated Deployment +name: Java CI with Maven on: push: - branches: - - main - - automated-deployment + branches: [ "main" ] + pull_request: + branches: [ "main" ] jobs: - build-and-deploy: + build: + runs-on: ubuntu-latest steps: - - name: Checkout code - uses: actions/checkout@v2 - - - name: Set up JDK 17 - uses: actions/setup-java@v3 - with: - java-version: '17' - distribution: 'temurin' - cache: maven - - # - name: Skip TEST Maven - # run: mvn install -Dmaven.test.skip=true - - - name: Build with Maven - run: mvn -B package --file pom.xml - - - name: Set up Docker - uses: azure/docker-login@v1 - with: - login-server: https://hub.docker.com/ - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} - - # - name: Build and push Docker image - # run: | - # docker build -t deepansha14/shell-java-app:0.0.1.Release . - # docker push deepansha14/shell-java-app:0.0.1.Release - - - name: Build Docker Image - run: docker build -t omeiirr/shell-casestudy:latest . - - - name: Login to Docker Hub - uses: docker/login-action@v1 - with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} - - - name: Push Docker Image - run: docker push omeiirr/shell-casestudy:latest \ No newline at end of file + - uses: actions/checkout@v3 + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + cache: maven + - name: Build with Maven + run: mvn clean install -DskipTests --file pom.xml + + - name: Build Docker Image + run: docker build -t omeiirr/shell-casestudy:latest . + + - name: Login to Docker Hub + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Push Docker Image + run: docker push omeiirr/shell-casestudy:latest + + - name: Deploy to Prod Environment + run: docker run -p 5000:5000 omeiirr/shell-casestudy:latest \ No newline at end of file From b755e5320209e353537a4022dbb7750ac9ca695c Mon Sep 17 00:00:00 2001 From: Omeir Fawaz <54888682+omeiirr@users.noreply.github.com> Date: Mon, 28 Aug 2023 19:35:51 +0530 Subject: [PATCH 5/6] trigger CI/CD for automated-deployment branch --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 11b02fc..dbfefe5 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -2,7 +2,7 @@ name: Java CI with Maven on: push: - branches: [ "main" ] + branches: [ "main", "automated-deployment" ] pull_request: branches: [ "main" ] From 88c173e390872ceff0ef02f2d700a9f8bbf3cb78 Mon Sep 17 00:00:00 2001 From: Omeir Fawaz <54888682+omeiirr@users.noreply.github.com> Date: Mon, 28 Aug 2023 19:57:22 +0530 Subject: [PATCH 6/6] Update main.yml --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index dbfefe5..cf58d91 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -34,5 +34,5 @@ jobs: - name: Push Docker Image run: docker push omeiirr/shell-casestudy:latest - - name: Deploy to Prod Environment - run: docker run -p 5000:5000 omeiirr/shell-casestudy:latest \ No newline at end of file + # - name: Deploy to Prod Environment + # run: docker run -p 5000:5000 omeiirr/shell-casestudy:latest