Compare commits

..
3 Commits
Author SHA1 Message Date
aneurinandClaude Sonnet 5 16f94293ab Make the per-owner project cap configurable via env
CI / php-tests (pull_request) Successful in 19s
Self-hosters shouldn't be stuck with a hardcoded 100-project limit;
MAX_PROJECTS_PER_OWNER now controls it, defaulting to 0 (unlimited).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-05 09:34:08 +00:00
aneurinandClaude Sonnet 5 e59890618e Install Node in the CI job container before checkout
CI / php-tests (pull_request) Successful in 22s
actions/checkout is a JS action and needs a node binary on PATH; the
php:8.3-cli-alpine job container doesn't ship one, so checkout was
failing with "node: executable file not found in $PATH".

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-05 10:32:15 +01:00
aneurinandClaude Sonnet 5 6faf4a72df Add Gitea Actions workflow to run PHPUnit on pull requests
CI / php-tests (pull_request) Failing after 5s
Runs the backend test suite against PHP 8.3 for every PR targeting
main, so branch protection can require it to pass before merging.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-05 09:23:55 +01:00
+27
View File
@@ -0,0 +1,27 @@
name: CI
on:
pull_request:
branches: [main]
jobs:
php-tests:
runs-on: ubuntu-latest
container: php:8.3-cli-alpine
steps:
# actions/checkout is a JS action -- php:8.3-cli-alpine has no node on
# PATH by default, so install it (musl-native, no glibc/Alpine mismatch)
# before any step that needs it.
- name: Install Node
run: apk add --no-cache nodejs
- uses: actions/checkout@v4
- name: Install Composer
run: curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
- name: Install dependencies
run: composer install --no-progress --prefer-dist
- name: Run tests
run: vendor/bin/phpunit