diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 7152575..60857ec 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -1,59 +1,65 @@ name: Spring App CI - -on: +'on': push: branches: - main - jobs: build-jar: runs-on: ubuntu-22.04 steps: - name: Checkout uses: actions/checkout@v4 - - name: Set up JDK 17 uses: actions/setup-java@v2 with: java-version: '17' - distribution: 'adopt' - + distribution: adopt - name: Grant execute permission for mvnw run: chmod +x ./mvnw - - name: Build .jar with Maven - run: ./mvnw package spring-boot:repackage - + run: './mvnw package spring-boot:repackage' + build-image: + runs-on: ubuntu-22.04 + steps: - name: Initialize Docker runtime - run: | + run: > apt-get update + apt-get install ca-certificates curl gnupg lsb-release -y + install -m 0755 -d /etc/apt/keyrings - curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg + + curl -fsSL https://download.docker.com/linux/debian/gpg | gpg + --dearmor -o /etc/apt/keyrings/docker.gpg + chmod a+r /etc/apt/keyrings/docker.gpg + echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null apt-get update - apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin -y - build-image: - runs-on: ubuntu-22.04 - steps: - - name: Build Docker image - run: docker build -t walzen665/spring-cicd-test:latest --build-arg="JAR_FILE=target/demo-0.0.1-SNAPSHOT-spring-boot.jar" . - - - name: Tag Docker image - run: docker tag walzen665/spring-cicd-test:latest git.walzen665.de/walzen665/spring-cicd-test:latest - - - name: Log in to Gitea Docker Registry - run: echo ${{ secrets.GITEAREGISTRYTOKEN }} | docker login -u ${{ secrets.GITEAREGISTRYUSERNAME }} --password-stdin https://git.walzen665.de + apt-get install docker-ce docker-ce-cli containerd.io + docker-buildx-plugin -y + - name: Build Docker image + run: >- + docker build -t walzen665/spring-cicd-test:latest + --build-arg="JAR_FILE=target/demo-0.0.1-SNAPSHOT-spring-boot.jar" . + - name: Tag Docker image + run: >- + docker tag walzen665/spring-cicd-test:latest + git.walzen665.de/walzen665/spring-cicd-test:latest + - name: Log in to Gitea Docker Registry + run: >- + echo ${{ secrets.GITEAREGISTRYTOKEN }} | docker login -u ${{ + secrets.GITEAREGISTRYUSERNAME }} --password-stdin + https://git.walzen665.de push-image: - runs-on: ubuntu-22.04 - steps: + runs-on: ubuntu-22.04 + steps: - name: Push Docker Image to Gitea - run: docker push git.walzen665.de/walzen665/spring-cicd-test:latest + run: 'docker push git.walzen665.de/walzen665/spring-cicd-test:latest' collect-artifacts: runs-on: ubuntu-22.04 steps: @@ -61,4 +67,4 @@ jobs: uses: actions/upload-artifact@v3 with: name: artifacts - path: target/*.jar \ No newline at end of file + path: target/*.jar