Skip to content

[CI] Setup CI for v11.x branch to be enable to do 11.x releases #1253

[CI] Setup CI for v11.x branch to be enable to do 11.x releases

[CI] Setup CI for v11.x branch to be enable to do 11.x releases #1253

Workflow file for this run

name: Acceptance Tests
on:
pull_request:
branches:
- "**"
push:
branches:
- "v11.x"
jobs:
Acceptance:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
typo3: [ ^10.4, ^11.5 ]
php: [ '7.4' ]
include:
- typo3: ^11.5
php: '8.0'
- typo3: ^11.5
php: '8.1'
steps:
- name: Get branch name (merge)
if: github.event_name != 'pull_request'
shell: bash
run: echo "BRANCH_NAME=$(echo ${GITHUB_REF#refs/heads/} | tr / -)" >> $GITHUB_ENV
- name: Get branch name (pull request)
if: github.event_name == 'pull_request'
shell: bash
run: echo "BRANCH_NAME=$(echo ${GITHUB_HEAD_REF})" >> $GITHUB_ENV
- uses: shivammathur/setup-php@v2
with:
php-version: '7.4'
- name: Version information
run: |
php -v
composer --version
- uses: actions/checkout@v1
- uses: jonaseberle/github-action-setup-ddev@v1
with:
ddevDir: ".devbox"
- name: CodeCeption
run: |
export FROM_PATH='../../'
export TO_PATH=$(echo $GITHUB_WORKSPACE)
cd .devbox
sed -i 's/php_version: "7.4"/php_version: "${{ matrix.php }}"/g' .ddev/config.yaml
sed -i "s|$FROM_PATH|$TO_PATH|g" .ddev/docker-compose.volume.yaml
rm -rf vendor composer.lock
ddev composer require nimut/typo3-complete=${{ matrix.typo3 }}
ddev start
ddev exec sudo apt remove -y php${{ matrix.php }}-uploadprogress
ddev exec bin/typo3cms install:fixfolderstructure
ddev exec bin/typo3cms install:extensionsetupifpossible
ddev exec bin/typo3cms database:updateschema
ddev exec bin/typo3cms cache:flush
cd .. # Going back to "root" directory
rm -rf .Build composer.lock
composer require nimut/typo3-complete=${{ matrix.typo3 }}
wget https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh
chmod +x wait-for-it.sh
docker ps
./wait-for-it.sh -t 60 127.0.0.1:80
./wait-for-it.sh -t 60 127.0.0.1:443
./wait-for-it.sh -t 60 localhost:4444
php .Build/bin/codecept run
- name: Database Dump
if: ${{ failure() }}
run: |
cd .devbox
ddev export-db --gzip=false --file=../Tests/Acceptance/_output/db.sql
- name: Upload Codeception output
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with:
name: codeception-results
path: Tests/Acceptance/_output/
- uses: shallwefootball/s3-upload-action@master
if: ${{ failure() }}
with:
aws_key_id: ${{ secrets.AWS_KEY_ID }}
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
aws_bucket: ${{ secrets.AWS_BUCKET }}
source_dir: 'Tests/Acceptance/_output/'
destination_dir: '${{ matrix.typo3 }}-${{ matrix.php }}'
NonComposer:
runs-on: self-hosted
strategy:
fail-fast: false
matrix:
typo3: [ 'v10', 'v11', 'v11p80' ]
steps:
- uses: shivammathur/setup-php@v2
with:
php-version: '7.4'
tools: composer:v2
- name: Version information
run: |
php -v
composer --version
- uses: actions/checkout@v1
- run: |
cd .devbox/.ddev
docker-compose -f docker-compose.selenium.yaml up -d
cd ../.. # Going back to "root" directory
rm -rf .Build composer.lock
composer require nimut/typo3-complete:^11.5
wget https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh
chmod +x wait-for-it.sh
docker ps
./wait-for-it.sh -t 60 localhost:4444
php .Build/bin/codecept run --env=${{ matrix.typo3 }}-non-composer
- name: Upload Codeception output
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with:
name: codeception-results
path: Tests/Acceptance/_output/
- uses: shallwefootball/s3-upload-action@master
if: ${{ failure() }}
with:
aws_key_id: ${{ secrets.AWS_KEY_ID }}
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
aws_bucket: ${{ secrets.AWS_BUCKET }}
source_dir: 'Tests/Acceptance/_output/'
destination_dir: '${{ matrix.typo3 }}-non-composer'