Commit Graph

405 Commits

Author SHA1 Message Date
Damien Retzinger ef06f4566b fix(check-store): only run unit tests for unit tests 2026-05-10 17:55:28 -04:00
Damien Retzinger 4c9a28930b refactor(check-store): remove extraneous guard around running tests 2026-05-10 17:54:58 -04:00
Damien Retzinger 22627e1000 feat(setup-magento): prevent Magento dir from being mirrored into vendor 2026-05-10 13:30:54 -04:00
Damien Retzinger b0131f0fa0 fix(check-extension): prevent recursively mirroring _ghamagento into _ghamagento 2026-05-10 10:34:32 -04:00
GrayBot 23c77e10c8 chore: restore internal action refs to @main (#254) 2026-05-09 20:25:19 -04:00
GrayBot 5fb823da94 chore: release 8.0.0-rc.0 (#253) v8.0.0-rc.0 2026-05-09 20:24:17 -04:00
Damien Retzinger 38423ddb9b ci: dont run internal tests on markdown changes 2026-05-09 20:19:03 -04:00
Damien Retzinger d7959941c6 docs: dont bump docs on release candidates 2026-05-09 20:18:41 -04:00
Damien Retzinger 74f1e3ec39 docs: use x-release-please-version
release-please with x-release-please-major clobbered the magento2 -> magento8. This is obviously dumb.
2026-05-09 20:10:09 -04:00
Damien Retzinger d38c375b83 ci: tag prelease with trailing numeric 2026-05-09 20:03:11 -04:00
Damien Retzinger dcbd219ac1 ci: add release-please for release-candidates 2026-05-09 20:00:21 -04:00
Damien Retzinger 761188e82f ci: add ability to rc and graduate a release 2026-05-09 19:41:05 -04:00
Damien Retzinger aa1b545010 docs: migrate workflow docs to separate folder
Files under `.github/workflows/` require the `workflow` PAT scope to
modify. Once release-please's `extra-files` glob started rewriting these
README files on release, the action failed with "Error adding to tree."
Moving the docs to `docs/workflows/` lets the existing token update them
without needing a wider scope.
2026-05-09 19:30:22 -04:00
Damien Retzinger 45d1df0162 docs: bump READMEs on release 2026-05-09 19:18:17 -04:00
Damien Retzinger baef64bc0a feat(check-extension): enable stamp caching (#248)
Adds an optional `stamp` boolean input on the public check-extension
workflow that is forwarded to cache-magento, plus the matching
`working-directory`. Internal CI exercises stamp:true.
2026-05-09 18:58:38 -04:00
Damien Retzinger 59f87b6b2e feat(check-store): enable stamp caching (#247) 2026-05-09 16:24:21 -04:00
Damien Retzinger 0cbc4297b1 refactor(_internal-setup-magento): replace bespoke cache with cache-magento stamp (#250)
Drop the actions/cache + create-project + cp pattern in favor of
running cache-magento with stamp:true directly against the work
directory. The PSEUDO_REPO_FOLDER staging directory is removed
entirely; create-project lands in `_ghamagento` and stays there.

To keep the cache lean, the workflow writes Magento's stock
.gitignore before `git init && git clean -fdx` so vendor/, var/,
generated/, and pub/static/ are stripped from the snapshot that
seeds the test fixture. The stamp cache then handles vendor/.

Adds `compute_matrix_latest` so setup-magento-extension runs
across the supported matrix (kind: latest) instead of being
hard-coded to 8.4 / composer 2.8 / 2.4.8-p3.
2026-05-09 16:16:26 -04:00
Damien Retzinger c78e635688 ci(setup-install): adopt cache-magento stamp cache (#249)
Adds `composer update --no-install` ahead of cache-magento so the
lock exists when the stamp key is computed, then flips on
stamp:true with the matching working-directory.
2026-05-09 16:12:45 -04:00
Damien Retzinger 5c04c25fe8 ci(sansec-ecomscan): adopt cache-magento stamp cache (#251)
Adds `composer update --no-install` ahead of cache-magento so the
lock exists when the stamp key is computed, then flips on
stamp:true with the matching working-directory. This shortens
ecomscan runs from "full composer install" to "warm vendor/" on
warm hits.
2026-05-09 16:09:01 -04:00
Damien Retzinger 8d00f8149a feat(cache-magento): add stamp caching for vendor/ directory (#245)
Adds an opt-in `stamp` mode that caches the extracted `vendor/`
directory in addition to the Composer download cache. On a warm
hit, `composer install` is effectively a no-op and shaves 2–5
minutes off a full Magento install.
2026-05-09 15:47:53 -04:00
Damien Retzinger 2d7238de14 feat(cache-magento): include runner.os in the cache key (#245)
Composer's download cache contains platform-specific binaries and
extracted archives that aren't safe to share across operating
systems. Add the runner OS as a key segment so a Linux job won't
restore a macOS-built cache (or vice versa).
2026-05-09 15:47:51 -04:00
Damien Retzinger 44e7c34892 refactor(cache-magento): extract key computation into a script (#245) 2026-05-09 15:47:47 -04:00
Damien Retzinger c53607cca8 feat(setup-magento): mkdir app/etc in extension mode (#246)
This prevents the magento/composer-plugin from crashing when doing caching for setup-magento in extension mode.
2026-05-09 13:45:40 -04:00
Damien Retzinger a729f8b2fd feat(setup-magento)!: extension working dir changed to _ghamagento folder (#246)
BREAKING CHANGE: Previously, when using setup-magento in extension mode, the magento 2 repo root was ../magento2 (outside of the extension folder). Due to interactions with `cache-magento` we need to keep magento inside the GITHUB_WORKSPACE (the root repo). We now do this in the `_ghamagento` folder. If you rely on the `steps.setup-magento.outputs.path` nothing changes for you. But, if you hardcoded the path, it's likely broken.
2026-05-09 13:45:34 -04:00
Damien Retzinger f6a7355bd9 docs: denote deprecation / replacement of integration with CheckExtension 2026-05-07 10:33:57 -04:00
Damien Retzinger 307f527997 docs: add short description to README 2026-05-07 10:31:33 -04:00
Damien Retzinger 85b7909eb1 docs: add sansec ecomscan to the root README 2026-05-07 10:29:23 -04:00
Damien Retzinger 837f1da96b docs: add docs for check-store 2026-05-07 10:25:47 -04:00
Damien Retzinger d311df7966 feat(check-store): introduce new check-store workflow (#241) 2026-05-07 10:20:20 -04:00
Damien Retzinger a7e327d44f feat(supported-version): dynamically append "version" to matrix 2026-05-07 09:30:09 -04:00
Damien Retzinger c786530c3e test(get-magento-version): document and pin what happens in various kinds of installs 2026-05-07 09:30:07 -04:00
Damien Retzinger 483ec3ac17 docs: add AGENTS.md and CLAUDE.md 2026-05-07 09:29:17 -04:00
Damien Retzinger a1c6246c78 fix(coding-standard): use exactly phpcs.xml if exists (#243)
Inadvertently, the added period causes the `file` / `files` of phpcs to be ignored. This caused `vendor` to be linted.
2026-05-07 09:15:18 -04:00
Damien Retzinger 87989bb250 feat(get-magento-version): pull version from lockfile if it exists (#242)
Additionally, this exposes a new `output` called project which tells you which project was used.
2026-05-06 14:03:19 -04:00
Damien Retzinger bdb9528f8c docs: add working! grill-me skill 2026-05-06 11:08:17 -04:00
Damien Retzinger 6a520d49fd feat(check-extension): use setup-di-compile action in compile-extension job (#240) 2026-05-06 10:59:22 -04:00
Damien Retzinger 212f9a8e86 feat(setup-di-compile): restore setup-di-compile as a lean action (#239) 2026-05-06 10:51:27 -04:00
Damien Retzinger 0808fab9c3 refactor: remove now default arg 2026-05-06 10:32:43 -04:00
Damien Retzinger bbd830745f feat(sansec-ecomscan): skip server checks by default (#238) 2026-05-06 09:42:48 -04:00
Damien Retzinger e31f6f656a feat(setup-install): add new setup-install action (#237) 2026-05-05 16:06:59 -04:00
Damien Retzinger 198bc1072a docs: add grill-me skill 2026-05-05 15:57:10 -04:00
Damien Retzinger 3c0a90f92b feat(sansec-ecomscan): add sansec ecomscan feature (#235) 2026-05-05 11:56:14 -04:00
Damien Retzinger c115395583 fix(fix-magento-install): remove deprecated set-output 2026-05-02 12:57:10 -04:00
Damien Retzinger 20cbf5d06a test(supported-version): add test coverage for 2026-03-10 (#233) 2026-05-02 11:54:51 -04:00
Damien Retzinger ff6279a518 docs: doc supported-versions for recent kind 2026-05-02 10:35:01 -04:00
Damien Retzinger b74bdcde41 docs: add docs for include_services key on supported-version 2026-05-02 10:32:27 -04:00
GrayBot 1c312fe567 chore: restore internal action refs to @main (#232) 2026-05-01 07:56:31 -04:00
GrayBot 62d2aec976 chore: release 7.0.0 (#230) v7.0.0 2026-05-01 07:52:47 -04:00
kristof-ringleff 771dd05439 fix(cache-magento): address set-output deprecation (#231) 2026-04-28 21:54:56 -04:00
Ryan Hoerr f8036173e1 fix(supported-version): filter uninstallable versions from usable kind (#319)
Exclude versions that cannot be installed due to security or dependency issues:
- Magento 2.4.2 through 2.4.3-p3: require composer <=2.1, which is insecure
- Mage-OS 2.2.1: blocked by webonyx/graphql-php security advisory
2026-04-28 10:21:08 -04:00