applicant-site/.gitea/workflows/php.yml

84 lines
2.2 KiB
YAML

name: Tests & Lint & Deploy to Railway
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
php-versions: [ '8.3' ]
node-version: ['20.x']
steps:
- uses: actions/checkout@v4
- name: Set up PHP ${{ matrix.php-versions }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
coverage: xdebug
extensions: :opcache, mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite
tools: composer:v2.6.6
ini-values: opcache.enable_cli=1, opcache.jit=tracing, opcache.jit_buffer_size=64M
env:
GITHUB_TOKEN: ${{ secrets.GITHUBTOKEN }}
debug: true
- name: PHP Security Checker
uses: StephaneBour/actions-php-security-checker@1.1
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Add keys
run: |
sudo curl -o ~/.composer/keys.tags.pub -sL https://composer.github.io/releases.pub
sudo curl -o ~/.composer/keys.dev.pub -sL https://composer.github.io/snapshots.pub
# - name: Diagnose composer
# env:
# COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH_JSON }} # only this works
# run: composer diagnose -vvv
- name: Install dependencies
env:
COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH_JSON }} # only this works
run: composer install # will work
- name: Setup project
run: make setup
- name: Check lint
run: make lint
- name: Check tests
run: make test
#
# deploy:
# needs: build
# runs-on: ubuntu-latest
# steps:
# - name: Checkout
# uses: appleboy/ssh-action@v1.0.3
#
# with:
# host: ${{ secrets.HOST }}
# username: ${{ secrets.USERNAME }}
# password: ${{ secrets.PASSWORD }}
# port: ${{ secrets.PORT }}
# script: |
# cd /var/www/test-testabit/
# git stash
# git pull --rebase
# git stash clear
# make setup-test