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

feat: add helm chart tests for gateway api routes #345

Merged
merged 13 commits into from
Sep 15, 2023

Conversation

leninmehedy
Copy link
Member

@leninmehedy leninmehedy commented Sep 15, 2023

Description

This pull request changes the following:

  • add helm chart tests for gateway-api routes
  • add cluster-role for pod-monitoring-role so that it can access gateway-api resources
  • fix proxy-deployment tests to check if haproxy or envoy-proxy is enabled in values.yaml or not
  • update kubectl-bats Dockerfile to install yq instead of niet for yaml parsing in helm chart test scripts
  • ensure helm-test error causes CI pipeline error

Note

Added a new make command ci-deploy-network as a substitute for deploy-network. This new command allows creating a local kubectl-bats image if it has been updated locally similar to how CI pipeline works.

This command is useful if anyone is writing helm chart tests and needs updating the kubectl-bats image locally before pushing changes (as I had to do as part of this task).

Also updated README to refer to how to debug helm-test locally here: charts/hedera-network/tests/README.md

Related Issues

Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
@leninmehedy leninmehedy linked an issue Sep 15, 2023 that may be closed by this pull request
@github-actions
Copy link

github-actions bot commented Sep 15, 2023

Unit Test Results

16 files  ±0  16 suites  ±0   30s ⏱️ -1s
85 tests ±0  82 ✔️ ±0  3 💤 ±0  0 ±0 
86 runs  ±0  83 ✔️ ±0  3 💤 ±0  0 ±0 

Results for commit e45b670. ± Comparison against base commit 208cf55.

♻️ This comment has been updated with latest results.

Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
…mage for helm-tests

Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
This reverts commit f2de3c0.

Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
@leninmehedy leninmehedy force-pushed the 335-helm-chart-tests-for-gateway-api-routes branch from dcf936e to f13e912 Compare September 15, 2023 07:39
Co-authored-by: Nathan Klick <nathan@swirldslabs.com>
Signed-off-by: Lenin Mehedy <lenin.mehedy@swirldslabs.com>
@sonarcloud
Copy link

sonarcloud bot commented Sep 15, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@leninmehedy leninmehedy merged commit 3936a64 into main Sep 15, 2023
10 checks passed
@leninmehedy leninmehedy deleted the 335-helm-chart-tests-for-gateway-api-routes branch September 15, 2023 21:48
swirlds-automation added a commit that referenced this pull request Nov 3, 2023
## [0.12.0](v0.11.0...v0.12.0) (2023-11-03)

### Features

* add a Gradle task for downloading executable for Kubernetes Kind ([#425](#425)) ([aaa9660](aaa9660))
* add fullstack-gradle-plugin project to GitHub workflow ([#421](#421)) ([7b717ab](7b717ab))
* add Gateway API route for Hedera Explorer ([#466](#466)) ([c53943c](c53943c))
* add Gradle build docker image tasks ([#408](#408)) ([338cf40](338cf40))
* add gradle Helm dependency update task  ([#393](#393)) ([8e3ead5](8e3ead5))
* add gradle Helm release exists task ([#389](#389)) ([0b7ae17](0b7ae17))
* add gradle Helm test task ([#403](#403)) ([591cebb](591cebb))
* add helm chart tests for gateway api routes ([#345](#345)) ([3936a64](3936a64))
* add helm dependency update subcommand ([#377](#377)) ([2b3609d](2b3609d))
* add helm execution gradle task: HelmInstallChartTask ([#304](#304)) ([6a29222](6a29222))
* add helm execution gradle task: HelmUninstallChartTask ([#375](#375)) ([ba6cc63](ba6cc63))
* add helm list releases subcommand ([#380](#380)) ([53d092f](53d092f))
* add helm test subcommand with options ([#376](#376)) ([5d08a32](5d08a32))
* add ifExists option to Gradle Helm uninstall task ([#405](#405)) ([0726725](0726725))
* add minio operator to fullstack-cluster-setup chart ([#453](#453)) ([bf7f6ff](bf7f6ff))
* add prometheus operator to fullstack-cluster-setup ([#460](#460)) ([0313c3a](0313c3a))
* add skipIfExists option for Gradle Helm install task ([#406](#406)) ([ccfbabf](ccfbabf))
* add support for scheduling pods based on node labels, taints, and affinity ([#352](#352)) ([5dd625a](5dd625a))
* Adding fabric8 k8s library and helm client for use in Infra API ([#386](#386)) ([3049fe4](3049fe4))
* Adding topology model classes and junit annotation processing ([#383](#383)) ([9c6930e](9c6930e))
* apply nodeSelector and tolerations to all pods including proxies ([#384](#384)) ([40e737a](40e737a))
* **cli:** add traceId in CLI logs for easier debugging ([#449](#449)) ([a1693c7](a1693c7))
* **cli:** implement chart install, uninstall and upgrade commands ([#454](#454)) ([70fd199](70fd199))
* **cli:** implement cluster create and delete commands ([#446](#446)) ([78be823](78be823))
* **cli:** implement cluster setup command ([#452](#452)) ([89c2662](89c2662))
* **cli:** implement tests and dependency checks for init command ([#438](#438)) ([b69dd99](b69dd99))
* enhance Helm Install to support multiple set and values parameters ([#367](#367)) ([05444df](05444df))
* implement fullstack-cluster-setup chart for shared resources ([#363](#363)) ([e91f465](e91f465))
* parameterize the helm chart namespace value ([#351](#351)) ([6d1c0a5](6d1c0a5))
* scaffold fsnetman CLI with ES6 support ([#424](#424)) ([65e06d9](65e06d9))
* upgrade to gradle 8.4 ([#404](#404)) ([69e769d](69e769d))
* upgrade to org.gradlex:java-module-dependencies:1.4.1 ([#365](#365)) ([ba7c32b](ba7c32b))

### Bug Fixes

* avoid hardcoding mirror-node-explorer rest API in values.yaml ([#413](#413)) ([0fe58c7](0fe58c7))
* **cli:** encapsulate helm and kubectl commands and code cleanup ([#476](#476)) ([1b8c499](1b8c499))
* **cli:** encapsulate Kind commands in a separate wrapper class ([#468](#468)) ([6dc6025](6dc6025))
* store hedera-explorer chart as dependency until next official version is released ([#436](#436)) ([201bda5](201bda5))
* support deploying the chart with custom release name ([#412](#412)) ([619b42b](619b42b))
* uninstall envoy-gateway should also remove gateway-system namespace that it created ([#350](#350)) ([8a2f6e1](8a2f6e1))
* update KeyValuePair.equals to only compare key (not value) ([#347](#347)) ([28222e0](28222e0))
@swirlds-automation
Copy link
Contributor

🎉 This PR is included in version 0.12.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Charts[Gateway] Add Helm Chart Tests For Gateway API Routes
4 participants