Skip to content

Conversation

@eamonnmoloney
Copy link
Contributor

@eamonnmoloney eamonnmoloney commented Jun 20, 2025

Which problem does the PR fix?

closes: #3671

What's in this PR?

Checklist

Please make sure to follow our Contributing Guide.

Before opening the PR:

  • In the repo's root dir, run make go.update-golden-only.
  • There is no other open pull request for the same update/change.
  • Tests for charts are added (if needed).
  • In-repo documentation are updated (if needed).

After opening the PR:

  • Did you sign our CLA (Contributor License Agreement)? It will show once you open the PR.
  • Did all checks/tests pass in the PR?

@github-actions github-actions bot added area/ci version/8.8 Camunda applications/cycle version tool/github-actions version/8.7 Camunda applications/cycle version labels Jun 20, 2025
@hamza-m-masood hamza-m-masood force-pushed the 8.8-integration-test-playwright branch from 5a448ee to 0c3461d Compare June 23, 2025 19:00
@github-actions github-actions bot added tool/script version/8.4 Camunda applications/cycle version version/8.5 Camunda applications/cycle version version/8.6 Camunda applications/cycle version labels Jun 25, 2025
@hamza-m-masood hamza-m-masood force-pushed the 8.8-integration-test-playwright branch from a1ff59d to f46a18a Compare June 26, 2025 21:03
@hamza-m-masood
Copy link
Contributor

Ready to review.

Here are some sample workflows:

nightly case with basic auth, keycloak auth, and opensearch for 8.8: https://github.com/camunda/camunda-platform-helm/actions/runs/15916309586/job/44894499579
Opensearch is currently not working because a model can't be found in operate. This can be fixed outside the scope of this PR.

PR case: https://github.com/camunda/camunda-platform-helm/actions/runs/15914619817/job/44890001861
Two scenarios in one PR case for 8.8. basic auth and keycloak with varying integration tests.

@hamza-m-masood hamza-m-masood marked this pull request as ready for review June 27, 2025 02:17
@hamza-m-masood hamza-m-masood requested a review from a team as a code owner June 27, 2025 02:17
@hamza-m-masood hamza-m-masood requested review from aabouzaid and jessesimpson36 and removed request for aabouzaid June 27, 2025 02:17
@eamonnmoloney eamonnmoloney force-pushed the 8.8-integration-test-playwright branch from 1b52ad4 to a5f35b3 Compare June 27, 2025 07:18
@eamonnmoloney eamonnmoloney changed the title 8.8 integration test playwright feat: 8.8 integration test playwright Jun 27, 2025
hamza-m-masood and others added 10 commits June 27, 2025 10:00
Enhanced integration testing by adding Playwright tests for Camunda
Platform 8.8. Updated workflow to include tests for version 8.8.
Introduced new configuration files and environment variables to support
the tests. This ensures compatibility and functionality for the latest
platform version.
Commented out several workflow steps related to namespace creation,
deployment secrets, and test execution to streamline the CI process.
Added Playwright test setup and files to kustomization for better
integration testing. Adjusted environment variables and paths to
support new test configurations
Added new Playwright integration tests for connectors, console, and
identity.
Renamed `login.spec.ts` to `core.spec.ts` to better reflect its purpose.
Updated kustomization.yaml to include new test files.
Revised the structure of the chart matrix generation to include
additional scenario details like `auth` and `exclude`. Commented out
the test workflow temporarily. Updated the test configuration to
reflect new scenario structure, supporting different authentication
methods.
Simplified the matrix generation logic by restructuring the output
format.
Enhanced the workflow inputs to include `auth` and `exclude` parameters.
Re-enabled the `test` job in `test-chart-version.yaml` for improved
testing.
Updated `ci-test-config.yaml` to reflect new scenarios and
configurations.
Re-enabled OIDC authentication and streamlined CI workflows by removing
hardcoded values and uncommenting necessary steps. This enhances
flexibility and ensures proper configuration management. Additionally,
introduced a new YAML file for basic ingress testing and renamed an
existing file for OIDC ingress.
Added new YAML files for integration tests to support different
authentication scenarios, including OIDC and Keycloak. Updated
workflow and task files to accommodate these changes. Commented
out the core test suite temporarily and adjusted the identifier
format in workflows.
Revised the CI configuration to improve scenario handling by replacing
the 'scenarios' key with a structured 'case' object. This change allows
for more detailed scenario attributes such as 'auth' and 'exclude'. The
update aims to enhance the flexibility and clarity of the test matrix
generation and workflow execution. Additionally, deprecated sections
were commented out for potential future removal.
Moved `fetchToken`, `authHeader`, and `requireEnv` functions to a new
`helper.ts` file to reduce code duplication across test files. This
improves maintainability and consistency in handling authentication
and environment variables.
Temporarily comment out sections in GitHub Actions workflows to focus on
specific tests. This change helps isolate issues by reducing complexity
during the debugging process.
hamza-m-masood and others added 10 commits June 27, 2025 10:00
- Moved helper functions to a new `helper.ts` for better modularity.
- Updated imports to reflect the new helper module path.
- Introduced `AUTH_TYPE` to support different authentication methods.
- Commented out a test that requires a model deployment to avoid 404
errors.
- Updated environment and configuration files to include `AUTH_TYPE`.
Updated GitHub Actions and test configurations to support multiple
authentication types and exclusion options. This includes switching
from comma to pipe delimiters for exclusions and introducing a
`TEST_AUTH_TYPE` variable. Unnecessary comments were removed to
streamline the setup process. These changes aim to improve the
flexibility and maintainability of the CI workflows.
this change has 2 parts. the first is that fetchToken will return
empty-string if the auth-type is basic, and the 2nd is that we will
avoid calling fetchToken and instead rely on the authHeader function
which delegates to fetchToken
Re-enabled pull request triggers in the nightly test workflow. Updated
integration test configurations to improve test coverage and accuracy.
Renamed core test files for clarity and added new REST test suite.
Updated the GitHub Actions workflow to include a more descriptive
`TEST_OPENSEARCH_PREFIX`. Renamed ingress files for consistency across
versions. Added keycloak-specific environment variables to the
integration test configuration for enhanced security mapping.
Re-enabled validation and unit tests in GitHub workflows by removing
comments. Updated integration scenarios to use Elasticsearch instead
of base for multiple versions. Adjusted manual-trigger input handling
for flexibility. Added Elasticsearch configuration files for tests.
@eamonnmoloney eamonnmoloney force-pushed the 8.8-integration-test-playwright branch from 70c854a to 940ec82 Compare June 27, 2025 08:00
@hamza-m-masood
Copy link
Contributor

