Skip to content

Commit

Permalink
chore: add artifact hub metadata (#372)
Browse files Browse the repository at this point in the history
Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com>
  • Loading branch information
beeme1mr authored Mar 16, 2023
1 parent ee84954 commit c6f539f
Show file tree
Hide file tree
Showing 4 changed files with 76 additions and 12 deletions.
20 changes: 20 additions & 0 deletions chart/open-feature-operator/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,23 @@ version: "v0.2.29" # x-release-please-version
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "v0.2.29" # x-release-please-version

home: https://openfeature.dev
icon: https://open-feature.github.io/open-feature-operator/chart/open-feature-operator/openfeature-logo.png
keywords:
- OpenFeature
- feature flags
- feature toggles
- OpenFeature Operator
- open feature
- open feature operator
- OFO
sources:
- https://github.com/open-feature/open-feature-operator

annotations:
artifacthub.io/operator: "true"
artifacthub.io/category: "integration-delivery"
artifacthub.io/links: |
- name: support
url: https://github.com/open-feature/open-feature-operator/issues
64 changes: 54 additions & 10 deletions chart/open-feature-operator/README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
# OpenFeature Operator

## TL;DR

> This helm chart has a dependency on [cert manager](https://cert-manager.io/docs/installation/)
```
helm repo add openfeature https://open-feature.github.io/open-feature-operator/
helm repo update
helm upgrade -i openfeature openfeature/open-feature-operator
helm upgrade --install open-feature-operator openfeature/open-feature-operator
```

## Introduction
Expand All @@ -19,16 +21,57 @@ The OpenFeature Operator requires [cert manager](https://cert-manager.io/docs/in

## Install

To install/upgrade the chart with the release name `open-feature-operator`:
To install the chart with the release name `open-feature-operator`:

```
helm upgrade -i open-feature-operator openfeature/open-feature-operator
helm repo add openfeature https://open-feature.github.io/open-feature-operator/
helm repo update
helm upgrade --install open-feature-operator openfeature/open-feature-operator
```

This installation will use the default helm configuration, described in the [configuration section](#configuration)
To overwrite these default values use the `--set` flag when calling `helm upgrade` or `helm install`, for example:
To overwrite these default values use the `--set` flag when calling `helm upgrade` or `helm install`, for example:

```
helm upgrade -i open-feature-operator ./chart/open-feature-operator --set sidecarConfiguration.port=8080 --set controllerManager.kubeRbacProxy.resources.limits.cpu=400m
```

## Upgrade

To install the chart with the release name `open-feature-operator`:

```sh
helm repo update
helm upgrade --install open-feature-operator openfeature/open-feature-operator
```

#### Upgrade CRDs

CRDs are not upgraded automatically with helm (https://helm.sh/docs/chart_best_practices/custom_resource_definitions/).
OpenFeature Operator's CRDs are templated, and can be updated apart from the operator itself by using helm's template functionality and piping the output to `kubectl`:

```console
helm template openfeature/open-feature-operator -s templates/{CRD} | kubectl apply -f -
```

For the `featureflagconfigurations.core.openfeature.dev` CRD:

```sh
helm template openfeature/open-feature-operator -s templates/apiextensions.k8s.io_v1_customresourcedefinition_featureflagconfigurations.core.openfeature.dev.yaml | kubectl apply -f -
```

For the `flagsourceconfigurations.core.openfeature.dev` CRD:

```sh
helm template openfeature/open-feature-operator -s templates/apiextensions.k8s.io_v1_customresourcedefinition_flagsourceconfigurations.core.openfeature.dev.yaml | kubectl apply -f -
```

Keep in mind, you can set values as usual during this process:

```console
helm template openfeature/open-feature-operator -s templates/{CRD} --set defaultNamespace=myns | kubectl apply -f -
```

## Uninstall

To uninstall the `open-feature-operator`:
Expand All @@ -40,12 +83,13 @@ helm uninstall open-feature-operator
The command removes all the Kubernetes components associated with the chart and deletes the release.

## Configuration

<a name="configuration"></a>

### Sidecar configuration

| Value | Default | Explanation |
|--------------------------------------------|---------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ------------------------------------------ | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sidecarConfiguration.envVarPrefix` | `FLAGD` | Sets the prefix for all environment variables set in the injected sidecar. |
| `sidecarConfiguration.port` | 8013 | Sets the value of the `XXX_PORT` environment variable for the injected sidecar container. |
| `sidecarConfiguration.metricsPort` | 8014 | Sets the value of the `XXX_METRICS_PORT` environment variable for the injected sidecar container. |
Expand All @@ -54,30 +98,30 @@ The command removes all the Kubernetes components associated with the chart and
| `sidecarConfiguration.image.tag` | current flagd version: `v0.4.1` | Sets the version tag for the injected sidecar container. |
| `sidecarConfiguration.providerArgs` | `""` | Used to append arguments to the sidecar startup command. This value is a comma separated string of key values separated by '=', e.g. `key=value,key2=value2` results in the appending of `--sync-provider-args key=value --sync-provider-args key2=value2` |
| `sidecarConfiguration.defaultSyncProvider` | `kubernetes` | Sets the value of the `XXX_SYNC_PROVIDER` environment variable for the injected sidecar container. There are 3 valid sync providers: `kubernetes`, `filepath` and `http` |
| `sidecarConfiguration.logFormat` | `json` | Sets the value of the `XXX_LOG_FORMAT` environment variable for the injected sidecar container. |
| `sidecarConfiguration.logFormat` | `json` | Sets the value of the `XXX_LOG_FORMAT` environment variable for the injected sidecar container. There are 2 valid log formats: `json` and `console` |
| `sidecarConfiguration.evaluator` | `json` | Sets the value of the `XXX_EVALUATOR` environment variable for the injected sidecar container. |
| `sidecarConfiguration.probesEnabled` | `true` | Enable or Disable Liveness and Readiness probes of the flagd sidecar. When enabled, HTTP probes( paths - `/readyz`, `/healthz`) are set with an initial delay of 5 seconds |

### Operator resource configuration

| Value | Default |
|-------------------------------------------------------------|---------------------------------------------------------------------------------|
| `defaultNamespace` | `open-feature-operator` | [INTERNAL USE ONLY] To override the namespace use the `--namespace` flag. This default is provided to ensure that the kustomize build charts in `/templates` deploy correctly when no `namespace` is provided via the `-n` flag.|
| ----------------------------------------------------------- | ------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `defaultNamespace` | `open-feature-operator` | [INTERNAL USE ONLY] To override the namespace use the `--namespace` flag. This default is provided to ensure that the kustomize build charts in `/templates` deploy correctly when no `namespace` is provided via the `-n` flag. |
| `controllerManager.kubeRbacProxy.image.repository` | `gcr.io/kubebuilder/kube-rbac-proxy` |
| `controllerManager.kubeRbacProxy.image.tag` | `v0.13.1` |
| `controllerManager.kubeRbacProxy.resources.limits.cpu` | `500m` |
| `controllerManager.kubeRbacProxy.resources.limits.memory` | `128Mi` |
| `controllerManager.kubeRbacProxy.resources.requests.cpu` | `5m` |
| `controllerManager.kubeRbacProxy.resources.requests.memory` | `64Mi` |
| `controllerManager.manager.image.repository` | `ghcr.io/open-feature/open-feature-operator` |
| `controllerManager.manager.image.tag` | <!-- x-release-please-start-version --> `v0.2.28` <!-- x-release-please-end --> |
| `controllerManager.manager.image.tag` | `v0.2.29` <!-- x-release-please-version --> |
| `controllerManager.manager.resources.limits.cpu` | `500m` |
| `controllerManager.manager.resources.limits.memory` | `128Mi` |
| `controllerManager.manager.resources.requests.cpu` | `10m` |
| `controllerManager.manager.resources.requests.memory` | `64Mi` |
| `managerConfig.controllerManagerConfigYaml` | `1` |
| `managerConfig.replicas.health.healthProbeBindAddress` | `:8081` |
| `managerConfig.replicas.metrics.bindAddress` | `0.2.29.1:8080` |
| `managerConfig.replicas.metrics.bindAddress` | `127.0.0.1:8080` |
| `managerConfig.replicas.webhook.port` | `9443` |

## Changelog
Expand Down
Binary file added chart/open-feature-operator/openfeature-logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions docs/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ helm upgrade --install openfeature openfeature/open-feature-operator
CRDs are not upgraded automatically with helm (https://helm.sh/docs/chart_best_practices/custom_resource_definitions/).
OpenFeature Operator's CRDs are templated, and can be updated apart from the operator itself by using helm's template functionality and piping the output to `kubectl`:

```sh
```console
helm template openfeature/open-feature-operator -s templates/{CRD} | kubectl apply -f -
```

Expand All @@ -50,7 +50,7 @@ helm template openfeature/open-feature-operator -s templates/apiextensions.k8s.i

Keep in mind, you can set values as usual during this process:

```sh
```console
helm template openfeature/open-feature-operator -s templates/{CRD} --set defaultNamespace=myns | kubectl apply -f -
```

Expand Down

0 comments on commit c6f539f

Please sign in to comment.