Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automated integration test for noAuth and jwt migration #1301

Closed
16 tasks done
strekm opened this issue Sep 13, 2024 · 0 comments
Closed
16 tasks done

Automated integration test for noAuth and jwt migration #1301

strekm opened this issue Sep 13, 2024 · 0 comments
Assignees
Labels
area/api-gateway Issues or PRs related to api-gateway kind/feature Categorizes issue or PR as related to a new feature.

Comments

@strekm
Copy link
Collaborator

strekm commented Sep 13, 2024

Description

API Gateway module offers zero downtime migration from APIRule v1beta1 to v2alpha1. This is critical functionality helping APIRule users migrate their workloads to newer version of APIRule without experiencing any disruption. Workloads should be available also during migration.

Implement automated test checking if following scenarios:

  • migration of noop APIRule to noAuth
  • migration of allow APIRule to noAuth
  • migration of no_auth APIRule to noAuth
  • migration of Oathkeeper-based jwt APIRule to jwt

If workload under the test will respond with anything else than 200 test should fail.

Implement a shell script that would set up a cluster with Istio and API Gateway installed, that is wrapping migration integration scenarios and running in the background "downtime detector".

This test should be invoked with make test target. This test should executed on main and release branches. Additionally should run on schedule on main branch.

PR:

TODO:

  • Write script that executes a test and sends requests against the workload of an integration test
  • Add make target to execute the script
  • Extend script to run multiple scenarios sequentially
  • Extend script to support requests using a JWT token
  • Increase stability of the tests
  • Add GitHub Action Job that runs on merge to main
  • Add GitHub Action Job that runs on schedule on main
  • Add GitHub Action Job that runs on PR to release branches
  • Update CI/CD documentation
  • After review remove migration test from PR workflow
  • Update CI/CD doc links after PR merge

ACs:

  • green test checking migration scenarios
  • running on main, release and on schedule
    • -> it was sahred in daily on 24.09. that with the current structure of GHA workflows it's better to run it on PR to release branch for now.
  • docu updated

Reasons

DoD:

  • Provide documentation.
  • Verify that your contributions don't decrease code coverage. If they do, explain why this is the case.

Attachments

@strekm strekm added kind/feature Categorizes issue or PR as related to a new feature. area/api-gateway Issues or PRs related to api-gateway labels Sep 13, 2024
@triffer triffer self-assigned this Sep 17, 2024
@triffer triffer assigned mluk-sap and triffer and unassigned triffer and mluk-sap Sep 23, 2024
@strekm strekm closed this as completed Oct 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/api-gateway Issues or PRs related to api-gateway kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

No branches or pull requests

3 participants