44 lines
1.3 KiB
YAML
44 lines
1.3 KiB
YAML
name: Build Docker Image
|
|
|
|
on:
|
|
schedule:
|
|
- cron: '0 1 * * 0'
|
|
push:
|
|
tags: [ 'v*.*.*' ]
|
|
|
|
env:
|
|
PHP_EXTENSION_INSTALL_VERSION: 'latest'
|
|
COMPOSER_VERSION: 'latest'
|
|
|
|
jobs:
|
|
build:
|
|
name: Build PHP ${{ matrix.php-version }}
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
PHP_CLI_VERSION: ${{ matrix.php-version }}-cli-alpine
|
|
strategy:
|
|
matrix:
|
|
os: [ ubuntu-latest ]
|
|
php-version: [ '7.4', '8.0', '8.1', '8.2' ]
|
|
max-parallel: 8
|
|
steps:
|
|
- name: Login to Docker Hub
|
|
# https://github.com/docker/login-action#docker-hub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_ACCESSTOKEN }}
|
|
|
|
- name: Build and push
|
|
# https://github.com/docker/build-push-action
|
|
uses: docker/build-push-action@v4
|
|
with:
|
|
build-args: |
|
|
PHP_CLI_VERSION=${{ env.PHP_CLI_VERSION }}
|
|
PHP_EXTENSION_INSTALL_VERSION=${{ env.PHP_EXTENSION_INSTALL_VERSION }}
|
|
COMPOSER_VERSION=${{ env.COMPOSER_VERSION }}
|
|
push: true
|
|
tags: |
|
|
${{ secrets.DOCKER_USERNAME }}/docker-webman:${{ env.PHP_CLI_VERSION }}
|
|
${{ secrets.DOCKER_USERNAME }}/docker-webman:${{ env.PHP_CLI_VERSION }}${{ github.ref_type == 'tag' && format('-{0}', github.ref_name) || '' }}
|