Commit Graph

38 Commits

Author SHA1 Message Date
rodelgc b60cc128fd
Allow running of "Smoke test release" on draft releases (#36997)
* Conditionally use authorization token when getting WC Zip download URL.

* Exponse error message

* Handle undefined authorization token more gracefully

* Specify GH token in workflow

* Add changelog

* Use E2E_GH_TOKEN instead of default github.token

* Provide GitHub token to other jobs

* Fix getting of tag name from triggered event

* Use "inputs" context instead

* Add release version to workflow name

* Correct concurrency group

* Fix workflow name

* Add --archive option

* Fix output setting

* Fix script for verifying asset

* Remove unnecessary 'uses' line

* Remove node 12 deprecation messages

* Re-add "published" release type
2023-03-08 10:23:56 +01:00
rodelgc ea1925c841
Enable "Smoke test release" workflow (#36598)
* First pass at updating release test workflow

* Add changelog

* Set dir env variables

* Update to workflow

* Fix indent

* Fix indent

* Clean up indent

* Re-order steps

* Change order of jobs

* Added common php versions

* Update pipeline

* Update some labels

* Simplify for testing

* Update paths

* Create tmp folder

* Fix path

* Paths

* Try outputting some debugging

* Add step ID back

* Remove working directory

* Another path tweak

* Add API release tests

* Add k6 tests

* Add PHP tests

* Launch wp-env during PHP tests

* Try default values

* Tweak some settings, add WP testing

* Tweak some settings

* Re-order e2e steps

* Update step descriptions

* Reorganize tests, add plugin tests

* Enable only e2e job

* Initial set up to run against release smoke test site

* Fix syntax

* Temporarily disable update wc spec

* Temporarily disable downloading woocommerce zip

* Download release zip using tag name

* Fix wrong job name

* Fix wrong job name

* Fix dir

* Delete fetch-asset-id.js

* REfactor update-woocommerce spec

* Add error handling

* Download release zip by tag

* Refactor update woo spec to download zip by tag

* Correct job name

* fail test on invalid tag

* Enable all e2e tests

* Run api tests before e2e tests

* Fix job dependency

* Add customer credentials to api job

* Separate job for WC Update

* Combine e2e allure-results, then report

* Enable report job

* Fix context

* Change job and artifact names

* Use test s3 path

* Minor job name change

* Upload artifacts to bucket

* Correct s3 path

* Add quiet option

* Retain video on failures

* Finalize s3 path

* Try WP latest-1

* Revert to wp latest

* Refine search for woocommerce zip asset

* Get created-at

* Specify repo in gh command

* Slugify env description

* Trim space

* Sync with bucket instead of copy

* Remove invalid --recursive flag

* Re-add missing step to combine e2e results from update wc test

* Ensure artifact upload on test failure

* Enable all e2e tests on WP latest

* Retain existing data before updating WC

* Make test compatible with 'Canceled' and 'Cancelled'

* Set env_desc as env var

* Re-add deleted file

* Fix UPDATE_WC in daily smoke test workflow

* Add tracing in global setup

* Remove tracing

* Temporarily run only basic spec

* Job for WP Latest-1 & 2

* Fix "Required input 'created_at' not provided"

* Minor rename

* Remove install filter

* Install deps in get-wp-matrix

* Delete get-wp-versions.js

* Add get-wp-versions.js to e2e-pw folder

* REname file

* REfactor

* Refactor script for getting WP prev versions

* Update job dependencies

* Temporarily remove disabled jobs

* Allow e2e-wp-latest after api test failure

* Update L-1 & L-2 job deps

* Fix report-wp-latest

* Fix failing api test

* Make get-wp-versions quicker

* Publish report immediately after test

* Test reporting in e2e-update-wc

* Fix missing parameter

* Fix env_desc, re-enable other jobs

* Enable all e2e tests

* Minor job name change

* Fix flaky test

* Add php version testing

* stringify php versions

* Re-enable all e2e tests

* Up timeout to 2min

* Remove PHP 8.0

* Add missing conditionals

* Fix php version verification script

* Fix starting dir

* Fix flakiness

* Skip e2e if api failed

* Verify woocommerce.zip early

* Add token

* Delete test summary on github for the meantime

* Use default playwright config

* More meaningful variable names

* Update step titles based on review

* Use expect.poll()

* Minor spacing corrections

* Use `stable-check` endpoint, delete unnecessary loop

* Update locators to be JN-compatible

* Fix erroneous getting of release tag

* Fix conflict of "No thanks" button locator with that of WP Mail Logging's

* Update github-script action to v6

* Revert to 'Cancelled'

* Remove unnecessary step

* Provide missing env variables

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Jonathan Lane <lanej0@users.noreply.github.com>
2023-02-27 12:11:46 +08: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
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
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
roykho c92650df2b
Add paths input for install build workflow 2022-05-19 08:29:38 -07: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 8f9957f0d4
Fix smoke test on release 2022-05-12 07:12:29 -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
jonathansadowski 4a19efc739
Merge pull request #32725 from woocommerce/workflow/caching-3
Refactor caching for workflows
2022-04-21 16:56:23 -05:00
Jon Lane 20befd32d7 Update Slack Channel IDs for workflows 2022-04-21 13:04:31 -07:00
roykho 3f4c2060dd
Clean up and bump versions 2022-04-21 11:46:30 -07:00
Joel T 1c162a14d2 Updating all instances of pnpx to pnpm dlx/exec 2022-04-07 17:52:05 -07:00
jamelreid d93f440d75 Updated to trigger on workflow_dispatch event
Also updated the workflow to pull the asset id for a given release and use that asset id to download woocommerce.zip
2022-02-04 07:34:45 -05:00
jamelreid 6a1b849d01 Updated repo for WooCommerce Shipping & Tax 2022-01-27 12:46:16 -05:00
jamelreid 122ea458ae Updated to match changes in smoke-test-daily.yml 2022-01-26 14:22:25 -05:00
jamelreid 503fada6fb Removed duplicate plugins/woocommerce 2022-01-12 15:47:45 -05:00
Greg 07a96e3aaa Swap out plugins 2021-12-16 13:32:43 -07:00
Greg 77bb3e958d Logic for private repos and minor tweaks 2021-12-16 09:58:11 -07:00
Greg c6cdf87aa7 Remove standalone run and add to smoke and release testing 2021-12-09 14:07:13 -07:00
roykho 22a1e0b2b5
Add path 2021-11-22 06:28:18 -08:00
roykho b88ec3a573
Add missing run command 2021-11-22 06:22:33 -08:00
roykho 7d6979905c
Use Nx commands for smoke test release action 2021-11-18 07:25:19 -08:00
roykho 9622643c2e
Update smoke test to use PNPM and update paths 2021-11-03 06:24:18 -07:00
Greg 923cfdbbf1 Use release Slack channel 2021-10-01 10:13:35 -06:00
Greg 0bd549de3c Move env variable 2021-10-01 10:13:03 -06:00
Greg 92403b3e25 Added WP l minus 2 testing on release 2021-10-01 10:08:55 -06:00
Ron Rennick c15bf28b22
Merge pull request #30684 from woocommerce/add/api-test-script-scheduled-run
Run API tests with regular run and add script
2021-09-23 10:36:21 -03:00
Greg 323a316bd3 Add release slack channel 2021-09-09 14:26:28 -06:00
Greg e09b43f099 Code review feedback 2021-09-09 12:23:23 -06:00
Greg edb10107cf Run API tests with regular run and add script 2021-09-09 08:41:36 -06:00
Greg 2f0aa1a30f Added default timeout override 2021-08-12 16:05:55 -06:00
Greg c64f383ba7 Use smoke test Slack channel for now 2021-08-10 20:40:27 -06:00
Greg a597edd6b0 Added in GitHub workflow 2021-08-10 20:38:41 -06:00