Skip to content

chore: Enable full reusable quality workflow#689

Open
rubenvdlinde wants to merge 15 commits intodevelopmentfrom
fix/reusable-quality-workflow
Open

chore: Enable full reusable quality workflow#689
rubenvdlinde wants to merge 15 commits intodevelopmentfrom
fix/reusable-quality-workflow

Conversation

@rubenvdlinde
Copy link
Copy Markdown
Contributor

Summary

  • Enable all quality checks (Psalm, PHPStan, phpmetrics, ESLint, PHPUnit, SBOM) via reusable workflow
  • Remove standalone sbom.yml (now handled by quality workflow)
  • Add workflow_dispatch trigger
  • Add openregister as additional-app dependency

Test plan

  • Verify quality workflow runs all checks

Move docusaurus project files from docusaurus/ into docs/ alongside
content. Replace local documentation.yml and code-quality.yml with
centralized callers. Remove tests.yml.
…nector into development

# Conflicts:
#	docs/docusaurus.config.js
Enable all quality checks (Psalm, PHPStan, phpmetrics, ESLint, PHPUnit,
SBOM) via the reusable workflow. Remove standalone sbom.yml as it's now
handled by the quality workflow.
@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit fbbc9ef
Branch 689/merge
Event pull_request
Generated 2026-03-19 14:25 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23299627549

Summary

Group Result
PHP Quality FAIL
Vue Quality FAIL
Security FAIL
License FAIL
PHPUnit SKIP
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs FAIL
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint FAIL

Security

Ecosystem Result
composer PASS
npm FAIL

License Compliance

Ecosystem Result
composer PASS
npm FAIL

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (573 total)

Metric Count
Approved (allowlist) 572
Approved (override) 0
Denied 1

Denied packages

Package Version License
@fortawesome/free-solid-svg-icons 6.7.2 (CC-BY-4.0 AND MIT)

PHPUnit Tests

PHPUnit tests were not enabled for this run.

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

- Add .license-overrides.json for @fortawesome/free-solid-svg-icons (CC-BY-4.0 AND MIT)
- Add extensions=php to phpcs.xml to exclude JS/CSS files from PHP linting
- Disable no-descending-specificity in stylelint config and remove duplicate CSS selector
- Run npm audit fix to resolve critical security vulnerabilities
@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit 2ffc950
Branch 689/merge
Event pull_request
Generated 2026-03-19 14:48 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23300689185

Summary

Group Result
PHP Quality FAIL
Vue Quality PASS
Security PASS
License FAIL
PHPUnit SKIP
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs FAIL
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm FAIL

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 664
Approved (override) 1
Denied 1

Denied packages

Package Version License
apexcharts 5.10.4 Custom: https://apexcharts.com/media/apexcharts-logo.png

PHPUnit Tests

PHPUnit tests were not enabled for this run.

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit d8b6a7c
Branch 689/merge
Event pull_request
Generated 2026-03-19 14:52 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23300874210

Summary

Group Result
PHP Quality FAIL
Vue Quality PASS
Security PASS
License PASS
PHPUnit SKIP
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs FAIL
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm PASS

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 663
Approved (override) 3
Denied 0

PHPUnit Tests

PHPUnit tests were not enabled for this run.

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit 2e50a9e
Branch 689/merge
Event pull_request
Generated 2026-03-19 15:08 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23301429945

Summary

Group Result
PHP Quality PASS
Vue Quality PASS
Security PASS
License PASS
PHPUnit FAIL
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs PASS
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm PASS

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 663
Approved (override) 3
Denied 0

PHPUnit Tests

PHP Nextcloud Result
Overall FAIL

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

Move 10 class-level BooleanArgumentFlag suppressions to the specific
methods that have boolean parameters, improving suppression precision.
Add explanation text to all @SuppressWarnings(PHPMD.StaticAccess) annotations
describing the specific vendor/framework static pattern being used. Move
dashboard widget suppressions from class-level to method-level on load().
@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit eb4e6e0
Branch 689/merge
Event pull_request
Generated 2026-03-19 16:07 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23304163751

Summary

Group Result
PHP Quality PASS
Vue Quality PASS
Security PASS
License PASS
PHPUnit FAIL
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs PASS
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm PASS

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 663
Approved (override) 3
Denied 0

PHPUnit Tests

PHP Nextcloud Result
Overall FAIL

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit cf3718d
Branch 689/merge
Event pull_request
Generated 2026-03-19 16:21 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23304846254

Summary

Group Result
PHP Quality PASS
Vue Quality PASS
Security PASS
License PASS
PHPUnit FAIL
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs PASS
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm PASS

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 663
Approved (override) 3
Denied 0

