mirror of
https://github.com/esauflores/toolbox.git
synced 2026-03-09 21:03:59 +00:00
56 lines
1.2 KiB
YAML
56 lines
1.2 KiB
YAML
name: Build and Push to Personal Registry
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- v*
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- name: Install mise
|
|
run: |
|
|
curl https://mise.run | sh
|
|
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
|
echo "$HOME/.local/share/mise/shims" >> $GITHUB_PATH
|
|
|
|
- name: Install tools via mise
|
|
run: mise install
|
|
|
|
- name: Setup environment
|
|
run: just setup
|
|
|
|
- name: Run tests
|
|
run: just test
|
|
|
|
|
|
build-and-push:
|
|
needs: test
|
|
runs-on: ubuntu-latest
|
|
|
|
env:
|
|
IMAGE: ${{ secrets.REGISTRY_URL }}/dev-tools
|
|
VERSION: ${{ github.ref_name }}
|
|
DOCKER_BUILDKIT: 1
|
|
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- name: Login to registry
|
|
uses: docker/login-action@v4
|
|
with:
|
|
registry: ${{ secrets.REGISTRY_URL }}
|
|
username: ${{ secrets.REGISTRY_USERNAME }}
|
|
password: ${{ secrets.REGISTRY_PASSWORD }}
|
|
|
|
- name: Build and push image
|
|
run: |
|
|
IMAGE_TAG="$IMAGE:$VERSION"
|
|
docker build -t "$IMAGE_TAG" -t "$IMAGE:latest" .
|
|
docker push "$IMAGE_TAG"
|
|
docker push "$IMAGE:latest"
|