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

Added helm chart #141

Merged
merged 1 commit into from
Feb 5, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 23 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,31 @@ jobs:
- name: Build
run: make

- name: Test
- name: Golang Test
run: make native-test

- name: Helm Test
env:
HELM_VERSION: v3.0.3
CT_VERSION: 3.0.0-beta.1
CHART_DIRECTORY: "./charts/quay-operator"
run: |
sudo apt-get -y install yamllint
wget https://get.helm.sh/helm-${HELM_VERSION}-linux-amd64.tar.gz
tar zxf helm-${HELM_VERSION}-linux-amd64.tar.gz
sudo mv linux-amd64/helm /usr/local/bin
rm -rf linux-amd64
pip install wheel
sudo pip install yamale
wget https://github.com/helm/chart-testing/releases/download/v${CT_VERSION}/chart-testing_${CT_VERSION}_linux_amd64.tar.gz
tar zxf chart-testing_${CT_VERSION}_linux_amd64.tar.gz
mkdir $HOME/.ct
mv etc/* $HOME/.ct/
sudo mv ct /usr/local/bin/
helm template ${CHART_DIRECTORY} > quay-operator-yamllint.yml
yamllint quay-operator-yamllint.yml
ct lint

- name: Upload Artifact
uses: actions/upload-artifact@v1
with:
Expand Down
16 changes: 16 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,22 @@ $ kubectl -n quay-enterprise create -f deploy/role_binding.yaml
$ kubectl -n quay-enterprise create -f deploy/operator.yaml
```

#### Helm

The Quay Operator can also be deployed as a [Helm](https://helm.sh/) chart.

Create a new OpenShift project or Kubernetes Namespace

```
$ kubectl create namespace quay-enterprise
```

Deploy the Helm Chart

```
helm install quay-operator ./charts/quay-operator
```


### Deploy a Quay Ecosystem

Expand Down
22 changes: 22 additions & 0 deletions charts/quay-operator/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
17 changes: 17 additions & 0 deletions charts/quay-operator/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
apiVersion: v2
name: quay-operator
description: A Helm Chart for the Quay Operator
sources:
- https://github.com/redhat-cop/quay-operator
type: application
version: 1.0.0
appVersion: 1.0.1
keywords:
- operator
- quay
- registry
icon: https://cdn.freebiesupply.com/logos/thumbs/2x/quay-1-logo.png
home: https://github.com/redhat-cop/quay-operator
maintainers:
- name: sabre1041
email: andy.block@gmail.com
58 changes: 58 additions & 0 deletions charts/quay-operator/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# Quay Operator

The Quay Operator manages the lifecycle of the [Quay](https://www.openshift.com/products/quay) container image registry.

## Introduction

This chart installs the Quay Operator to your Kubernetes based cluster.

## Prerequisites

- Kubernetes 1.7+
- A namespace must be available for deploying the chart within. It is recommended that the namespace `quay-enterprise` be used.

## Installation

To install the chart run the following command:

```bash
$ helm install quay-operator .
```

## Deleting

To uninstall the chart, uninstall the release

```bash
$ helm uninstall quay-operator
```

The command removes all the Kubernetes components associated with the chart and deletes the release.

## Configuration

The following table lists the configuration parameters of the `quay-operator` chart and default values.

| Parameter | Description | Default |
|----------------------------------|-----------------------------------|-------------------------------------------|
| `openshift` | Indicates whether the chart will be deployed to an OpenShift Container Platform environmment | `true` |
| `image.registry` | Registry containing the Operator image | `quay.io` |
| `image.repository` | Repository containing the Operator image | `redhat-cop/quay-operator` |
| `image.tag` | Tag for the Operator image | `appVersion` Chart property |
| `nameOverride` | Override the name of the chart | |
| `fullnameOverride` | Overrides the full name of the chart | |


Specify any desired parameters using the `--set key=value[,key=value]` argument to `helm install`. For example:

```bash
$ helm install \
--set image.pullPolicy=IfNotPresent \
quay-operator .
```

Alternatively, you can use a YAML file that specifies the values while installing the chart. For example:

```bash
$ helm install -f custom_values.yaml .
```
Loading