mirror of
https://github.com/Cacti/cacti.git
synced 2026-11-01 09:37:06 +09:00
* security(ci): constrain dependency installs and container build boundaries Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * fix(docker): retain shipped runtime libraries in build context Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * fix(tooling): quote gettext paths and honor Docker base selection Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * test(auth): use certificate expiry truth in rendering assertions Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * fix(tooling): finish Docker layer and regex scan findings Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * fix(ci): preserve documentation badge anchors without alternation Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * test(ci): preserve contributor badges and enforce Python coverage Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * ci: share changed-code coverage contracts and enforce shell policy Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * fix(ci): enforce private review files and run path regressions Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * test: measure changed gettext shell coverage Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> * test: pin coverage to the reviewed PR revision Signed-off-by: Thomas Vincent <thomasvincent@gmail.com> --------- Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>
110 lines
3.3 KiB
YAML
110 lines
3.3 KiB
YAML
name: Cookie Coverage
|
|
|
|
on:
|
|
push:
|
|
branches: [develop]
|
|
paths:
|
|
- '.github/workflows/cookie-coverage.yml'
|
|
- '.github/actions/setup-php-composer/**'
|
|
- 'auth_2fa.php'
|
|
- 'auth_changepassword.php'
|
|
- 'auth_login.php'
|
|
- 'composer.json'
|
|
- 'composer.lock'
|
|
- 'include/auth.php'
|
|
- 'include/global.php'
|
|
- 'include/js/jquery.zoom.js'
|
|
- 'include/js/js.storage.js'
|
|
- 'include/layout.js'
|
|
- 'include/themes/midwinter/main.js'
|
|
- 'lib/auth.php'
|
|
- 'lib/functions.php'
|
|
- 'logout.php'
|
|
- 'package.json'
|
|
- 'package-lock.json'
|
|
- 'tests/Helpers/AuthCookieProbe.php'
|
|
- 'tests/integration/AuthSystemRegressionIntegrationTest.php'
|
|
- 'tests/js/cookie_helpers.test.js'
|
|
- 'tests/Unit/Security/Session/CookiePolicyContractTest.php'
|
|
- 'tests/Unit/Security/Session/CookieRuntimeTest.php'
|
|
pull_request:
|
|
branches: [develop]
|
|
paths:
|
|
- '.github/workflows/cookie-coverage.yml'
|
|
- '.github/actions/setup-php-composer/**'
|
|
- 'auth_2fa.php'
|
|
- 'auth_changepassword.php'
|
|
- 'auth_login.php'
|
|
- 'composer.json'
|
|
- 'composer.lock'
|
|
- 'include/auth.php'
|
|
- 'include/global.php'
|
|
- 'include/js/jquery.zoom.js'
|
|
- 'include/js/js.storage.js'
|
|
- 'include/layout.js'
|
|
- 'include/themes/midwinter/main.js'
|
|
- 'lib/auth.php'
|
|
- 'lib/functions.php'
|
|
- 'logout.php'
|
|
- 'package.json'
|
|
- 'package-lock.json'
|
|
- 'tests/Helpers/AuthCookieProbe.php'
|
|
- 'tests/integration/AuthSystemRegressionIntegrationTest.php'
|
|
- 'tests/js/cookie_helpers.test.js'
|
|
- 'tests/Unit/Security/Session/CookiePolicyContractTest.php'
|
|
- 'tests/Unit/Security/Session/CookieRuntimeTest.php'
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: cookie-coverage-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
COMPOSER_ALLOW_SUPERUSER: 1
|
|
|
|
jobs:
|
|
coverage:
|
|
name: Cookie behavior matrix
|
|
runs-on: ubuntu-24.04
|
|
timeout-minutes: 15
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: Set up PHP and Cacti test dependencies
|
|
uses: ./.github/actions/setup-php-composer
|
|
with:
|
|
php-version: '8.4'
|
|
coverage: none
|
|
extensions: intl, mysql, gd, ldap, gmp, xml, curl, json, mbstring
|
|
dependency-mode: locked-tests
|
|
install-args: --prefer-dist --no-progress --no-interaction
|
|
|
|
- name: Setup Node 22
|
|
uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # 4.4.0
|
|
with:
|
|
node-version: '22'
|
|
cache: npm
|
|
|
|
- name: Install JavaScript dependencies
|
|
run: |
|
|
set -euo pipefail
|
|
npm ci --ignore-scripts
|
|
npm run postinstall --ignore-scripts
|
|
|
|
- name: Run PHP cookie matrix
|
|
run: >-
|
|
include/vendor/bin/pest --configuration=tests/phpunit.xml
|
|
tests/Unit/Security/Session/CookiePolicyContractTest.php
|
|
tests/Unit/Security/Session/CookieRuntimeTest.php
|
|
tests/integration/AuthSystemRegressionIntegrationTest.php
|
|
|
|
- name: Run browser cookie helpers
|
|
run: node --test tests/js/cookie_helpers.test.js
|