name: Docker Images on: push: branches: [main] paths: - 'src/food-market.api/**' - 'src/food-market.web/**' - 'src/food-market.application/**' - 'src/food-market.domain/**' - 'src/food-market.infrastructure/**' - 'src/food-market.shared/**' - 'deploy/**' - '.forgejo/workflows/docker.yml' workflow_dispatch: env: LOCAL_REGISTRY: 127.0.0.1:5001 jobs: api: name: API image runs-on: [self-hosted, linux] steps: - uses: actions/checkout@v4 - name: Build + push api env: SHA: ${{ github.sha }} run: | docker build -f deploy/Dockerfile.api \ -t $LOCAL_REGISTRY/food-market-api:$SHA \ -t $LOCAL_REGISTRY/food-market-api:latest . for tag in $SHA latest; do docker push $LOCAL_REGISTRY/food-market-api:$tag done web: name: Web image runs-on: [self-hosted, linux] steps: - uses: actions/checkout@v4 - name: Build + push web env: SHA: ${{ github.sha }} run: | docker build -f deploy/Dockerfile.web \ -t $LOCAL_REGISTRY/food-market-web:$SHA \ -t $LOCAL_REGISTRY/food-market-web:latest . for tag in $SHA latest; do docker push $LOCAL_REGISTRY/food-market-web:$tag done