Skip to content

Commit

Permalink
charts/portal + charts/druid + CI Pipeline updates
Browse files Browse the repository at this point in the history
  • Loading branch information
gvermeulen7205 committed Nov 2, 2020
1 parent 0ebbd79 commit 3179ed8
Show file tree
Hide file tree
Showing 12 changed files with 53 additions and 12 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ name: Lint and Test Charts

on:
pull_request:
branches:
- master
- unstable
paths:
- 'charts/**'

Expand Down
38 changes: 38 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Contributing to the APIM Helm Charts

Contributions are welcome via GitHub Pull Requests. All PRs should be submitted against the ***unstable*** branch, where they will undergo review by a Broadcom APIM team member.

## How to Contribute

***Note: *** Raising PRs against one Chart at a time will speed up the release process.

1. Fork this repository, develop, and test your changes.
2. Submit a pull request against the ***unstable*** branch.

### Technical Requirements

When submitting a PR make sure that it:
- Must pass internal application testing and GitHub CI jobs for linting and different k8s platforms (Managed by Broadcom and Github Actions).
- Implement changes in both files if the chart contains a _values-production.yaml_ and a _values.yaml_.
- Any change to a chart requires a version bump following [semver](https://semver.org/).

### Documentation Requirements

- A chart's `README.md` must include any additional configuration options.
- The title of the PR starts with chart name (e.g. `[charts/gateway]`)

### PR Approval and Release Process

***Note:*** Check/Raise a bug feature request first, this will save you time if there's something that's already known/in progress.

1. Changes are automatically linted and tested using the [`ct` tool](https://github.com/helm/chart-testing) as a [GitHub action](https://github.com/helm/chart-testing-action). Those tests are based on `helm lint` and `kubeval`
2. Changes are manually reviewed by Broadcom APIM team members.
3. Once the changes are accepted, the PR is tested (if needed) into the Broadcom CI pipeline, the chart is installed and tested (verification and functional tests).
4. When the PR passes all tests, the PR is merged by the reviewer(s) in the GitHub `master` branch.
5. On merge, the Chart is pushed to the layer7 Chart Repository

**Tips:**
* A description. What did you expect to happen? What actually happened? Why do you think the behavior was incorrect?
* Provide any logs or relevant output.
* What version are you running when reproducing issue? What was the last version that the feature worked?
* Anything else that seems relevant.
2 changes: 1 addition & 1 deletion charts/druid/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ maintainers:
- name: Gazza7205
sources:
- https://github.com/CAAPIM/apim-charts
version: 1.0.0
version: 1.0.1
appVersion: 0.17.0
2 changes: 1 addition & 1 deletion charts/druid/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ Get "database-port" based on databaseType value
Portal Docops page
*/}}
{{- define "portal.help.page" -}}
{{- printf "%s" "https://techdocs.broadcom.com/content/broadcom/techdocs/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/4-5.html" -}}
{{- printf "%s" "https://techdocs.broadcom.com/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/5-0.html" -}}
{{- end -}}

{{- define "minio.fullname" -}}
Expand Down
6 changes: 3 additions & 3 deletions charts/portal/Chart.lock
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
dependencies:
- name: druid
repository: file://../druid
version: 1.0.0
version: 1.0.1
- name: mysql
repository: https://charts.helm.sh/stable
version: 1.6.4
Expand All @@ -11,5 +11,5 @@ dependencies:
- name: ingress-nginx
repository: https://kubernetes.github.io/ingress-nginx/
version: 2.15.0
digest: sha256:c12175d024dc2ffa6a6913efff11d870d520e41e24145183577196d582cbced1
generated: "2020-11-02T09:59:34.179782Z"
digest: sha256:392382d58c0ef4abf631c3fdf6c68493bddfeb13f90dd83838023a9bd2054018
generated: "2020-11-02T13:20:19.457382Z"
2 changes: 1 addition & 1 deletion charts/portal/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: v2
appVersion: "5.0.0"
description: CA API Developer Portal
name: portal
version: 2.0.0
version: 2.0.1
type: application
home: https://github.com/CAAPIM/apim-charts
maintainers:
Expand Down
Binary file removed charts/portal/charts/druid-1.0.0.tgz
Binary file not shown.
Binary file added charts/portal/charts/druid-1.0.1.tgz
Binary file not shown.
2 changes: 1 addition & 1 deletion charts/portal/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@ Get "analytics" database name
Portal Docops page
*/}}
{{- define "portal.help.page" -}}
{{- printf "%s" "https://techdocs.broadcom.com/content/broadcom/techdocs/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/4-5.html" -}}
{{- printf "%s" "https://techdocs.broadcom.com/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/5-0.html" -}}
{{- end -}}

