Skip to content

docker-template

docker-template #3

Workflow file for this run

name: docker-phalcon builder
on:
pull_request:
push:
branches:
- master
env:
IMAGE_NAME: fizzka/docker-phalcon
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php:
- 7.4
- "8.0"
- 8.1
# - 8.2
variant:
- "" # cli
- -fpm
os:
- ""
- -alpine
env:
PHP_VARIANT: ${{ matrix.php }}${{ matrix.variant }}${{ matrix.os }}
steps:
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
-
name: Build
uses: docker/build-push-action@v5
with:
load: true
file: Dockerfile${{ matrix.os }}
build-args:
PHP_VARIANT=${{ env.PHP_VARIANT }}
tags: ${{ env.IMAGE_NAME }}:${{ env.PHP_VARIANT }}-tesing
-
name: Test
run: docker run --rm ${{ env.IMAGE_NAME }}:${{ env.PHP_VARIANT }}-tesing sh -c "php -v; php --ri phalcon | grep -i ^version"
-
name: Login
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
if: github.event_name != 'pull_request'
uses: docker/build-push-action@v5
with:
push: true
context: "{{ defaultContext }}:${{ matrix.php }}/${{ matrix.os }}"
# platforms: linux/amd64,linux/arm64
tags: ${{ env.IMAGE_NAME }}:${{ env.PHP_VARIANT }}