name: sample gradle build and test run-name: Build started by $ {{gitea.actor}} on: push: branches: [test] jobs: build: runs-on: ubuntu-latest container: image: catthehacker/ubuntu:act-latest steps: - name: Check out repository code uses: actions/checkout@v4 with: fetch-depth: 0 - name: JDK setup uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: '17' - name: Get latest tag id: get_tag run: | export "VERSION=$(git describe --tags --abbrev=0)" echo "${VERSION}" export "MAJOR=$(echo ${VERSION} | /usr/bin/cut -d "." -f 1)" echo "MAJOR=${MAJOR}" export "MINOR=$(echo ${VERSION} | cut -d "." -f 2)" echo "MINOR=${MINOR}" export "PATCH=$(echo ${VERSION} | cut -d "." -f 3)" echo "PATCH=${PATCH}" - name: Increment version run: | export "NEW_VERSION=$(echo ${{ steps.get_tag.outputs.MAJOR }}.${{ steps.get_tag.outputs.MINOR }}.$( ${{ steps.get_tag.outputs.PATCH }} + 1) ) echo "NEW_VERSION=${NEW_VERSION}" - name: Extract commit message run: echo "COMMIT_MESSAGE=$(git log -1 --pretty=%B)" - name: Create and push tag run: | git tag -a ${NEW_VERSION} -m "${COMMIT_MESSAGE}" git push origin ${NEW_VERSION} - name: Log in to Gitea Docker Registry uses: docker/login-action@v3 with: registry: 'http://192.168.0.100:8928' username: hitanshu password: ${{ secrets.TOKEN }} - name: Gradle build run: ./gradlew bootBuildImage --imageName=192.168.0.100:8928/hithomelabs/cftunnels:${NEW_VERSION} - name: Tag image as test run: docker tag 192.168.0.100:8928/hithomelabs/cftunnels:${NEW_VERSION} 192.168.0.100:8928/hithomelabs/cftunnels:test - name: Push to Gitea Registry run: | docker push 192.168.0.100:8928/hithomelabs/cftunnels:test docker push 192.168.0.100:8928/hithomelabs/cftunnels:${NEW_VERSION}