Skip to content

CI

CI #1559

Workflow file for this run

name: CI
on:
push:
branches:
- master
tags:
- '*'
pull_request:
branches:
- master
schedule:
- cron: '0 7 * * *'
jobs:
build:
name: 'PHP ${{ matrix.php }}, TYPO3 ${{ matrix.typo3 }}, Elasticsearch ${{ matrix.elasticsearch }}'
runs-on: ubuntu-latest
strategy:
matrix:
php:
- '8.1'
- '8.2'
- '8.3'
typo3:
- '^11.5'
- '^12.4'
elasticsearch:
- '7.17.22'
steps:
- uses: actions/checkout@v4
- name: Build
env:
PHP_VERSION: ${{matrix.php}}
TYPO3_VERSION: ${{matrix.typo3}}
ELASTICSEARCH_VERSION: ${{matrix.elasticsearch}}
run: docker compose run --rm app composer build
- name: Cleanup
if: ${{ always() }}
run: docker compose down --volumes
release-ter:
name: TYPO3 TER release
if: startsWith(github.ref, 'refs/tags/')
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check tag
run: |
if ! [[ ${{ github.ref }} =~ ^refs/tags/[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$ ]]; then
exit 1
fi
- name: Get version
id: get-version
run: echo "version=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV
- name: Print version
run: echo ${{ env.version }}
- name: Deploy to TER
env:
TYPO3_API_TOKEN: ${{secrets.TYPO3_API_TOKEN}}
TYPO3_API_USERNAME: ${{secrets.TYPO3_API_USERNAME}}
TYPO3_API_PASSWORD: ${{secrets.TYPO3_API_PASSWORD}}
TAG: ${{env.version}}
run: docker compose run --rm app composer deploy:ter