Commit Graph

95 Commits

Author SHA1 Message Date
Christopher Allford fbbca9c3e0
Refactored Linting & Unit Testing Workflows (#40572) 2023-10-19 11:24:20 -07:00
Sam Seay 6e93e8d35e
Add shard to the matrix name in PHP unit tests for clarity in GH UI (#39747) 2023-08-17 17:23:35 +12:00
Leif Singer 77af817444
Shard unit test runs (#39362) 2023-07-27 14:06:55 +02:00
Leif Singer 147db933be
Revert "Shard unit test runs" (#39344)
Revert "Shard unit test runs (#39302)"

This reverts commit 9ee44947e0.
2023-07-20 18:36:01 +02:00
Leif Singer 9ee44947e0
Shard unit test runs (#39302)
closes #38973
2023-07-20 10:01:28 +02:00
Christopher Allford dedf728d51
Support PHPUnit Tests In `wp-env` (#38265)
You can now run unit tests with `test:unit:env` after using
`env:test` to start the environment.
2023-05-15 09:47:50 -07:00
Paul Sealock 64c2526b98
Update WooCommerce support policy to L-1 (#37970) 2023-04-27 08:41:31 +12:00
Chi-Hsuan Huang 8b99b3f099
Drop WP 5.9 from CI (#37807) 2023-04-20 09:47:30 +08:00
Tam Mullen 562fede1e2
Update the CI workflow to include WP 6.0 and 5.9 (#37180)
Update the CI workflow to include WP 6.0 and 5.9 matching our L-2 support policy
2023-03-15 15:49:33 +00:00
Roy Ho 16386238cc
Add minimum required permissions for workflow token (#36200)
* Add minimum required permissions to e2e-tests

* Add minimum token permission to more workflows
2023-01-02 09:28:11 -08:00
Roy Ho eef006dad1
Remove PHP 7.2 and set 7.4 as default (#35021) 2022-10-11 12:55:36 -07:00
Sam Seay 04b74c1053
Upgrade to pnpm 7 (#34661)
* Remove -- -- from scripts that fixed issue in pnpm 6, fix a couple TS issues in sep packages
* Minor fixes to analyzer scripts and doco based on pnpm 7
* Add dompurify types to data package to avoid TS errors
* Remove pnpx in favor of pnpm exec
* Modify the code analyzer to respect pnpm version if present.
* Update instructions for running recursive lint, add comments to explain
2022-09-16 09:21:42 +12:00
Christopher Allford a49f23abfd
Optimize Workflow Caching (#34607)
* Added Monorepo Setup Action

This action will handle the installation, building, and caching for all
projects within the monorepo. It has inputs for skipping builds and
filtering so that only specific packages are installed and built.

* Removed Test Caching

Caching the results of tests, while an interesting way to avoid
unnecessary execution, seems error-prone. We can't adequately
capture the environment such that we can rely on this working.
For instance, changes in PHP version might break PHPUnit tests,
but, cached runs will be shared across different workflows.

It seems better to just not cache it and rely on people only testing
code that has actually changed in the pull request.

* Added Input Parsing

This SHOULD allow for passing multiple filters as an array argument.

* Updated Workflows

This fully utilizes the new action across all of the workflows.

* Always Cache Build Output

Since there may be other commands run that populate the cache, we
should make sure that we are always caching just in case.
2022-09-13 13:55:03 +12:00
Roy Ho fc06be8296
Add flag to state it is in dev mode so tools are installed like phpun… (#34258)
Add flag to state it is in dev mode so tools are installed like phpunit closes #34158
2022-08-11 12:58:36 -07:00
Sam Seay 5becf47d60
Simplify turbo commands (#34055)
* Change package json commands and turbo repo config to allow for greatly simplifying running turbo
* Remove require-turbo script which was causing caching issues
* Colorize CI output from scripts
* Add missing changelog script to extend-cart-checkout-block
2022-08-05 12:03:17 +12:00
Christopher Allford 6d0fc0d6ac
Expand Repository Development Documentation (#33423)
This commit reworks some of the documentation in the monorepo to better represent how to get started and develop projects in it.
2022-06-15 21:55:25 -07:00
Christopher Allford b7931409f2
Migrate From Nx to Turborepo (#33079)
This replaces all `nx` commands with `turbo` commands and removes Nx from the repository. All of the `project.json` files have been removed and any commands that broke with Turborepo have been adjusted.
2022-06-09 14:40:07 -07:00
Roy Ho b0914e5531
Increase timeout limits for workflows (#33272) 2022-05-31 07:58:54 -07:00
Jonathan Sadowski af575532b5 Update the CI workflow to include WP 5.9 and 5.8 matching our L-2 support policy 2022-05-25 16:00:44 -05:00
roykho 1042f22cf8
Extract cache and build to rest of workflows 2022-05-17 11:48:24 -07:00
roykho 7056cf93b6
Add additional pnpm cache dir 2022-05-16 06:01:53 -07:00
roykho cf5c47eb09
Cache Composer global store 2022-05-13 13:43:33 -07:00
roykho ab58263e80
Add unique secrets cache key to enable clearing of cache 2022-05-04 15:20:31 -07:00
roykho 45a036f35b
Match minor and patch 2022-05-02 10:08:52 -07:00
roykho f2e4a686f1
Lock pnpm to specific version 2022-05-02 09:39:40 -07:00
roykho 57c1c0bc1c
Freeze Ubuntu release to 20.04 for best practice and consistency 2022-04-26 18:28:56 -07:00
roykho fc705cff77
Use glob pattern for hash key 2022-04-26 07:47:50 -07:00
roykho bd096a6edc
Use glob pattern to cache multiple nested Composer vendor paths 2022-04-26 07:07:15 -07:00
roykho 6e5d61da0b
Test pr smoke test workflow 2022-04-21 11:29:53 -07:00
Paul Sealock ab673dd14b Call Core's script from root level 2022-04-06 15:27:37 +12:00
Nestor Soriano 25bf59d5e7
Merge branch 'trunk' into bump-required-php-to-7.2 2022-03-29 10:45:07 +02:00
Christopher Allford 14e852b4b2
Merge WooCommerce Admin Unit Tests (#32287)
This folds the unit tests from WooCommerce Admin into the core test suite, enabling them to run.
2022-03-28 12:53:33 -07:00
Nestor Soriano 819494f2ed
Bump WooCommerce minimum required PHP version to 7.2
This includes:

- Changing "Requires PHP" in woocommerce.php
- Changing "require-php" and "config-platform-php" in composer.json
- Bumping pelago/emogrifier to ^6.0 in composer.json
- Bumping maxmind-db/reader to ^1.6 in composer.json
- Bumping composer/installers to ^1.9 in composer.json
  (bump to 2.0 not possible due to conflict with Admin package)
- Removing jobs for 7.0/.1 unit test runs in CI
- Explicitly specifying the PHPUnit version to be 7.5,
  otherwise it will install v8 which isn't compatible with
  WordPress <5.9
2022-03-24 14:08:11 +01:00
Chi-Hsuan Huang a720ccb42a Add "Build Admin feature config" step to ci.yml 2022-03-24 14:00:43 +08:00
Felipe Santos a8679b041d
Update the WP version for tests and WooCommerce 2022-03-03 11:38:27 +00:00
roykho f15f75e9cf
No need to install Nx globally 2021-11-17 08:54:14 -08:00
roykho f940d049d6
Use Nx commands for CI 2021-11-16 18:17:35 -08:00
roykho 27127ea1fc Fix directory path for CI workflow 2021-10-19 10:35:47 +13:00
Nestor Soriano 0ae984e6cc
Fix unit tests failing in PHP 8 in CI
The problem was that PHP 8 requires setting up a different version of
PHPUnit, and after doing that two versions were in place, one in
'vendor/phpunit' and another one in 'bin/composer/phpunit'; the
autoloader was picking the former but it should pick the later.
2021-08-24 15:36:06 +02:00
Claudio Sanches 37068f198f Improve continue on error 2021-08-09 13:55:53 -03:00
Claudio Sanches 175cc34ee7 Allow failures for WP nightly unit tests 2021-08-09 13:41:53 -03:00
Claudio Sanches 9a9a855701 Update conditional 2021-08-09 13:22:01 -03:00
Claudio Sanches ef9f511387 Run composer update for wp nightly 2021-08-09 13:00:29 -03:00
Claudio Sanches 4fea3f4dc1 Update unit test WP matrix 2021-08-09 12:33:39 -03:00
Claudio Sanches 87a18620eb Added workflow to run CI in trunk and release/** branches 2021-03-13 21:29:15 -03:00