I am approving on behalf of @eamonnmoloney

@eamonnmoloney eamonnmoloney merged commit ef7d0a4 into main Jun 27, 2025
114 checks passed
@eamonnmoloney eamonnmoloney deleted the 8.8-integration-test-playwright branch June 27, 2025 09:41
jessesimpson36 added a commit that referenced this pull request Jun 30, 2025
A recent change introduced extra metadata into the namespace name
#3675

One change that was made is that in the namespace name, the scenario is
added to the namespace.

This part of the change is not okay because it further increases the
likelihood of running into the 63 char limit and gives us the annoyingly
confusing issue  where the namespace from the upgrade workflows conflict
with the setup workflows described by this issue:

#3558

This PR will drop any extra metadata that 3675 introduced into the
namespace name.
@github-actions github-actions bot added version:9.7.0 Issues and PRs related to chart version 9.7.0 version:10.9.0 Issues and PRs related to chart version 10.9.0 version:11.7.0 Issues and PRs related to chart version 11.7.0 version:12.3.0 Issues and PRs related to chart version 12.3.0 version:13.0.0-alpha6 Issues and PRs related to chart version 13.0.0-alpha6 labels Jul 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/ci tool/github-actions tool/script version/8.4 Camunda applications/cycle version version/8.5 Camunda applications/cycle version version/8.6 Camunda applications/cycle version version/8.7 Camunda applications/cycle version version/8.8 Camunda applications/cycle version version:9.7.0 Issues and PRs related to chart version 9.7.0 version:10.9.0 Issues and PRs related to chart version 10.9.0 version:11.7.0 Issues and PRs related to chart version 11.7.0 version:12.3.0 Issues and PRs related to chart version 12.3.0 version:13.0.0-alpha6 Issues and PRs related to chart version 13.0.0-alpha6

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ENHANCEMENT] add Playwright integration testing to 8.8 for keycloak and basic auth scenarios

4 participants