diff --git a/README.md b/README.md index cc3d36e3..3a9b58c0 100644 --- a/README.md +++ b/README.md @@ -1,211 +1,4 @@ -# Chart Testing +# Pelorus Next -[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) -[![Go Report Card](https://goreportcard.com/badge/github.com/helm/chart-testing)](https://goreportcard.com/report/github.com/helm/chart-testing) -![ci](https://github.com/helm/chart-testing/workflows/ci/badge.svg) - -`ct` is the the tool for testing Helm charts. -It is meant to be used for linting and testing pull requests. -It automatically detects charts changed against the target branch. - -## Installation - -### Prerequisites - -It is recommended to use the provided Docker image which can be [found on Quay](https://quay.io/helmpack/chart-testing/). -It comes with all necessary tools installed. - -* [Helm](http://helm.sh) -* [Git](https://git-scm.com) (2.17.0 or later) -* [Yamllint](https://github.com/adrienverge/yamllint) -* [Yamale](https://github.com/23andMe/Yamale) -* [Kubectl](https://kubernetes.io/docs/reference/kubectl/overview/) - -### Binary Distribution - -Download the release distribution for your OS from the Releases page: - -https://github.com/helm/chart-testing/releases - -Unpack the `ct` binary, add it to your PATH, and you are good to go! - -### Docker Image - -A Docker image is available at `quay.io/helmpack/chart-testing` with list of -available tags [here](https://quay.io/repository/helmpack/chart-testing?tab=tags). - -### Homebrew - -```console -$ brew install chart-testing -``` - -## Usage - -See documentation for individual commands: - -* [ct](doc/ct.md) -* [ct install](doc/ct_install.md) -* [ct lint](doc/ct_lint.md) -* [ct lint-and-install](doc/ct_lint-and-install.md) -* [ct list-changed](doc/ct_list-changed.md) -* [ct version](doc/ct_version.md) - -For a more extensive how-to guide, please see: - -* [charts-repo-actions-demo](https://github.com/helm/charts-repo-actions-demo) - -## Configuration - -`ct` is a command-line application. -All command-line flags can also be set via environment variables or config file. -Environment variables must be prefixed with `CT_`. -Underscores must be used instead of hyphens. - -CLI flags, environment variables, and a config file can be mixed. -The following order of precedence applies: - -1. CLI flags -1. Environment variables -1. Config file - -Note that linting requires config file for [yamllint](https://github.com/adrienverge/yamllint) and [yamale](https://github.com/23andMe/Yamale). -If not specified, these files are search in the current directory, the `.ct` directory in current directory, `$HOME/.ct`, and `/etc/ct`, in that order. -Samples are provided in the [etc](etc) folder. - -### Examples - -The following example show various way of configuring the same thing: - -#### CLI - -#### Remote repo - -With remote repo: - - ct install --remote upstream --chart-dirs stable,incubator --build-id pr-42 - -#### Local repo - -If you have a chart in current directory and ct installed on the host then you can run: - - ct install --chart-dirs . --charts . - -With docker it works with: - - docker run -it --network host --workdir=/data --volume ~/.kube/config:/root/.kube/config:ro --volume $(pwd):/data quay.io/helmpack/chart-testing:v3.7.1 ct install --chart-dirs . --charts . - -Notice that `workdir` param is important and must be the same as volume mounted. - - -#### Environment Variables - - export CT_REMOTE=upstream - export CT_CHART_DIRS=stable,incubator - export CT_BUILD_ID - - ct install - -#### Config File - -`config.yaml`: - -```yaml -remote: upstream -chart-dirs: - - stable - - incubator -build-id: pr-42 -``` - -#### Config Usage - - ct install --config config.yaml - - -`ct` supports any format [Viper](https://github.com/spf13/viper) can read, i. e. JSON, TOML, YAML, HCL, and Java properties files. - -Notice that if no config file is specified, then `ct.yaml` (or any of the supported formats) is loaded from the current directory, `$HOME/.ct`, or `/etc/ct`, in that order, if found. - - -#### Using private chart repositories - -When adding chart-repos you can specify additional arguments for the `helm repo add` command using `helm-repo-extra-args` on a per-repo basis. -You can also specify OCI registries which will be added using the `helm registry login` command, they also support the `helm-repo-extra-args` for authentication. -This could for example be used to authenticate a private chart repository. - -`config.yaml`: - -```yaml -chart-repos: - - incubator=https://incubator.io - - basic-auth=https://private.com - - ssl-repo=https://self-signed.ca - - oci-registry=oci://nice-oci-registry.pt -helm-repo-extra-args: - - ssl-repo=--ca-file ./my-ca.crt -``` - - ct install --config config.yaml --helm-repo-extra-args "basic-auth=--username user --password secret" - -## Building from Source - -`ct` is built using Go 1.13 or higher. - -`build.sh` is used to build and release the tool. -It uses [Goreleaser](https://goreleaser.com/) under the covers. - -Note: on MacOS you will need `GNU Coreutils readlink`. -You can install it with: - -```console -brew install coreutils -``` - -Then add `gnubin` to your `$PATH`, with: - -```console -echo 'export PATH="$(brew --prefix coreutils)/libexec/gnubin:$PATH"' >> ~/.bash_profile -bash --login -``` - -To use the build script: - -```console -$ ./build.sh -h -Usage: build.sh - -Build ct using Goreleaser. - - -h, --help Display help - -d, --debug Display verbose output and run Goreleaser with --debug - -r, --release Create a release using Goreleaser. This includes the creation - of a GitHub release and building and pushing the Docker image. - If this flag is not specified, Goreleaser is run with --snapshot -``` - -## Releasing - -### Prepare Release - -Before a release is created, versions have to be updated in the examples. -A pull request needs to be created for this, which should be merged right before the release is cut. -Here's a previous one for reference: https://github.com/helm/chart-testing/pull/89 - -### Create Release - -The release workflow is [dispatched from github actions](https://github.com/helm/chart-testing/actions) -Versions must start with a lower-case `v`, e. g. `v3.7.1`. - -## Supported versions - -The previous MAJOR version will be supported for three months after each new MAJOR release. - -Within this support window, pull requests for the previous MAJOR version should be made against the previous release branch. -For example, if the current MAJOR version is `v2`, the pull request base branch should be `release-v1`. - -## Upgrading - -When upgrading from `< v2.0.0` you will also need to change the usage in your scripts. -This is because, while the [v2.0.0](https://github.com/helm/chart-testing/releases/tag/v2.0.0) release has parity with `v1`, it was refactored from a bash library to Go so there are minor syntax differences. -Compare [v1 usage](https://github.com/helm/chart-testing/tree/release-v1#usage) with this (`v2`) version's README [usage](#usage) section above. +> [!WARNING] +> This is NOT the active branch for pelorus. This is _Pelorus Next_, a future iteration of this repo that is not yet active. Please switch to the [master](https://github.com/dora-metrics/pelorus/tree/master) branch for the current active iteration of Pelorus. diff --git a/charts/operators/Chart.yaml b/charts/operators/Chart.yaml index 3714178a..41fb99ca 100644 --- a/charts/operators/Chart.yaml +++ b/charts/operators/Chart.yaml @@ -14,4 +14,4 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 2.0.13-rc.5 +version: 2.0.13-rc.6 diff --git a/charts/operators/values.yaml b/charts/operators/values.yaml index d067dc89..daeeb023 100644 --- a/charts/operators/values.yaml +++ b/charts/operators/values.yaml @@ -1,3 +1,3 @@ --- -grafana_subscription_version: 5.12.0 -prometheus_subscription_version: 0.56.3 +grafana_subscription_version: ">=5.12.0" +prometheus_subscription_version: ">=0.56.3" diff --git a/charts/pelorus/Chart.lock b/charts/pelorus/Chart.lock index afe6b2ce..c84a6a55 100644 --- a/charts/pelorus/Chart.lock +++ b/charts/pelorus/Chart.lock @@ -1,6 +1,6 @@ dependencies: - name: exporters repository: file://./charts/exporters - version: 2.0.13-rc.5 -digest: sha256:8e2357c1c6a1dd97e1875e6faa59cfa04480ed10fa6b96aee01ed00df4fb0b94 -generated: "2024-09-11T14:40:09.478494302Z" + version: 2.0.13-rc.6 +digest: sha256:c8732216313eb1f6ddacb5b7200c9405dd0f24f35ecab0d7c691cc94c9adbd26 +generated: "2024-09-18T19:32:18.988569071Z" diff --git a/charts/pelorus/Chart.yaml b/charts/pelorus/Chart.yaml index f53ec195..5c3ec44f 100644 --- a/charts/pelorus/Chart.yaml +++ b/charts/pelorus/Chart.yaml @@ -14,9 +14,9 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 2.0.13-rc.5 +version: 2.0.13-rc.6 dependencies: - name: exporters - version: 2.0.13-rc.5 + version: 2.0.13-rc.6 repository: file://./charts/exporters diff --git a/charts/pelorus/charts/exporters/Chart.yaml b/charts/pelorus/charts/exporters/Chart.yaml index b293ce6b..9950f8be 100644 --- a/charts/pelorus/charts/exporters/Chart.yaml +++ b/charts/pelorus/charts/exporters/Chart.yaml @@ -14,4 +14,4 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 2.0.13-rc.5 +version: 2.0.13-rc.6 diff --git a/charts/pelorus/charts/exporters/templates/_deployment.yaml b/charts/pelorus/charts/exporters/templates/_deployment.yaml index 72e9f463..62b047a2 100644 --- a/charts/pelorus/charts/exporters/templates/_deployment.yaml +++ b/charts/pelorus/charts/exporters/templates/_deployment.yaml @@ -30,7 +30,7 @@ spec: containers: - name: {{ .app_name }} imagePullPolicy: Always - image: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.5" }} + image: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.6" }} volumeMounts: {{- range $config := .custom_certs }} - name: custom-cert-volume-{{$config.map_name}} @@ -62,7 +62,7 @@ spec: value: {{ .image_name }}:{{ .image_tag | default "latest" }} {{- end }} {{- else }} - value: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.5" }} + value: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.6" }} {{- end }} {{- end }} diff --git a/charts/pelorus/charts/exporters/templates/_imagestream_from_image.yaml b/charts/pelorus/charts/exporters/templates/_imagestream_from_image.yaml index 7c8da34e..39ee1307 100644 --- a/charts/pelorus/charts/exporters/templates/_imagestream_from_image.yaml +++ b/charts/pelorus/charts/exporters/templates/_imagestream_from_image.yaml @@ -23,7 +23,7 @@ spec: name: {{ .image_name }}:{{ .image_tag | default "latest" }} {{- end }} {{- else }} - name: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.5" }} + name: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.6" }} # .image_name {{- end }} name: {{ .image_tag | default "stable" }} diff --git a/charts/pelorus/templates/dashboard-sdp-byapp.yaml b/charts/pelorus/templates/dashboard-sdp-byapp.yaml index 8aaa4cb0..a83840f3 100644 --- a/charts/pelorus/templates/dashboard-sdp-byapp.yaml +++ b/charts/pelorus/templates/dashboard-sdp-byapp.yaml @@ -1,5 +1,5 @@ --- -apiVersion: integreatly.org/v1alpha1 +apiVersion: grafana.integreatly.org/v1beta1 kind: GrafanaDashboard metadata: name: dashboard-sdp-byapp diff --git a/charts/pelorus/templates/dashboard-sdp.yaml b/charts/pelorus/templates/dashboard-sdp.yaml index c4fba2a9..25d986fa 100644 --- a/charts/pelorus/templates/dashboard-sdp.yaml +++ b/charts/pelorus/templates/dashboard-sdp.yaml @@ -1,5 +1,5 @@ --- -apiVersion: integreatly.org/v1alpha1 +apiVersion: grafana.integreatly.org/v1beta1 kind: GrafanaDashboard metadata: name: dashboard-sdp diff --git a/charts/pelorus/templates/grafana-thanos-datasource.yaml b/charts/pelorus/templates/grafana-thanos-datasource.yaml index 0b6016fc..6d820601 100644 --- a/charts/pelorus/templates/grafana-thanos-datasource.yaml +++ b/charts/pelorus/templates/grafana-thanos-datasource.yaml @@ -1,5 +1,5 @@ --- -apiVersion: integreatly.org/v1alpha1 +apiVersion: grafana.integreatly.org/v1beta1 kind: GrafanaDataSource metadata: name: prometheus-grafana-datasource diff --git a/charts/pelorus/templates/grafana.yaml b/charts/pelorus/templates/grafana.yaml index d28e2ac2..09b65939 100644 --- a/charts/pelorus/templates/grafana.yaml +++ b/charts/pelorus/templates/grafana.yaml @@ -1,5 +1,5 @@ --- -apiVersion: integreatly.org/v1alpha1 +apiVersion: grafana.integreatly.org/v1beta1 kind: Grafana metadata: name: grafana-oauth diff --git a/pelorus-operator/Makefile b/pelorus-operator/Makefile index 1a1a9664..4c89410b 100644 --- a/pelorus-operator/Makefile +++ b/pelorus-operator/Makefile @@ -3,7 +3,7 @@ # To re-generate a bundle for another specific version without changing the standard setup, you can: # - use the VERSION as arg of the bundle target (e.g make bundle VERSION=0.0.2) # - use environment variables to overwrite this value (e.g export VERSION=0.0.2) -VERSION ?= 0.0.10-rc.5 +VERSION ?= 0.0.10-rc.6 # CHANNELS define the bundle channels used in the bundle. # Add a new line here if you would like to change its default config. (E.g CHANNELS = "candidate,fast,stable") diff --git a/pelorus-operator/bundle/manifests/pelorus-operator.clusterserviceversion.yaml b/pelorus-operator/bundle/manifests/pelorus-operator.clusterserviceversion.yaml index 8394e161..b777a569 100644 --- a/pelorus-operator/bundle/manifests/pelorus-operator.clusterserviceversion.yaml +++ b/pelorus-operator/bundle/manifests/pelorus-operator.clusterserviceversion.yaml @@ -49,8 +49,8 @@ metadata: capabilities: Basic Install categories: | Modernization & Migration,Developer Tools,Monitoring,Integration & Delivery - containerImage: quay.io/pelorus/pelorus-operator:0.0.10-rc.5 - createdAt: "2024-09-11T14:40:10Z" + containerImage: quay.io/pelorus/pelorus-operator:0.0.10-rc.6 + createdAt: "2024-09-19T20:50:32Z" description: | Tool that helps IT organizations measure their impact on the overall performance of their organization operatorframework.io/suggested-namespace: pelorus @@ -58,7 +58,7 @@ metadata: operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1 repository: https://github.com/dora-metrics/pelorus/ support: Pelorus Community - name: pelorus-operator.v0.0.10-rc.5 + name: pelorus-operator.v0.0.10-rc.6 namespace: placeholder spec: apiservicedefinitions: {} @@ -189,6 +189,13 @@ spec: - events verbs: - create + - apiGroups: + - apiextensions.k8s.io + resources: + - customresourcedefinitions + verbs: + - get + - list - apiGroups: - charts.pelorus.dora-metrics.io resources: @@ -310,7 +317,7 @@ spec: - delete - list - apiGroups: - - integreatly.org + - grafana.integreatly.org resources: - grafanas - grafanadashboards @@ -322,6 +329,7 @@ spec: - watch - create - delete + - patch - apiGroups: - build.openshift.io resources: @@ -385,7 +393,7 @@ spec: - --metrics-bind-address=127.0.0.1:8080 - --leader-elect - --leader-election-id=pelorus-operator - image: quay.io/pelorus/pelorus-operator:0.0.10-rc.5 + image: quay.io/pelorus/pelorus-operator:0.0.10-rc.6 livenessProbe: httpGet: path: /healthz @@ -487,15 +495,4 @@ spec: provider: name: Red Hat url: https://redhat.com - version: 0.0.10-rc.5 - replaces: pelorus-operator.v0.0.9 - skips: - - pelorus-operator.v0.0.9 - - pelorus-operator.v0.0.8 - - pelorus-operator.v0.0.7 - - pelorus-operator.v0.0.6 - - pelorus-operator.v0.0.5 - - pelorus-operator.v0.0.4 - - pelorus-operator.v0.0.3 - - pelorus-operator.v0.0.2 - - pelorus-operator.v0.0.1 + version: 0.0.10-rc.6 diff --git a/pelorus-operator/bundle/metadata/properties.yaml b/pelorus-operator/bundle/metadata/properties.yaml index 2aa7d6ac..e6264274 100644 --- a/pelorus-operator/bundle/metadata/properties.yaml +++ b/pelorus-operator/bundle/metadata/properties.yaml @@ -2,8 +2,8 @@ dependencies: - type: olm.package value: packageName: prometheus - version: "0.56.3" + version: ">=0.56.3" - type: olm.package value: packageName: grafana-operator - version: "5.12.0" + version: ">=5.12.0" diff --git a/pelorus-operator/config/default/kustomization.yaml b/pelorus-operator/config/default/kustomization.yaml index 4e8ab41c..2fbc125d 100644 --- a/pelorus-operator/config/default/kustomization.yaml +++ b/pelorus-operator/config/default/kustomization.yaml @@ -21,10 +21,10 @@ resources: # [PROMETHEUS] To enable prometheus monitor, uncomment all sections with 'PROMETHEUS'. #- ../prometheus -patchesStrategicMerge: # Protect the /metrics endpoint by putting it behind auth. # If you want your controller-manager to expose the /metrics # endpoint w/o any authn/z, please comment the following line. -- manager_auth_proxy_patch.yaml - - +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +patches: +- path: manager_auth_proxy_patch.yaml diff --git a/pelorus-operator/config/manager/kustomization.yaml b/pelorus-operator/config/manager/kustomization.yaml index a28eaa8a..007c3322 100644 --- a/pelorus-operator/config/manager/kustomization.yaml +++ b/pelorus-operator/config/manager/kustomization.yaml @@ -5,4 +5,4 @@ kind: Kustomization images: - name: controller newName: quay.io/pelorus/pelorus-operator - newTag: 0.0.10-rc.5 + newTag: 0.0.10-rc.6 diff --git a/pelorus-operator/config/manifests/bases/pelorus-operator.clusterserviceversion.yaml b/pelorus-operator/config/manifests/bases/pelorus-operator.clusterserviceversion.yaml index 8d213f96..ba2bd3dc 100644 --- a/pelorus-operator/config/manifests/bases/pelorus-operator.clusterserviceversion.yaml +++ b/pelorus-operator/config/manifests/bases/pelorus-operator.clusterserviceversion.yaml @@ -6,7 +6,7 @@ metadata: capabilities: Basic Install categories: | Modernization & Migration,Developer Tools,Monitoring,Integration & Delivery - containerImage: quay.io/pelorus/pelorus-operator:0.0.10-rc.5 + containerImage: quay.io/pelorus/pelorus-operator:0.0.10-rc.6 description: | Tool that helps IT organizations measure their impact on the overall performance of their organization operatorframework.io/suggested-namespace: pelorus diff --git a/pelorus-operator/config/rbac/pelorus_manager_role.yaml b/pelorus-operator/config/rbac/pelorus_manager_role.yaml index 339669c9..e660b961 100644 --- a/pelorus-operator/config/rbac/pelorus_manager_role.yaml +++ b/pelorus-operator/config/rbac/pelorus_manager_role.yaml @@ -66,7 +66,7 @@ rules: - list # Required by the Grafana and Prometheus operators - apiGroups: - - "integreatly.org" + - "grafana.integreatly.org" resources: - "grafanas" - "grafanadashboards" @@ -78,6 +78,7 @@ rules: - watch - create - delete + - patch # Required to build and deploy exporters from the source code - apiGroups: - "build.openshift.io" diff --git a/pelorus-operator/config/rbac/role.yaml b/pelorus-operator/config/rbac/role.yaml index e381d665..4b11d407 100644 --- a/pelorus-operator/config/rbac/role.yaml +++ b/pelorus-operator/config/rbac/role.yaml @@ -27,7 +27,14 @@ rules: - events verbs: - create - +# We need to be able to list CRDS +- apiGroups: + - "apiextensions.k8s.io" + resources: + - "customresourcedefinitions" + verbs: + - get + - list ## ## Rules for charts.pelorus.dora-metrics.io/v1alpha1, Kind: Pelorus ## diff --git a/pelorus-operator/helm-charts/pelorus/Chart.lock b/pelorus-operator/helm-charts/pelorus/Chart.lock index fa895dd6..aa1d3ebf 100644 --- a/pelorus-operator/helm-charts/pelorus/Chart.lock +++ b/pelorus-operator/helm-charts/pelorus/Chart.lock @@ -1,6 +1,6 @@ dependencies: - name: exporters repository: file://./charts/exporters - version: 2.0.13-rc.5 -digest: sha256:8e2357c1c6a1dd97e1875e6faa59cfa04480ed10fa6b96aee01ed00df4fb0b94 -generated: "2024-09-11T14:40:09.706222738Z" + version: 2.0.13-rc.6 +digest: sha256:c8732216313eb1f6ddacb5b7200c9405dd0f24f35ecab0d7c691cc94c9adbd26 +generated: "2024-09-18T20:25:43.326629751Z" diff --git a/pelorus-operator/helm-charts/pelorus/Chart.yaml b/pelorus-operator/helm-charts/pelorus/Chart.yaml index c684c4b3..87f43cef 100644 --- a/pelorus-operator/helm-charts/pelorus/Chart.yaml +++ b/pelorus-operator/helm-charts/pelorus/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 dependencies: - name: exporters repository: file://./charts/exporters - version: 2.0.13-rc.5 + version: 2.0.13-rc.6 description: A Helm chart for Kubernetes name: pelorus type: application -version: 2.0.13-rc.5 +version: 2.0.13-rc.6 diff --git a/pelorus-operator/helm-charts/pelorus/charts/exporters/Chart.yaml b/pelorus-operator/helm-charts/pelorus/charts/exporters/Chart.yaml index b293ce6b..9950f8be 100644 --- a/pelorus-operator/helm-charts/pelorus/charts/exporters/Chart.yaml +++ b/pelorus-operator/helm-charts/pelorus/charts/exporters/Chart.yaml @@ -14,4 +14,4 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 2.0.13-rc.5 +version: 2.0.13-rc.6 diff --git a/pelorus-operator/helm-charts/pelorus/charts/exporters/templates/_deployment.yaml b/pelorus-operator/helm-charts/pelorus/charts/exporters/templates/_deployment.yaml index 72e9f463..62b047a2 100644 --- a/pelorus-operator/helm-charts/pelorus/charts/exporters/templates/_deployment.yaml +++ b/pelorus-operator/helm-charts/pelorus/charts/exporters/templates/_deployment.yaml @@ -30,7 +30,7 @@ spec: containers: - name: {{ .app_name }} imagePullPolicy: Always - image: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.5" }} + image: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.6" }} volumeMounts: {{- range $config := .custom_certs }} - name: custom-cert-volume-{{$config.map_name}} @@ -62,7 +62,7 @@ spec: value: {{ .image_name }}:{{ .image_tag | default "latest" }} {{- end }} {{- else }} - value: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.5" }} + value: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.6" }} {{- end }} {{- end }} diff --git a/pelorus-operator/helm-charts/pelorus/charts/exporters/templates/_imagestream_from_image.yaml b/pelorus-operator/helm-charts/pelorus/charts/exporters/templates/_imagestream_from_image.yaml index 7c8da34e..39ee1307 100644 --- a/pelorus-operator/helm-charts/pelorus/charts/exporters/templates/_imagestream_from_image.yaml +++ b/pelorus-operator/helm-charts/pelorus/charts/exporters/templates/_imagestream_from_image.yaml @@ -23,7 +23,7 @@ spec: name: {{ .image_name }}:{{ .image_tag | default "latest" }} {{- end }} {{- else }} - name: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.5" }} + name: quay.io/pelorus/pelorus-{{ .exporter_type }}-exporter:{{ .image_tag | default "v2.0.13-rc.6" }} # .image_name {{- end }} name: {{ .image_tag | default "stable" }} diff --git a/pelorus-operator/helm-charts/pelorus/templates/dashboard-sdp-byapp.yaml b/pelorus-operator/helm-charts/pelorus/templates/dashboard-sdp-byapp.yaml index 8aaa4cb0..5f7b44ae 100644 --- a/pelorus-operator/helm-charts/pelorus/templates/dashboard-sdp-byapp.yaml +++ b/pelorus-operator/helm-charts/pelorus/templates/dashboard-sdp-byapp.yaml @@ -1,11 +1,14 @@ --- -apiVersion: integreatly.org/v1alpha1 +apiVersion: grafana.integreatly.org/v1beta1 kind: GrafanaDashboard metadata: name: dashboard-sdp-byapp labels: app: grafana spec: + instanceSelector: + matchLabels: + grafana: grafana-oauth json: >- { "annotations": { diff --git a/pelorus-operator/helm-charts/pelorus/templates/dashboard-sdp.yaml b/pelorus-operator/helm-charts/pelorus/templates/dashboard-sdp.yaml index c4fba2a9..f4ef3027 100644 --- a/pelorus-operator/helm-charts/pelorus/templates/dashboard-sdp.yaml +++ b/pelorus-operator/helm-charts/pelorus/templates/dashboard-sdp.yaml @@ -1,11 +1,14 @@ --- -apiVersion: integreatly.org/v1alpha1 +apiVersion: grafana.integreatly.org/v1beta1 kind: GrafanaDashboard metadata: name: dashboard-sdp labels: app: grafana spec: + instanceSelector: + matchLabels: + grafana: grafana-oauth json: >- { "annotations": { diff --git a/pelorus-operator/helm-charts/pelorus/templates/grafana-thanos-datasource.yaml b/pelorus-operator/helm-charts/pelorus/templates/grafana-thanos-datasource.yaml index 0b6016fc..488ae32f 100644 --- a/pelorus-operator/helm-charts/pelorus/templates/grafana-thanos-datasource.yaml +++ b/pelorus-operator/helm-charts/pelorus/templates/grafana-thanos-datasource.yaml @@ -1,24 +1,27 @@ --- -apiVersion: integreatly.org/v1alpha1 -kind: GrafanaDataSource +apiVersion: grafana.integreatly.org/v1beta1 +kind: GrafanaDatasource metadata: name: prometheus-grafana-datasource spec: name: prometheus.yaml - datasources: - - access: "proxy" - basicAuth: true - basicAuthPassword: {{ .Values.openshift_prometheus_basic_auth_pass }} - basicAuthUser: "internal" - editable: false - jsonData: - tlsSkipVerify: true - name: "prometheus" - orgId: 1 - type: "prometheus" - {{- if .Values.bucket_access_point }} - url: "https://thanos-pelorus.{{ .Release.Namespace }}.svc:9092" - {{- else }} - url: "https://prometheus-pelorus.{{ .Release.Namespace }}.svc:9091" - {{- end }} - version: 1 + instanceSelector: + matchLabels: + grafana: grafana-oauth + datasource: + access: "proxy" + basicAuth: true + basicAuthPassword: {{ .Values.openshift_prometheus_basic_auth_pass }} + basicAuthUser: "internal" + editable: false + jsonData: + tlsSkipVerify: true + name: "prometheus" + orgId: 1 + type: "prometheus" + {{- if .Values.bucket_access_point }} + url: "https://thanos-pelorus.{{ .Release.Namespace }}.svc:9092" + {{- else }} + url: "https://prometheus-pelorus.{{ .Release.Namespace }}.svc:9091" + {{- end }} + version: 1 diff --git a/pelorus-operator/helm-charts/pelorus/templates/grafana.yaml b/pelorus-operator/helm-charts/pelorus/templates/grafana.yaml index d28e2ac2..aa348f15 100644 --- a/pelorus-operator/helm-charts/pelorus/templates/grafana.yaml +++ b/pelorus-operator/helm-charts/pelorus/templates/grafana.yaml @@ -1,7 +1,9 @@ --- -apiVersion: integreatly.org/v1alpha1 +apiVersion: grafana.integreatly.org/v1beta1 kind: Grafana metadata: + labels: + grafana: grafana-oauth name: grafana-oauth spec: config: @@ -9,12 +11,12 @@ spec: mode: "console" level: "warn" auth: - disable_login_form: False - disable_signout_menu: True + disable_login_form: "false" + disable_signout_menu: "true" auth.basic: - enabled: True + enabled: "true" auth.anonymous: - enabled: True + enabled: "true" containers: - args: - '-provider=openshift' diff --git a/scripts/chart-test.sh b/scripts/chart-test.sh index 36fa35cb..243bd73e 100755 --- a/scripts/chart-test.sh +++ b/scripts/chart-test.sh @@ -73,14 +73,14 @@ fi GRAFANA_VER_HELM=$(grep grafana_subscription_version charts/operators/values.yaml | cut -d':' -f2 | tr -d ' ') PROMETHEUS_VER_HELM=$(grep prometheus_subscription_version charts/operators/values.yaml | cut -d':' -f2 | tr -d ' ') -if ! grep \""$GRAFANA_VER_HELM"\" pelorus-operator/bundle/metadata/properties.yaml >/dev/null; then +if ! grep "$GRAFANA_VER_HELM" pelorus-operator/bundle/metadata/properties.yaml >/dev/null; then echo "ERROR: Grafana version $GRAFANA_VER_HELM not found in the pelorus-operator/bundle/metadata/properties.yaml" exit 1 else echo "OK: Grafana version $GRAFANA_VER_HELM in sync with the pelorus-operator/bundle/metadata/properties.yaml" fi -if ! grep \""$PROMETHEUS_VER_HELM"\" pelorus-operator/bundle/metadata/properties.yaml >/dev/null; then +if ! grep "$PROMETHEUS_VER_HELM" pelorus-operator/bundle/metadata/properties.yaml >/dev/null; then echo "ERROR: Prometheus version $PROMETHEUS_VER_HELM not found in the pelorus-operator/bundle/metadata/properties.yaml" exit 1 else diff --git a/scripts/pelorus-operator-patches/bundle-patches/01_prometheus_grafana_dependencies.diff b/scripts/pelorus-operator-patches/bundle-patches/01_prometheus_grafana_dependencies.diff index c75fe02f..fac86ead 100644 --- a/scripts/pelorus-operator-patches/bundle-patches/01_prometheus_grafana_dependencies.diff +++ b/scripts/pelorus-operator-patches/bundle-patches/01_prometheus_grafana_dependencies.diff @@ -5,9 +5,9 @@ +- type: olm.package + value: + packageName: prometheus -+ version: "0.56.3" ++ version: ">=0.56.3" +- type: olm.package + value: + packageName: grafana-operator -+ version: "5.12.0" ++ version: ">=5.12.0" diff --git a/scripts/update_projects_version.py b/scripts/update_projects_version.py index a7b9b6d9..f635be86 100755 --- a/scripts/update_projects_version.py +++ b/scripts/update_projects_version.py @@ -147,7 +147,7 @@ def check_prerequisites(destination: Path, force: bool) -> None: ), ) run_command( - "oc get crd grafanas.integreatly.org", + "oc get crd grafanas.grafana.integreatly.org", error_message="Grafana CRD not found", ) run_command(