Files
Dominik Polakovics 9720b9328e
Some checks failed
Build / build (push) Successful in 4m16s
Build / deploy-stage (push) Successful in 3m42s
Build / switch-stage (push) Failing after 2m17s
Build / deploy-production (push) Successful in 3m56s
fix: change to apt-get and change cache:flush to release from current, to work on first release
2025-06-26 11:55:16 +02:00

130 lines
3.5 KiB
YAML

name: Build
on:
push:
branches: [ 'main' ]
paths-ignore:
- '**.md'
- '.gitea/workflows/release.yml'
- 'renovate.json'
workflow_dispatch:
env:
PHP_VERSION: '8.3' # set this to the PHP version to use
COMPOSER_ALLOW_SUPERUSER: 1
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@7c0b4c8c8ebed23eca9ec2802474895d105b11bc
with:
php-version: ${{ env.PHP_VERSION }}
- name: Run composer install if composer.json exists
run: |
composer validate --no-check-publish && composer install --prefer-dist --no-progress --ignore-platform-reqs
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '16'
- name: Install dependencies
run: npm install
- name: Build CSS
run: npm run build:css
- name: Create Artifact
run: tar -czf typo3.tar.gz bin public packages config vendor build composer.json composer.lock
- uses: actions/upload-artifact@v3
with:
name: typo3
path: typo3.tar.gz
deploy-stage:
needs: build
runs-on: ubuntu-latest
steps:
- name: Setup PHP
uses: shivammathur/setup-php@7c0b4c8c8ebed23eca9ec2802474895d105b11bc
with:
php-version: ${{ env.PHP_VERSION }}
- uses: actions/download-artifact@v3
with:
name: typo3
- name: Extract artifact
run: |
tar xf typo3.tar.gz
rm typo3.tar.gz
- name: Install ssh agent and rsync
run: |
apt-get update
apt-get install -y openssh-client rsync
- name: Upload release
uses: deployphp/action@v1
with:
deployer-binary: "./bin/dep"
dep: --file=./build/deploy.php release:create stage
private-key: ${{secrets.STAGE_KEY}}
switch-stage:
needs: deploy-stage
runs-on: ubuntu-latest
steps:
- name: Setup PHP
uses: shivammathur/setup-php@7c0b4c8c8ebed23eca9ec2802474895d105b11bc
with:
php-version: ${{ env.PHP_VERSION }}
- uses: actions/download-artifact@v3
with:
name: typo3
- name: Extract artifact
run: |
tar xf typo3.tar.gz
rm typo3.tar.gz
- name: Install ssh agent and rsync
run: |
apt-get update
apt-get install -y openssh-client rsync
- name: Switch to release
uses: deployphp/action@v1
with:
deployer-binary: "./bin/dep"
dep: --file=./build/deploy.php release:switch stage
private-key: ${{secrets.STAGE_KEY}}
deploy-production:
needs: build
runs-on: ubuntu-latest
steps:
- name: Setup PHP
uses: shivammathur/setup-php@7c0b4c8c8ebed23eca9ec2802474895d105b11bc
with:
php-version: ${{ env.PHP_VERSION }}
- uses: actions/download-artifact@v3
with:
name: typo3
- name: Extract artifact
run: |
tar xf typo3.tar.gz
rm typo3.tar.gz
- name: Install ssh agent and rsync
run: |
apt-get update
apt-get install -y openssh-client rsync
- name: Deploy
uses: deployphp/action@v1
with:
deployer-binary: "./bin/dep"
dep: --file=./build/deploy.php release:create production
private-key: ${{secrets.PROD_KEY}}