PHPUnit Tests

PHP Nextcloud Result
Overall FAIL

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

…nfig

The CI was failing because tests/bootstrap.php did not exist and
phpunit.xml used PHPUnit 9 schema with a lowercase tests/unit directory
that doesn't match the actual tests/Unit path on case-sensitive Linux.
@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit d0e0ce6
Branch 689/merge
Event pull_request
Generated 2026-03-19 17:50 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23308802781

Summary

Group Result
PHP Quality PASS
Vue Quality PASS
Security PASS
License PASS
PHPUnit FAIL
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs PASS
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm PASS

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 663
Approved (override) 3
Denied 0

PHPUnit Tests

PHP Nextcloud Result
Overall FAIL

Code coverage: 0% (0 / 2 statements)

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit fb56d05
Branch 689/merge
Event pull_request
Generated 2026-03-19 17:55 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23309122719

Summary

Group Result
PHP Quality FAIL
Vue Quality FAIL
Security PASS
License FAIL
PHPUnit FAIL
Newman FAIL

PHP Quality

Tool Result
lint PASS
phpcs PASS
phpmd PASS
psalm FAIL
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint FAIL
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm FAIL

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

PHPUnit Tests

PHP Nextcloud Result
Overall FAIL

Integration Tests (Newman)

Result
FAIL

Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit 819f51b
Branch 689/merge
Event pull_request
Generated 2026-03-19 17:59 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23309150245

Summary

Group Result
PHP Quality PASS
Vue Quality PASS
Security PASS
License PASS
PHPUnit FAIL
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs PASS
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm PASS

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 663
Approved (override) 3
Denied 0

PHPUnit Tests

PHP Nextcloud Result
Overall FAIL

Code coverage: 0% (0 / 2 statements)

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

ConfigurationService now requires 14 parameters (6 mappers, RegisterMapper,
SchemaMapper, and 6 configuration handlers). Updated test setUp() to mock all
dependencies. Rewrote test assertions to match current method signatures:
getEntitiesByConfiguration now indexes by slug, and exportConfiguration returns
a components-based structure instead of the old configurationId/entities format.
@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit 602e16f
Branch 689/merge
Event pull_request
Generated 2026-03-19 18:07 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23309481396

Summary

Group Result
PHP Quality PASS
Vue Quality PASS
Security PASS
License PASS
PHPUnit FAIL
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs PASS
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm PASS

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 663
Approved (override) 3
Denied 0

PHPUnit Tests

PHP Nextcloud Result
Overall FAIL

Code coverage: 0% (0 / 2 statements)

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

…tion

- Mock userService->getCurrentUser() instead of userSession->getUser()
  since the controller delegates to UserService
- Mock userService->buildUserDataArray() to return expected data
  since the controller no longer builds user data directly
- Configure IL10N mock with willReturnArgument(0) for pass-through
  translation so error message assertions work
- Configure ICacheFactory mock to return ICache mock so SecurityService
  constructor succeeds
- Configure IRequest->getRemoteAddress() for SecurityService IP lookups
- Remove IUser mock methods not on the interface (getUsedSpace,
  getAvatarScope, canChangeMailAddress, getLanguage, getLocale)
- Mock userService->updateUserProperties() for updateMe tests

Fixes all 9 PHPUnit failures (3 errors + 6 assertion failures).
@github-actions
Copy link
Copy Markdown

Quality Report

Repository ConductionNL/openconnector
Commit a86b9ce
Branch 689/merge
Event pull_request
Generated 2026-03-19 18:16 UTC
Workflow Run https://github.com/ConductionNL/openconnector/actions/runs/23309951002

Summary

Group Result
PHP Quality PASS
Vue Quality PASS
Security PASS
License PASS
PHPUnit PASS
Newman SKIP

PHP Quality

Tool Result
lint PASS
phpcs PASS
phpmd PASS
psalm PASS
phpstan PASS
phpmetrics PASS

Vue Quality

Tool Result
eslint PASS
stylelint PASS

Security

Ecosystem Result
composer PASS
npm PASS

License Compliance

Ecosystem Result
composer PASS
npm PASS

composer dependencies (148 total)

Metric Count
Approved (allowlist) 148
Approved (override) 0
Denied 0

npm dependencies (666 total)

Metric Count
Approved (allowlist) 663
Approved (override) 3
Denied 0

PHPUnit Tests

PHP Nextcloud Result
Overall PASS

Code coverage: 0% (0 / 2 statements)

Integration Tests (Newman)

Newman integration tests were not enabled for this run.


Generated automatically by the Quality workflow.

Download the full PDF report from the workflow artifacts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants