PromucFlow_constructor/.github/workflows
Saroj cf53dbfb23
ci: Allow static split of cypress specs (#29653)
## Description
- Allowing static split of cypress specs in CI runs.
- Optimised the spec allocation by considering the duration history for
each spec.
- Updated the affecting workflows to utilise the static split

#### Type of change
- Workflows
- Cypress-split pugin
## Testing
- Workflow run

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new environment variable to optimize test resource
allocation during CI/CD processes.
- Enhanced Cypress testing with dynamic and static test splitting
strategies.

- **Refactor**
- Refactored Cypress plugin configuration to support conditional test
splitting based on the environment variable.

- **Chores**
- Updated GitHub Actions workflows to include new environment variables
for test runs.

- **Documentation**
- Updated internal documentation to reflect changes in test setup and
execution strategies.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:10:11 +05:30
..
docs fix: remove shared-modules workflow file (#25932) 2023-08-02 12:47:45 +05:30
ad-hoc-deploy-preview.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
add-label.yml ci: Cleaning up CI workflows from warnings and unnecessary logs (#29280) 2023-12-03 14:53:15 +05:30
appsmithctl.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
build-chromatic.yml ci: Adding fetch-depth 0 to chromatic Github workflow (#29371) 2023-12-06 14:07:28 +05:30
build-client-server.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
build-docker-image.yml ci: Cache the docker image (#29369) 2023-12-07 16:59:32 +05:30
build-storybook.yml ci: Adding fetch-depth 0 to chromatic Github workflow (#29371) 2023-12-06 14:07:28 +05:30
ci-debugging.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
ci-merge-check.yml ci: Cleaning up CI workflows from warnings and unnecessary logs (#29280) 2023-12-03 14:53:15 +05:30
ci-sanity.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
ci-smoke.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
ci-test-custom-script.yml ci: Allow static split of cypress specs (#29653) 2023-12-18 17:10:11 +05:30
ci-test-hosted.yml ci: Allow static split of cypress specs (#29653) 2023-12-18 17:10:11 +05:30
ci-test-limited.yml ci: Allow static split of cypress specs (#29653) 2023-12-18 17:10:11 +05:30
ci-test-with-documentdb.yml ci: Allow static split of cypress specs (#29653) 2023-12-18 17:10:11 +05:30
ci-test.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
cleanup-dp.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
client-build.yml ci: Run server/client tests parallel to cypress in TestBuildPush (#29320) 2023-12-06 13:13:04 +05:30
client-lint.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
client-prettier.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
client-unit-tests.yml ci: Run server/client tests parallel to cypress in TestBuildPush (#29320) 2023-12-06 13:13:04 +05:30
close-labeler.yml ci: Fix close-labeler to work on correct repo for issues 2023-04-05 19:08:39 +05:30
copy-labels.yml fix: Use the Appsmith repo for custom github actions (#12366) 2022-03-31 11:46:58 +05:30
CypressAddKnownfailedtests.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
docker-base-image.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
duplicate-issue-detector.yml Disable instance ping check when the disableTelemetry flag is set (#1776) 2020-11-19 08:54:03 +05:30
github-release.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
helm-release.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
integration-tests-command.yml ci: Cleaning up CI workflows from warnings and unnecessary logs (#29280) 2023-12-03 14:53:15 +05:30
integration-tests-with-documentdb-command.yml ci: Cleaning up CI workflows from warnings and unnecessary logs (#29280) 2023-12-03 14:53:15 +05:30
issue-report-config.json Create issue-report-config.json 2020-09-29 15:35:34 +05:30
label-checker.yml ci: Ensure Test Plan Approval for all Engineering pods (#19469) 2023-01-04 12:08:04 +05:30
mastermind-labeler.yml Removing release-drafter github action (#6248) 2021-07-29 18:24:03 +05:30
ok-to-test.yml ci: Remove all extra slash commands yml (#29016) 2023-11-22 15:29:59 +05:30
on-demand-build-docker-image-deploy-preview.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
packer-ami-build.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
perf-test-on-documentdb.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
perf-test-v2.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
perf-test.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
perf-tests-command.yml ci: Cleaning up CI workflows from warnings and unnecessary logs (#29280) 2023-12-03 14:53:15 +05:30
pr-labeler.yml ci: Improve the test file check workflow (#18741) 2022-12-07 14:52:43 +05:30
pr-test-file-check.yml ci: Improve the test file check workflow (#18741) 2022-12-07 14:52:43 +05:30
quality-checks.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
README.md fix: Separated out workflows (#8434) 2021-10-12 16:26:18 +05:30
release-drafter.yml chore: move local dependency to packages (#23395) 2023-05-22 15:55:46 +03:00
rts-build.yml ci: Remove RTS' computation of snapshot version (#29333) 2023-12-05 19:46:41 +05:30
server-build.yml ci: Fix for the junit run-result cache saving issue (#29529) 2023-12-12 14:05:34 +05:30
server-spotless.yml ci: Updating actions/checkout to v4 and defaulting to fetch-depth 1 instead of 0 (#29281) 2023-12-05 13:44:43 +05:30
stale.yml Make stale comment on critical issues more clear 2022-10-27 12:38:34 +05:30
test-build-docker-image.yml ci: Added cron at 6 am ist on tbp ce workflow (#29643) 2023-12-15 19:04:15 +05:30
upgrade-appsmith-tests.yml test: Fix cypress local run (#26652) 2023-08-25 15:06:05 +05:30

The following list describes all the workflows that are configured to run in this repository:

  1. Build RTS Workflow
  2. Appsmith Client Build Workflow
  3. Appsmith External Integration Test Workflow
  4. Appsmith Github Release Workflow
  5. Ok To Test
  6. Appsmith Server Workflow
  7. Test, build and push Docker Image

Utility Actions

  1. Mark stale issues and pull requests
  2. Label PRs based on title
  3. Release Drafter
  4. Remove old artifacts
  5. Sync Community workflow
  6. Potential Duplicate Issues
  7. Mastermind Labeler Workflow

Build RTS Workflow

Workflow file: build-rts.yml Triggered on every commit to the rts folder. This workflow is responsible for building the RTS Node server. There are dummy steps for ui-tests and packaging. (Comment: Useless right now because it does not have ui-test-result)

Appsmith Client Build Workflow

Workflow file: client-build.yml Triggered on every commit to the client folder. This workflow is responsible for building & unit-testing the client side.

Appsmith Server Workflow

Workflow file: server.yml Triggered on every commit to the server folder. This workflow is responsible for building & unit-testing the Java server codebase.

Appsmith External Integration Test Workflow

Workflow file: external-client-test.yml Triggered only by the ok to test command dispatch. This workflow is responsible for building, unit-testing, integration testing and packaging both server and client code base. (Comment: Notably not RTS)

Appsmith Github Release Workflow

Workflow file: github-release.yml Triggered on release event on Github. This workflow is responsible for building client, server and RTS binaries and packaging them to the latest as well as the relevant release tag on Docker.

Ok To Test

Workflow file: ok-to-test.yml Triggered by PR comments. This workflow triggers a repository dispatch for the Appsmith External Integration Test Workflow.

Test, build and push Docker Image

Workflow file: test-build-docker-image.yml Triggered by PR reviews and push to release or master. This workflow is responsible for building client, server and RTS binaries and packaging them to fata container as well as the older separate containers.

Mark stale issues and pull requests

Workflow file: stale.yml

Label PRs based on title

Workflow file: pr-labeler.yml

Release Drafter

Workflow file: release-drafter.yml

Remove old artifacts

Workflow file: remove-old-artifacts.yml

Sync Community workflow

Workflow file: sync-community-repo.yml

Potential Duplicate Issues

Workflow file: duplicate-issue-detector.yml

Mastermind Labeler Workflow

Workflow file: mastermind-labeler.yml