63 lines
No EOL
1.6 KiB
YAML
63 lines
No EOL
1.6 KiB
YAML
name: Build Laravel Container
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- 'laravel/**'
|
|
pull_request:
|
|
branches:
|
|
- '!dependabot/**'
|
|
workflow_run:
|
|
workflows:
|
|
- Build PHP Vanity Tags
|
|
branches: [ 'master', 'feature/**' ]
|
|
types:
|
|
- completed
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
name: "Bake Laravel Container"
|
|
runs-on: self-hosted
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
version:
|
|
- "8.0"
|
|
- "8.1"
|
|
- "8.2"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: docker/setup-qemu-action@v2
|
|
- uses: docker/setup-buildx-action@v2
|
|
- uses: docker/login-action@v2
|
|
name: Login to Docker Hub
|
|
with:
|
|
username: ${{ secrets.DOCKER_HUB_USERNAME }}
|
|
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
|
- uses: docker/build-push-action@v3
|
|
name: Build & Push
|
|
with:
|
|
context: laravel
|
|
platforms: linux/amd64,linux/arm64
|
|
pull: true
|
|
push: true
|
|
build-args: |
|
|
PHP_VERSION=${{ matrix.version }}
|
|
tags: |
|
|
matthewbaggett/laravel:${{ matrix.version }}
|
|
|
|
latest:
|
|
name: "Bake Laravel Container"
|
|
runs-on: self-hosted
|
|
needs: [ build ]
|
|
steps:
|
|
- uses: docker/login-action@v2
|
|
name: Login to Docker Hub
|
|
with:
|
|
username: ${{ secrets.DOCKER_HUB_USERNAME }}
|
|
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
|
- run: |
|
|
docker pull matthewbaggett/laravel:8.2
|
|
docker tag matthewbaggett/laravel:8.2 matthewbaggett/laravel:latest
|
|
docker push matthewbaggett/laravel:latest |