Giter Club home page Giter Club logo

cert-manager-helm-operator's Introduction

Cert Manager Helm Operator

test build release license

A Kubernetes Operator based on the Operator SDK (Helm version) to configure official cert-manager operator helm chart, so it can be installed via OLM without having to do any change on current Helm Charts.

The usual Helm Chart file values.yaml, like:

prometheus:
  enabled: true
  servicemonitor:
    enabled: true
    targetPort: 9402
    path: /metrics
    interval: 30s
podDnsConfig:
  nameservers:
    - 1.1.1.1
    - 8.8.8.8
resources:
   requests:
     cpu: 10m
     memory: 96Mi
   limits:
     cpu: 100m
     memory: 256Mi

Need to be encapsulated into a new custom resource called OperatorConfig:

apiVersion: operatorconfigs.operator.cert-manager.io/v1alpha1
kind: OperatorConfig
metadata:
  name: cluster
spec:
  prometheus:
    enabled: true
    servicemonitor:
      enabled: true
      targetPort: 9402
      path: /metrics
      interval: 30s
  podDnsConfig:
    nameservers:
      - 1.1.1.1
      - 8.8.8.8
  resources:
   requests:
     cpu: 10m
     memory: 96Mi
   limits:
     cpu: 100m
     memory: 256Mi

So the operator will create all helm chart resources, using the custom resource name as a prefix for all resources names.

Quick release

You can easily generate the operator for any particular version of the Cert Manager Helm Chart using the container-build target with a specific VERSION.

  • Command
$ VERSION=1.8.0 make container-build
jetstack/[email protected] downloaded to /home/rael/gh/3scale-ops/cert-manager-helm-operator/helm-charts
docker build -t quay.io/3scale/cert-manager-helm-operator:v1.8.0 .
Sending build context to Docker daemon  321.4MB
Step 1/5 : FROM quay.io/operator-framework/helm-operator:v1.17.0
 ---> b9a34ccc1cc0
Step 2/5 : ENV HOME=/opt/helm
 ---> Using cache
 ---> 28eeebb8f2d5
Step 3/5 : COPY watches.yaml ${HOME}/watches.yaml
 ---> Using cache
 ---> 8ccd06f07a70
Step 4/5 : COPY helm-charts  ${HOME}/helm-charts
 ---> Using cache
 ---> db4111523af7
Step 5/5 : WORKDIR ${HOME}
 ---> Using cache
 ---> 73f0ce5f4901
Successfully built 73f0ce5f4901
Successfully tagged quay.io/3scale/cert-manager-helm-operator:v1.8.0
  • Files generated
$ grep version helm-charts/cert-manager/Chart.yaml
version: v1.8.0
$ tree helm-charts/
helm-charts/
├── README.md
└── cert-manager
    ├── Chart.yaml
    ├── README.md
    ├── templates
    │   ├── NOTES.txt
    │   ├── _helpers.tpl
    │   ├── cainjector-deployment.yaml
...
    │   ├── crds.yaml
    │   ├── deployment.yaml
    │   ├── rbac.yaml
    │   ├── service.yaml
...
    │   ├── webhook-service.yaml
    │   ├── webhook-serviceaccount.yaml
    │   └── webhook-validating-webhook.yaml
    └── values.yaml

For more detailed information, check the documentation available.

Documentation

Contributing

You can contribute by:

  • Raising any issues you find using Cert Manager Helm Operator
  • Fixing issues by opening Pull Requests
  • Submitting a patch or opening a PR
  • Improving documentation
  • Talking about Cert Manager Helm Operator

All bugs, tasks or enhancements are tracked as GitHub issues.

License

Cert Manager Helm Operator is under Apache 2.0 license. See the LICENSE file for details.

cert-manager-helm-operator's People

Contributors

3scale-robot avatar raelga avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.