CFTunnels/.gitea/workflows/test_image_build_push.yml

56 lines
2.0 KiB
YAML

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: Validate Gradle Wrapper
uses: gradle/actions/wrapper-validation@v3
- name: Check if cut is installed
run: echo $(which cut)
- name: Get latest tag
run: |
echo "VERSION=$(git describe --tags --abbrev=0)"
echo "${VERSION}"
echo "MAJOR=$(echo ${VERSION} | /usr/bin/cut -d "." -f 1)"
sudo echo "MINOR=$(echo ${VERSION} | cut -d "." -f 2)"
echo "PATCH=$(echo ${VERSION} | cut -d "." -f 3)"
- name: Increment version
run: |
PATCH=$((PATCH + 1))
echo "NEW_VERSION=$(echo $MAJOR.$MINOR.$PATCH)"
- 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}