{"id":44697912,"url":"https://github.com/syntro-opensource/workflows","last_synced_at":"2026-02-15T08:35:30.168Z","repository":{"id":41279821,"uuid":"492723743","full_name":"syntro-opensource/workflows","owner":"syntro-opensource","description":"contains workflow definitions and containers to speed up development \u0026 testing","archived":false,"fork":false,"pushed_at":"2025-10-28T11:10:25.000Z","size":104,"stargazers_count":0,"open_issues_count":5,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-28T12:21:58.197Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/syntro-opensource.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-05-16T07:16:33.000Z","updated_at":"2025-10-28T11:10:29.000Z","dependencies_parsed_at":"2025-10-28T12:11:59.854Z","dependency_job_id":"4e73d47d-cc61-4de0-98a6-5cfd0ac5964e","html_url":"https://github.com/syntro-opensource/workflows","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/syntro-opensource/workflows","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syntro-opensource%2Fworkflows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syntro-opensource%2Fworkflows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syntro-opensource%2Fworkflows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syntro-opensource%2Fworkflows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/syntro-opensource","download_url":"https://codeload.github.com/syntro-opensource/workflows/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syntro-opensource%2Fworkflows/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29473718,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-15T06:58:05.414Z","status":"ssl_error","status_checked_at":"2026-02-15T06:58:05.085Z","response_time":118,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-02-15T08:35:25.875Z","updated_at":"2026-02-15T08:35:30.164Z","avatar_url":"https://github.com/syntro-opensource.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Shared Workflows by Syntro\n\nThis repository contains prebuilt workflows and required containers for\nautomated testing, building \u0026 delivery of projects (mostly\n[Silverstripe](https://silverstripe.org) related).\n\n## Usage - Silverstripe Project\n\nThis repository provides a ready-to-use testsuite for your Silverstripe project.\nIt provides the following checks:\n\n* PHPUnit\n* PHPStan\n* Behat\n* PHPcs\n\nUsage is straightforward:\n\n```yml\n# ...\njobs:\n  silverstripe:\n    name: 🧰 Silverstripe Testsuite\n    uses: syntro-opensource/workflows/.github/workflows/silverstripe.yml@5\n    with:\n      phpunit: true\n      phpunit_suite: app/tests/\n      # phpunit_config_file:\n      # phpunit_php_version: '8.1'\n      # phpunit_build_graphql: false\n      phpstan: true\n      phpstan_dir: app/src/\n      # phpstan_php_version: '8.1'\n      phpcs: true\n      phpcs_dir: app/\n      # behat: false\n      # behat_php_version: '8.1'\n```\n\n### Working with Private Repositories\nYou can enable an SSH-Client to clone private repositories described in `composer.json`. \n**Please make sure you understand the risks of adding private keys to GitHub workflow Runs!**\nThis feature can be enabled as follows:\n```yml\n# ...\njobs:\n  silverstripe:\n    name: 🧰 Silverstripe Testsuite\n    uses: syntro-opensource/workflows/.github/workflows/silverstripe.yml@5\n    with:\n        # ...\n        uses_private_repos: true\n        uses_private_keys: |\n            ${{ secrets.YOURPRIVATEKEY }}\n```\nWe use [webfactory/ssh-agent](https://github.com/marketplace/actions/webfactory-ssh-agent) to\nenable this feature. You can find more information there.\n\n\n\u003e For Silverstripe 4 related Checks, use the [`4` branch](https://github.com/syntro-opensource/workflows/tree/4).\n\nEach check can be configured using inputs.\n\n## Usage - Silverstripe Modules\n\nThis repository provides a testsuite for silverstripe modules. The testsuite\nis used as the standard in our modules and checks Code in a fixed range of\nphp and CMS versions.\n\nUsage is straightforward:\n\n```yml\n# ...\njobs:\n  silverstripe-module-5:\n    name: 🧰 Silverstripe Module Testsuite 5\n    uses: syntro-opensource/workflows/.github/workflows/silverstripe-module-5.yml@master\n    with:\n      phpunit: true\n      # phpunit_config_file:\n      phpstan: true\n      # phpstan_config:\n      # phpstan_bootstrap:\n  silverstripe-module-6:\n    name: 🧰 Silverstripe Module Testsuite 6\n    uses: syntro-opensource/workflows/.github/workflows/silverstripe-module-6.yml@master\n    with:\n      phpunit: true\n      # phpunit_config_file:\n      phpstan: true\n      # phpstan_config:\n      # phpstan_bootstrap:\n  silverstripe-module-codecoverage:\n    name: 📊 Silverstripe Code Coverage\n    uses: syntro-opensource/workflows/.github/workflows/silverstripe-module-codecoverage.yml@master\n    with:\n      php_version: 8.3\n      silverstripe_version: 6.0\n  silverstripe-phpcs:\n    name: 🧹 Silverstripe PHPCS\n    uses: syntro-opensource/workflows/.github/workflows/silverstripe-phpcs.yml@master\n    with:\n      dir: src/\n```\n\n\nEach check can be configured using inputs.\n\n\u003e For Silverstripe 4 related Checks, use the [`4` branch](https://github.com/syntro-opensource/workflows/tree/4).\n\n\n## Usage - Frontend Checks\n\nThis repository also provides a testsuite for client-side code. The suite checks:\n\n* ESlint\n* Stylelint\n* Jest\n\nYou can also configure which Node.js version the tests run on. The test suite defaults to `18.x`.\n\nUsage is straightforward:\n\n```yml\n# ...\njobs:\n  silverstripe-client:\n    name: 📦 Client Testsuite\n    uses: syntro-opensource/workflows/.github/workflows/client.yml@5\n    with:\n      eslint: true\n      eslint_dir: client/src/seo-field/\n      eslint_configfile: client/src/seo-field/.eslintrc\n      eslint_node-ver: 16.x\n      # eslint_ext:\n      # eslint_max-warnings:\n      stylelint: true\n      stylelint_glob: client/src/seo-field/**/*.scss\n      stylelint_node-ver: 16.x\n      # stylelint_max-warnings:\n      jest: true\n      jest_node-ver: 16.x\n```\nEach check can be configured using inputs.\n\n### Working with Private Repositories\nYou can enable an SSH-Client to clone private repositories described in `composer.json`. \n**Please make sure you understand the risks of adding private keys to GitHub workflow Runs!**\nThis feature can be enabled as follows:\n```yml\n# ...\njobs:\n  silverstripe:\n    name: 📦 Client Testsuite\n    uses: syntro-opensource/workflows/.github/workflows/client.yml@5\n    with:\n        # ...\n        uses_private_repos: true\n        uses_private_keys: |\n            ${{ secrets.YOURPRIVATEKEY }}\n```\nWe use [webfactory/ssh-agent](https://github.com/marketplace/actions/webfactory-ssh-agent) to\nenable this feature. You can find more information there.\n\n\u003e For Silverstripe 4 related Checks, use the [`4` branch](https://github.com/syntro-opensource/workflows/tree/4).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsyntro-opensource%2Fworkflows","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsyntro-opensource%2Fworkflows","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsyntro-opensource%2Fworkflows/lists"}