Commit Graph

1170 Commits

Author SHA1 Message Date
Manish Menaria aa5d9debbf
Modify PR template and document that tests are required (#49331)
* Update PULL_REQUEST_TEMPLATE.md to include a checklist item for adding/updating tests

Added a new checklist item to the pull request template for contributors to confirm they have added or updated relevant tests (E2E, Unit, Integration, etc.) to ensure their fix or feature works as intended. This helps maintain the quality and reliability of the codebase by encouraging thorough testing.

* Update workflow to request reviewers to check test coverage along with testing instructions

Modified the review-testing-instructions workflow to enhance the review process by asking reviewers to not only review the testing instructions but also verify that relevant tests (E2E, Unit, Integration, etc.) have been added or updated as needed. This change ensures a more thorough review process and helps maintain high code quality.

* Update action name

* Remove changes from Template
2024-07-17 18:04:12 +05:30
Vladimir Reznichenko 444f105eba
CI: Re-group PHPUnit jobs. (#49443)
In this PR, we reduce build time for REST API tests (lightweight build) and regroup a bit of PHPUnit jobs (fewer jobs with the same coverage).
2024-07-15 13:39:07 +02:00
Adrian Moldovan b9d6439b9d
Revert "Update ci.yml to be dispatchable and skippable" (#49442) 2024-07-12 12:52:16 +03:00
Adrian Moldovan e4aff57e56
Fix path to wp-env.json file in release-checks runs (#49397) 2024-07-11 20:27:35 +03:00
Adrian Moldovan 3ff155182e
Fix Blocks e2e environment setup in release checks (#49379) 2024-07-11 15:45:30 +03:00
Vladimir Reznichenko 4311640de2
Monorepo: caching deps per target package in GH actions (#49020)
In this PR, we are implementing per-package build and caching, which optimizes build and fetching cached dependencies times across our workflows.
2024-07-10 14:39:49 +02:00
jonathansadowski b8c2cf8cde
Update ci.yml to be dispatchable and skippable (#45331)
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-07-09 16:50:57 +03:00
Vladimir Reznichenko 68532ce433
CI: update linting jobs to skip build step (#49193)
In this PR, we introduce changes to linting and PHPUnit jobs in order to speed them up: skip or minimize the build step.
2024-07-08 08:39:39 +02:00
Adrian Moldovan cef644078e
Remove the matrix.testEnv condition from the build step (#49149) 2024-07-04 14:50:49 +03:00
Adrian Moldovan 32b7dd646a
Updated ignored jobs list for evaluation script (#49141) 2024-07-04 14:05:15 +03:00
Adrian Moldovan 62c74d0ed4
[e2e tests] Add support for external sites in CI (#49017) 2024-07-04 12:15:43 +03:00
Vladimir Reznichenko 7959060850
Monorepo: disable autoloading optimization by default (take 2) (#48980)
This PR is the second attempt to speed up monorepo installation by removing autoloading optimization setting from the configuration and performing the optimization where it is appropriate (composer post-install hooks and when building releases).

In the installation context, the composer post-install hook will execute a background task to dump the optimized autoloading, while the installation process completes other tasks.
2024-07-04 10:12:52 +02:00
Vladimir Reznichenko f8c95a8db8
CI: caching tune (part one - relocate playwright caching) (#49081)
In this PR we ar relocating playwright downloads caching into the monorepo action (behind input parameter). That consolidates monorepo-related caching and also reduces the time fetching the cache action in external workflows.
2024-07-04 06:55:24 +02:00
Adrian Moldovan f50119bd1b
Update action/pnpm-setup version (#49116) 2024-07-03 15:59:15 -03:00
Adrian Moldovan 36c28b6ad2
Move buildkite-test-collector to devDependencies (#49051) 2024-07-03 11:31:40 +03:00
Adrian Moldovan 94b93d40ff
[testing workflows] Removed deprecated reporting CI steps (#49025)
* Removed deprecated reporting steps

* Test change

* Revert test change
2024-07-02 15:40:05 -03:00
Vladimir Reznichenko f1b974a910
Revert "Monorepo: don't optimize composer autoloading by default. (#48971)" (#48982)
This reverts commit 76b1bd4ae7.
2024-07-01 15:13:25 +02:00
Vladimir Reznichenko 76b1bd4ae7
Monorepo: don't optimize composer autoloading by default. (#48971)
This PR drops composer autoloader optimization for the WooCommerce plugin to speed up the build process. The autoloader still gets optimized in `plugins/woocommerce/bin/build-zip.sh` file.
2024-07-01 13:55:36 +02:00
Vladimir Reznichenko 6b121e2f34
CI: caching tweaks in GitHub actions (#48865)
* Tooling: cache pnp deps

* Tooling: try fixing cache errors

* Tooling: try to parallelize js builds a bit

* Tooling: try to parallelize js builds a bit

* Tooling: try to parallelize js builds a bit

* Tooling: try to parallelize js builds a bit

* Tooling: try to parallelize js builds a bit

* Tooling: try to parallelize js builds a bit

* Tooling: try to parallelize js builds a bit

* Tooling: try to parallelize js builds a bit

* Tooling: try to parallelize js builds a bit

* Tooling: added pre-build steps to solve concurrency issues

* Tooling: limit workers

* Tooling: revert to original build command

* Tooling: playwright related tweaks

* Tooling: minor tweaks.

* Tooling: fix caching path.

* Tooling: trigger php builds to test deps caching.

* Tooling: trigger php builds to test deps caching.

* Tooling: lock caching to monorepo setup, so it doesn't slow down build steps.

* Tooling: lock Playwright cache to build, as build is pre-requisite for running tests.

* Tooling: added caching build-folders.

* Tooling: added caching build-folders.

* Tooling: added caching build-folders.

* Revert "Tooling: added caching build-folders."

This reverts commit c57b9dff13.

* Tooling: added caching build-folders.

* Tooling: cleanup sweep.

* Tooling: cleanup sweep.

* Tooling: added a changelog entry.

* Tooling: cleanup.

* Tooling: try speedup live branches build.

* Tooling: try speedup live branches build.

* Tooling: cleanup.

* Tooling: try speedup live branches build.

* Tooling: try speedup live branches build.
2024-06-28 14:50:32 +01:00
Adrian Moldovan b098a393b8
[test reports] Optimize the reporting job - don't duplicate reports and remove Allure report (#48612)
* * Use run_attempt in the artifact name

* Remove the Allure report steps

* Test change to trigger tests

* Only run the publish report step if there is an artifact-id

* Only run the publish report step if there is an artifact-id

* Revert test changes

* Also condition the deprecated publish report step
2024-06-19 09:37:50 -07:00
Naman Malhotra b2ed818f4d
Updated issue template to use the new SSR feature for GitHub (#47780)
* Update issue template to use the new SSR feature for GitHub

* Update issue template to use the new SSR feature for GitHub

* Update .github/ISSUE_TEMPLATE/1-bug-report.yml

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-06-18 18:52:49 +00:00
Adrian Moldovan f2fd4968f8
[ci] Always run the resolve artifacts path (#48508) 2024-06-17 10:16:04 -07:00
Adrian Moldovan 3fb5d40a43
[test reports] Send the run attempt to the reports workflow (#48519) 2024-06-17 10:14:32 -07:00
Adrian Moldovan 90398903ab
Fix core api tests results path and artifacts naming pattern (#48490)
* Fix api tests results path

* Add changelog

* Run Core API tests - HPOS disabled on pull_request

* Update the artifacts name pattern to avoid conflicts

* Revert pull_request trigger
2024-06-14 09:03:43 -07:00
Adrian Moldovan 1f534d0280
[e2e tests] Update the report configuration for core e2e tests and add a new workflow call for report publishing (#48424)
* Add a call to a new report workflow in woocommerce-test-reports repo

* Test change to trigger tests

* Update report title

* Test change to trigger tests

* Check REPORT_TITLE

* Add quotes on all arguments

* Update reporting configuration to all core e2e jobs

* Add changelog

* Use GITHUB_HEAD_REF for pull_request

* Set REPORT_TITLE for workflow dispatch

* Updated trigger from daily-e2e to daily-checks
2024-06-12 13:38:37 -07:00
Barry Hughes 70fa4aaa36
Revise community review policy. (#48412) 2024-06-12 10:00:00 -03:00
Adrian Moldovan 1fe724b6ef
Remove deprecated workflows, actions and related scripts (#48364) 2024-06-12 10:21:47 +03:00
Jonathan Lane e5e51a41b8
Update Playwright to 1.44.1 from 1.41.1 (#48291)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-06-11 21:52:48 +03:00
Adrian Moldovan d63da14787
Skip the install and build steps for changelog auto add workflow (#48368)
Co-authored-by: github-actions <github-actions@github.com>
2024-06-11 20:02:56 +03:00
Adrian Moldovan f3a7c0a6ec
[ci] Skip build for lint jobs (#48234) 2024-06-11 20:01:43 +03:00
Adrian Moldovan a7f634d5ef
[blocks e2e] Move Blocks e2e into ci.yml (#48224) 2024-06-11 19:57:23 +03:00
Ron Rennick 5650f88514
add community check to live branch workflow (#48190)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-06-11 13:48:00 -03:00
Adrian Moldovan 1533afdca3
[e2e tests] Fix e2e test results path and report name (#48320)
* Fix the report name sent to woocommerce-test-reports workflow

* Add test type

* Test change

* Remove test type

* Merge artifacts to keep allure-results

* Overwrite artifacts if one already exists with the same name

* Test changes to trigger tests

* Fix allure-results and .state paths

* Filter tests for faster feedback

* Debug artifacts content

* Use name instead of pattern

* Use name instead of pattern

* Don't use an intermediate path

* Use artifact name and path instead of only pattern

* Use artifact name and path instead of only pattern

* Use artifact name and path instead of only pattern

* Remove testMatch filter to run all tests

* Revert test change

* Add changelog
2024-06-10 11:21:46 -07:00
Adrian Moldovan cd0884a294
[ci] Fetch all pages when evaluating jobs conclusions (#48315)
Use pagination to get all workflow jobs when evaluating the jobs conclusions
2024-06-10 11:17:54 -07:00
Adrian Moldovan f0478c3f60
[ci] Evaluate jobs: update the ignore list with regex expressions (#48268) 2024-06-07 09:34:55 -07:00
Adrian Moldovan 8fc6970b90
[ci] Merge test jobs into a single generic job (#48175) 2024-06-06 21:50:52 +03:00
Adrian Moldovan 26158ee6b4
[testing workflows] Replace push to tags trigger with release published and updated (#48209)
Update push to tag triggers with release trigger
2024-06-06 09:51:02 -07:00
Manish Menaria a746332e01
WooCommerce Blocks: Change label for E2E flaky tests (#48223)
Change label for flaky tests
2024-06-06 20:51:23 +05:30
Adrian Moldovan 7fb40ffc0b
[testing workflows] Migrate release checks to ci.yml (#48113)
* Deprecate pr-smoke-test.yml

* Add configs for each environment

* Add scripts

* Add arguments to playwright command

* Update pnpm scripts and existing e2e projects

* Fix shellcheck warning

* Update test env start for Gutenberg stable run

* Add changelog

* Remove unused var

* Set the USE_WP_ENV var

* Configure daily e2e jobs

* Rename some steps

* Add release checks jobs and deprecate  smoke-test-release.yml

* Deprecate  smoke-test-release.yml

* Add tests-release-checks.yml to trigger ci.yml on push to tags

* Add the pull_request trigger to test the workflow

* Remove the pull_request trigger to test the workflow

* Add the pull_request trigger to test the workflow

* Add the tag input in ci.yml

* Remove import and use core reference

* Only build if build-plugin is true

* Use release-artifact instead

* Split setup-monorepo step

* Use tag: 'nightly' to test

* Use inputs.tag directly in the wp-env setup step

* Add script to override the wp-env config

* Run the env config script in ci

* Set the artifact name

* Fix workflow syntax

* Add changelog

* Validate RELEASE_TAG and ARTIFACT_NAME

* Use real ref type and name

* Use real ref type and name

* Use real ref type and name

* Use github context instead

* Test with 9.0.0-beta.2

* Add push to tags trigger directly in ci.yml

* Configure one job to run with nightly-checks

* Remove empty lines

* Format events array one element per line

* Format events array one element per line
2024-06-05 13:02:54 -03:00
Manish Menaria 307d893549
WooCommerce Blocks: Added a GitHub Action to create issues for flaky E2E tests (#47758)
* Add flaky test reporting and issue creation for Blocks

This commit introduces the functionality for identifying and reporting flaky tests within our CI workflow.
- The reporter captures flaky test results and saves them to `flaky-tests` directory.
- If a test fails initially but passes upon retries, it is marked as flaky and a corresponding report is generated.
- The workflow creates GitHub issues for flaky tests, aiding in better visibility and tracking of these intermittent issues.

1. **Workflow Changes**:
   - **Archive flaky test reports**: Adds a step to archive flaky test reports generated during the test runs.
   - **Merge flaky test reports**: Introduces a new step to merge all flaky test reports from different shards.
   - **Create GitHub issues for flaky tests**: Implements a job that uses the `@wordpress/report-flaky-tests` package to create GitHub issues for detected flaky tests when a PR is not in draft state and flaky test reports are present.

2. **New Flaky Test Reporter**:
   - Adds `flaky-tests-reporter.ts` that defines a custom Playwright reporter for identifying and recording flaky tests.

3. **Playwright Configuration**:
   - Updates `playwright.config.ts` to include the new flaky tests reporter in the list of reporters when running in CI.

4. **Demo Tests**:
   - Adds `demo.spec.ts` containing sample tests to validate the flaky test reporting functionality.

Implementing this feature will help us track and address flaky tests more efficiently, ensuring more stable and reliable test suites.

* Remove draft condition for testing

* 'Merge failures artifacts' job shouldn't touch flaky test artifacts

* Try fixing if condition

* Add required permissions

* Let's try providing all the permissions

* Let's try providing all the permissions

* Create flaky tests issues when PR is merged with trunk

* Update if condition

* Run action for specific paths only

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Remove Demo file

* Remove Demo file

* Use commit hash to use exact version of the script

* Replace label with team: Kirigami & Origami

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-05 19:49:28 +05:30
Sam Seay 2d4295469d
Remove all usage of WOOCOMMERCE_BLOCKS_PHASE and introduce BUNDLE_EXPERIMENTAL_BLOCKS (#47807) 2024-06-05 20:14:16 +12:00
Jonathan Lane e8e1391fa0
Add annotation for test PR e2e test run results (#48029)
* Add annotation for test results

* Minor change to trigger e2e tests

* Fix command, add emoji

* Update emoji

* Add changelog

* Update from PR feedback

* Revert "Add changelog"

This reverts commit 03656848eb.

* Revert "Minor change to trigger e2e tests"

This reverts commit 64e3a87b2d.

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-06-04 13:03:38 -07:00
Sam Seay 296d5535f4
Add summaries to the details sections in the PR template (#48123)
Add summaries to the details sections to make them more obvious in their intent.
2024-06-04 23:52:24 +12:00
Adrian Moldovan 9b251ce318
[testing workflows] Add test environments and deprecate the daily e2e workflow (#48101)
* Deprecate pr-smoke-test.yml

* Add configs for each environment

* Add scripts

* Add arguments to playwright command

* Update pnpm scripts and existing e2e projects

* Fix shellcheck warning

* Update test env start for Gutenberg stable run

* Add changelog

* Remove unused var

* Set the USE_WP_ENV var

* Configure daily e2e jobs

* Rename some steps
2024-06-03 14:12:45 -07:00
Sam Seay b04c8bb9ec
Add path ignore to assess bundle action to reduce how often it runs (#48058) 2024-06-01 00:46:44 +12:00
Sam Seay de5d73061d
Introduce asset size check action to CI (#47880) 2024-05-31 05:08:28 +12:00
jonathansadowski f56d3e3ee0
Update PR template and auto change log with better no-entry support (#44023)
* Update PR template and auto change log

* Ignore .github md files in linting

* Rebuilt monorepo-utils to solve conflict

* Updated regex pattern to include uppercase X

* Move the changelog entry not required checkbox on top of the description.

* Return the comment even if shouldAutomateNoChangelog is false

* Updated tests

* Rebuilt monorepo-utils

---------

Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-05-29 17:06:59 -03:00
Sam Seay 91f91b5d82
Use github proxy to install WC beta tester in playground previews (#47837)
Use github proxy to install beta tester in playground links.
2024-05-27 14:19:56 -03:00
Adrian Moldovan 97e7f86a15
Add the slack-test-report util (#47805)
* Add the slack-test-report util

* Error if the required GitHub context variables are not set

* Error if the required SLACK_CHANNEL env var is not set

* Use a more generic message to be able to report on jobs that are not tests, like build

* Add the alert-on-failure job in ci

* Run for pull_request to test the job

* Setup monorepo first

* Force a linting error

* Better logging

* Use inputs.trigger as report name if set

* Force an e2e test failure

* Set the commit message in the notification

* Use INPUT_TRIGGER for all notifications

* Revert test changes
2024-05-24 13:18:54 -07:00
Adrian Moldovan c97ef43812
[e2e tests] Only run the default project in daily e2e runs (#47771)
Only run default project in daily workflow
2024-05-23 09:38:20 -07:00
Adrian Moldovan 835625c329
Fix reporting step for daily e2e runs (#47764)
* Add condition on github.event_name for lint jobs

* Update a file to trigger a lint job

* Update condition to run only on pull_request

* Revert test change

* Always run the Slack notification step

* Add pull_request test trigger

* Update report step

* Remove branch filter

* Try with push event and branch filter

* Pass secrets to ci.yml

* Update testIgnore pattern for Gutenberg project

* Add changelog

* Remove the test push trigger

* One more test run

* Removed push test trigger
2024-05-23 09:12:10 -07:00
Adrian Moldovan f1489892aa
[ci] Only run lint jobs on pull_request event (#47652) 2024-05-23 07:16:07 -07:00
Bart Kalisz 3b328156a0
Blocks E2E: Cancel running jobs on new commits (#47753) 2024-05-23 11:51:06 +02:00
Adrian Moldovan 13ab9007f6
[testing workflows] Add workflow_call trigger in CI workflow - support daily and other types of runs (#47612)
* Add workflow_call event

* Add tests-daily-run.yml

* Remove workflow version

* Update input value

* Remove secrets from caller workflow

* Rename job

* Check context

* Check context

* Check workflow_call inputs

* Override github.event_name with inputs.trigger

* Fix input name

* Add config for daily e2e tests with Gutenberg

* Update env commands for Gutenberg run

* Add disableHpos env variable in ci-utils

* Revert the trigger to push

* Revert the env variable setting in ci-jobs

* Revert the env variable setting in ci-jobs

* Rebuild utils

* Update test env start command

* Define the Gutenberg Playwright project

* Use path relative to workspace root

* Update events for test projects

* Update events for test projects

* Add changelogs

* Remove the e2e tests with Gutenberg tests from daily runs

* Set the schedule and workflow_dispatch triggers

* Add --project default flag to only run the default tests in CI

* Renamed snapshots to match the new Playwright project name
2024-05-22 11:04:44 -07:00
Adrian Moldovan 0522511a72
[testing worklflows] Consolidate the Slack channel used for test reports (#47611) 2024-05-22 11:01:51 -03:00
Moon f57de64560
Fix broken WooCommerce Beta Tester release action (#47593)
Install and build the core -- removed woocomemrce beta install since it is part of build:zip command
2024-05-21 15:28:00 -07:00
Adrian Moldovan cf6e01d0d6
[ci-jobs] Add disableHpos test environment variable (#47619)
* Add disableHpos test env variable

* Update events for HPOS disabled tests

* Add pull_request event to test the env

* Remove the pull_request event

* Add changelog

* Make the disableHpos var a boolean

* Also set the env in ci.yml

* Remove console log statement

* Print woocommerce_custom_orders_table_enabled

* Run test setup script again to check output

* Capture env setup output and print it

* Get woocommerce_custom_orders_table_enabled value in test env script

* Get more details on HPOS setting

* Remove the DISABLE_HPOS logic from test env setup script

* Use DISABLE_HPOS instead of ENABLE_HPOS everywhere

* Turn off no-console and jest/no-standalone-expect eslint rules for api core tests

* Test API tests with HPOS disabled

* Fix eslint error

* Clean up debug statements

* Remove pull_request test trigger
2024-05-21 18:33:43 -03:00
Adrian Moldovan ccba59ce05
[ci] Only evaluate jobs statuses for pull request event (#47615)
* Condition evaluate status job by github event

* Test reverse condition

* Test with push event

* Revert condition to match pull_request
2024-05-21 18:28:24 -03:00
Adrian Moldovan 3edf17bf22
[testing workflows] Move PHP tests with WP nighly back into ci.yml (#47568)
* Move the PHP WP: nightly tests back into ci.yml

* Add changelog
2024-05-21 18:23:38 -03:00
Adrian Moldovan 1b7279f78c
Fix git clone failing in Highlight Template Changes workflow after Git 2.45.1 release (#47579) 2024-05-17 16:01:19 +03:00
Adrian Moldovan 9b8063f6b2
[testing workflows] Add optional jobs in CI workflow (#47414)
* Include performance tests job in the needed jobs for evaluation

* Use Github api to get the workflow jobs status

* Evaluate project-jobs

* See results

* Check for cancelled jobs

* Add evaluate-project-jobs.js and rename optional jobs

* Fix script path

* Checkout first

* And then fix the path again.

* Update env variable name and be more detailed in what are the required variables

* Use a flat matrix env variable

* Update to trigger test jobs

* Use the jobs name to evaluate optional requirement

* Fix conditions

* Prettier print

* Test lint job failure

* Remove unused MATRIX env variable

* Fix test

* Remove unused MATRIX variable check

* Only run my account e2e tests

* Remove unused function

* Nicer console printing

* Revert change that triggers failing lint job

* Force failing e2e test

* Revert e2e test command and forced failure

* Added test data and test mode

* Added more test data

* Fixed lint errors and warnings

* Exclude .github folder from eslintignore

* Change to trigger everything

* Revert change to trigger everything
2024-05-16 13:31:17 -07:00
Jonathan Lane ad19ff51a3
Add Buildkite reporting for e2e PR and daily runs (#47558)
* Add Buildkite reporting for e2e PR runs

* Set up Buildkite reporting on daily runs

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-16 15:31:21 -03:00
Luigi Teschio 1af8e8a4d4
Blocks: Delete Jest-Puppeteer infrastructure (#46672)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* Try stabilizing the company field test

* Use canvas param instead of manually entering edit mode

* Remove double site editor redirect

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* Fix ESLint errors (#46626)

* Fix ESLint errors

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>

* Blocks: Migrate multiple tests to Playwright

* fix path

* migrate other tests

* add product best sellers E2E tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* migrate jest-puppetter E2E tests to Playwright

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Blocks: Delete Jest-Puppeteer infrastructure

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Remove obsolete waitForLoadState call

* improve E2E tests

* fix E2E tests

* improve E2E tests

* remove old test

* remove not necessary test

* fix number product

* fix E2E test

* fix number of products

* fix product count

* refactor store notice E2E tests

* update string

* fix E2E test

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 14:22:36 +02:00
Jonathan Lane 6e8a922943
Update stalebot workflow for flaky tests (#47484)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-14 16:02:18 -07:00
Adrian Moldovan 7b96dfca67
[e2e tests] Remove BuildKite reporter (#47449)
* Remove BuildKite reporter

* Changelog

* Remove BuildKite reporter from api tests
2024-05-14 10:25:17 +01:00
Ron Rennick b67896e2aa
update monorepo infrastructure target label (#47424)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-05-13 12:29:57 -05:00
Adrian Moldovan 4ba770cbba
Update concurrency group for community label workflow (#47355) 2024-05-13 17:49:08 +03:00
Bart Kalisz 30756f74e3
Blocks E2E: Refactor configs and workflow (#46409) 2024-05-13 14:58:26 +02:00
nigeljamesstevenson 0cd8740a85
Ensure the cherry pick operation only executes against `trunk` (#47312)
* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-release-highlight-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update README.md

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update cherry pick workflow to only execute against trunk

* Update workflow to add safety checks before accessing nested properties

* Update workflow to add safety checks before accessing nested properties

* log outputs for debugging

* log outputs for debugging

* log outputs for debugging

* log outputs for debugging

* log outputs for debugging

* log outputs for debugging

* log outputs for debugging

* sync files pre PR
2024-05-11 22:15:53 +01:00
nigeljamesstevenson 1ce0f14de2
Update/workflow for rest api slack notifications (#47278)
* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-release-highlight-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update README.md

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* Update test-assistant-api-rest-change-tracker.yml

* update readme.md

* workflow updates

* Add script to determine milestone date

* udpate workflow

* udpate workflow

* Update to ensure variable is added to

* Update release highlight workflow

* Update workflows to ensure repo is checked out before referencing script
2024-05-11 21:14:06 +01:00
Adrian Moldovan 981fca33d6
[testing workflows] Fix for multi-line commit message not triggering tests (#47353) 2024-05-10 10:12:36 -03:00
Adrian Moldovan a9e7acf04f
Use @octokit/action and @actions/core versions instead of latest workflows (#47348) 2024-05-10 10:10:41 -03:00
Jonathan Lane 396c29d3ec
Install and set up BuildKite test analytics (#47202)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-05-10 11:47:23 +03:00
Sam Seay 54eba223b8
Add a basic blueprint to create WP Playground previews for pull requests. (#46761) 2024-05-09 17:30:35 +12:00
Ron Rennick 15f087da06
Update community PR assignment list for vortex (#47225)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-05-07 10:16:37 -07:00
dependabot[bot] 98a77e0715
Bump tj-actions/changed-files from 37 to 41 in /.github/workflows (#43223)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 37 to 41.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v37...v41)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-07 09:27:28 -07:00
Jonathan Lane 1671523cc0
Remove upload plugin test from Slack reporting on daily (#47067)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-07 14:40:12 +03:00
Adrian Moldovan de91a0881d
[ci-jobs] Add support for github event and include HPOS disabled e2e tests in ci (#46922)
* Update env setup script to disable hpos

* Use DISABLE_HPOS instead of ENABLE_HPOS

* Log HPOS state

* Configure project for core e2e with HPOS disabled

* Add event argument for ci-jobs util

* Add event option for test jobs

* Add support for github events

* Add changelog

* Configure HPOS tests to run on pull_request

* Fix utils tests for undefined commandVars

* Added some tests for the event configuration

* Revert event for HPOS e2e to push

* Use matrix name in artifact name to avoid duplication

* Test with pull_request event

* Use job-index for unique artifacts names

* Revert event for HPOS e2e to push

* Add api tests for HPOS disabled

* Use unique artifact name for api tests

* Revert event for HPOS disabled api tests to push

* Rebuild monorepo utils to fix a merge conflict

* Updated wording
2024-05-01 10:36:24 -07:00
Adrian Moldovan b95293a99a
[e2e workflows] Increase actions timeout to 90 minutes for faily and release workflows (#47049) 2024-04-30 09:13:59 -07:00
Adrian Moldovan dc2cf822f2
[e2e tests] Update max failures number to 90 (#47019) 2024-04-29 16:38:38 +03:00
dependabot[bot] 3d8e20c62c
Bump octokit from 2.1.0 to 3.1.2 (#42891)
* Bump octokit from 2.1.0 to 3.1.2

Bumps [octokit](https://github.com/octokit/octokit.js) from 2.1.0 to 3.1.2.
- [Release notes](https://github.com/octokit/octokit.js/releases)
- [Commits](https://github.com/octokit/octokit.js/compare/v2.1.0...v3.1.2)

---
updated-dependencies:
- dependency-name: octokit
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Rename env variable

* Add changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-26 10:52:25 -03:00
Adrian Moldovan d57ff87cb3
[e2e tests] Fix blocks tests failing with Gutenberg active (#46842)
* Fix plugin slug for reporting

* Comment out setting of woocommerce_coming_soon

* Add canvas utility

* Update create-cart-block.spec.js to use canvas instead of page

* Update create-checkout-block.spec.js to use canvas instead of page

* Extract common editor actions into editor utils

* Add changelog

* Update post and page creation tests to use canvas

* Update create-woocommerce-blocks.spec.js to use canvas

* Activate Gutenberg to test changes

* Remove plugins listing from env setup script

* Fix eslint errors

* Remove redundant env setup script call

* Install Gutenberg for test in CI

* Test with Gutenberg

* Remove Gutenberg

* Fix block editor variable product test

* Revert "Fix block editor variable product test"

This reverts commit cd004530a7.

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-23 13:38:19 -07:00
nigeljamesstevenson aba7cb753b
Update test-assistant-api-rest-change-tracker.yml 2024-04-22 13:28:25 +01:00
nigeljamesstevenson ab7d2dbb01
Update test-assistant-release-highlight-tracker.yml 2024-04-22 13:28:14 +01:00
Leif Singer d1be68b88c
Update @woo.com email addresses to @woocommerce.com (#46387)
* update @woo.com email addresses

* update %40woo.com email address

* add changelog file

* update docs manifest
2024-04-19 21:11:01 +00:00
Jonathan Lane 87ac3d2c85
Add stalebot for flaky e2e test reporter (#46585)
* Add flaky test reporter for flaky e2e test reporter

* Add to stalebot workflow instead

* Update stale action to 9 for node 20

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-17 11:03:12 -03:00
Ron Rennick 9cd793abbc
revert change to community assignment workflow (#46681) 2024-04-17 14:07:50 +01:00
Jonathan Lane 9888ee7f4b
Updated deprecated gh-script action to node 20 variant (#46673)
* Updated deprecated gh-script action to node 20 variant

* Minor change in e2e test to trigger CI

* Revert e2e test change

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-17 12:31:16 +01:00
Adrian Moldovan bed3124b8d
[testing workflows] Fix the plugins setup for daily e2e runs (#46511)
* Move daily site check workflow to deprecated

* Add install-plugin script

* Install plugins script

* Fix the script path, it was moved.

* Set env on job level

* Update working-directory

* Add changelog

* Use the right WC_SUBSCRIPTIONS_REPO variable

* Add a test channel id

* Update smoke-test-daily.yml

* Remove WC Subscriptions

* Update smoke-test-daily.yml

* Switch back the channel ID and remove pull_request trigger
2024-04-13 10:12:48 -07:00
Ron Rennick 4fa2e3822c
Update the monorepo to node v20 (#45148)
* test bumping node to v18

* remove community contributor condition from review assignment

* Add changefile(s) from automation for the following project(s): @woocommerce/tracks, @woocommerce/onboarding, @woocommerce/number, @woocommerce/notices, @woocommerce/navigation, @woocommerce/internal-js-tests, @woocommerce/extend-cart-checkout-block, @woocommerce/expression-evaluation, @woocommerce/explat, @woocommerce/experimental, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/date, @woocommerce/data, @woocommerce/customer-effort-score, @woocommerce/currency, @woocommerce/csv-export, @woocommerce/create-woo-extension, @woocommerce/create-product-editor-block, @woocommerce/components, @woocommerce/api, @woocommerce/admin-e2e-tests, woocommerce-blocks, woocommerce-beta-tester, woocommerce, woo-ai

* bump node to v20

* Add changefile(s) from automation for the following project(s): @woocommerce/tracks, @woocommerce/onboarding, @woocommerce/number, @woocommerce/notices, @woocommerce/navigation, @woocommerce/internal-js-tests, @woocommerce/extend-cart-checkout-block, @woocommerce/expression-evaluation, @woocommerce/explat, @woocommerce/experimental, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/date, @woocommerce/data, @woocommerce/customer-effort-score, @woocommerce/currency, @woocommerce/csv-export, @woocommerce/create-woo-extension, @woocommerce/create-product-editor-block, @woocommerce/components, @woocommerce/api, @woocommerce/admin-e2e-tests, packages/php/remote-specs-validation, woocommerce-blocks, woocommerce-beta-tester, woocommerce, woo-ai

* Add changefile(s) from automation for the following project(s): @woocommerce/tracks, @woocommerce/onboarding, @woocommerce/number, @woocommerce/notices, @woocommerce/navigation, @woocommerce/internal-js-tests, @woocommerce/extend-cart-checkout-block, @woocommerce/expression-evaluation, @woocommerce/explat, @woocommerce/experimental, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/date, @woocommerce/data, @woocommerce/customer-effort-score, @woocommerce/currency, @woocommerce/csv-export, @woocommerce/create-woo-extension, @woocommerce/create-product-editor-block, @woocommerce/components, @woocommerce/api, @woocommerce/admin-e2e-tests, woocommerce-blocks, woocommerce-beta-tester, woocommerce, woo-ai

* add blocks eslint-plugin-woocommerce to project workspace

* add e2e-environment as a peer to e2e-utils

* restore version on @woocommerce/api

* update lock file

* move e2e-environment to devDependencies

* add undefined location check to admin js test

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-04-12 13:49:55 -03:00
Adrian Moldovan 1fee0439d3
[testing workflows] Move metrics job to ci.yml (#46471)
* Move deprecated workflows to deprecated folder

* Configure new test job for metrics

* Add changelog

* Update start command

* Update start command

* Archive metrics results

* Fix script path

* Fix name in archive results condition

* Add the actual run command for pull_request event

* Run with pnpm --filter

* Test run for push event

* Revert test conditions

* Add WP_ARTIFACTS_PATH env variable

* Update path to readme.txt

* Revert github event conditions

* Add CODEVITALS_PROJECT_TOKEN env

* Set WP_ARTIFACTS_PATH on job level

* Add blocks templates in the changes list
2024-04-12 11:46:01 -03:00
Job 28e78fd655
Default to docs and forums (#46520)
* Update triage-replies.yml

we want to default towards docs and forums

* Update 1-bug-report.yml
2024-04-12 09:24:35 +00:00
Alex Florisca 485bc76587
Update CONTRIBUTING.md (#46425)
Removed the paragraph saying WooCommerce Blocks lives in a different repository
2024-04-10 16:11:13 +01:00
Adrian Moldovan 9df545046a
[test reporting] Include list of failed tests in Slack notifications (#46360) 2024-04-10 10:10:08 +03:00
Leif Singer 8ee74ede0e
Update Woo.com references to WooCommerce.com (#46259)
* replace capitalized Woo.com with WooCommerce.com

* replace http URLs

* replace https URLs

* replace developer.woo.com

* add missing version in `@since` tag

* unslash the HTTP_REFERER

* WordPress.Security.ValidatedSanitizedInput.InputNotSanitized

* add changelog file

* add more changelog files

* address linter errors

* address more linter errors

* fix test

* more linter errors
2024-04-09 09:50:15 +01:00
Ron Rennick e9dff60e95
update labels in non-hpos daily workflow (#46246)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-04-05 11:04:47 +03:00
Jonathan Lane 4bce1da492
Update workflow to close support issues as "won't fix/not planned" (#46202)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-04 09:31:53 +03:00
Adrian Moldovan 4e9fc5a90f
[testing workflows] Tweak conditions for Slack alerts and reports publishing jobs (#46031) 2024-04-02 14:40:24 -03:00
Adrian Moldovan 7d6d2c94dd
Include e2e, api and performance tests in ci.yml (#45190)
Co-authored-by: Christopher Allford <6451942+ObliviousHarmony@users.noreply.github.com>
Co-authored-by: Ron Rennick <ron@ronandandrea.com>
2024-03-27 17:21:49 +02:00
Ron Rennick f8f94fa13a
skip PR live build on non-plugin changes (#45891)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-03-26 10:35:22 +02:00