{{/*
Expand Down
2 changes: 1 addition & 1 deletion utils/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ $ ./create-tenant.sh -d ./payload.json -n myportalnamespace
The tenant has been added to the database. The tenant info can be found in the tenant_info.json file in the current directory.
Please follow the rest of the instructions at TechDocs to enroll your gateway with the portal.
(https://techdocs.broadcom.com/content/broadcom/techdocs/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/4-5/install-configure-and-upgradpost-installation-tasks/enroll-a-ca-api-gateway.html
(https://techdocs.broadcom.com/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/5-0/install-configure-and-upgrade/post-installation-tasks/enroll-a-layer7-api-gateway.html)
1. You will need to navigate to the portal at <tenantUrl> and create a new API PROXY.
2. Copy the enrollment URL
3. Open your tenant gateway and enroll this gateway with the portal using the URL from step 2.
Expand Down
2 changes: 1 addition & 1 deletion utils/create-tenant.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ function print_steps() {
The tenant has been added to the database. The tenant info can be found in the tenant_info file in the current directory.
Please follow the rest of the instructions at TechDocs to enroll your gateway with the portal.
(https://techdocs.broadcom.com/content/broadcom/techdocs/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/4-5/install-configure-and-upgrade/post-installation-tasks/enroll-a-ca-api-gateway.html)
(https://techdocs.broadcom.com/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/5-0/install-configure-and-upgrade/post-installation-tasks/enroll-a-layer7-api-gateway.html)
1. You will need to navigate to the portal at https://${tenant_id}.${domain} and create a new API PROXY.
2. Copy the enrollment URL
Expand Down
6 changes: 3 additions & 3 deletions utils/portal-migration/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ This guide covers migrating certificates the old Helm2 to the new Helm3 Chart. P
- [Techdocs](https://techdocs.broadcom.com/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/5-0/install-configure-and-upgrade/install-portal-on-docker-swarm/configure-your-dns-server.html)
## Migrate Analytics
The Portal makes use of Minio which acts as a S3 filestore providing a medium to different Cloud Storage solutions. This migration extracts the deep storage data from Minio. Analytics are written to deep storage on an hourly interval, it's important to note that the current hour will not be backed up.
The Portal makes use of Minio which acts as a S3 filestore providing a medium to different Cloud Storage solutions. This migration extracts the deep storage data from Minio. Analytics are written to deep storage on an hourly interval. ***NOTE:*** the current hour is not backed up.
### Export Data
Expand All @@ -104,8 +104,8 @@ From your docker swarm node run the following and copy to a machine ***that has
- ```$ helm repo add portal https://caapim.github.io/apim-charts/```
- ```$ helm repo update```
- ```$ helm install <release-name> portal/portal --set-file "portal.license.value=/path/to/license.xml,portal.registryCredentials=/path/to/docker-secret.yaml" -f <your-values-production.yaml```
3. Update Portal DNS records to point at the Kubernetes Portal
- [Techdocs](https://techdocs.broadcom.com/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/4-5/install-configure-and-upgrade/install-portal-on-docker-swarm/configure-your-dns-server.html)
3. Update Portal DNS records to point at the Kubernetes Portal (the output of the install/upgrade will display the Portal Hostnames you'll need to add)
- [Techdocs](https://techdocs.broadcom.com/us/en/ca-enterprise-software/layer7-api-management/api-developer-portal/5-0/install-configure-and-upgrade/install-portal-on-docker-swarm/configure-your-dns-server.html)
#### Helm 2.x
1. Get your machines local IP Address
Expand Down

0 comments on commit 3179ed8

Please sign in to comment.