Skip to content
This repository has been archived by the owner on Nov 1, 2022. It is now read-only.

Commit

Permalink
Merge pull request #994 from weaveworks/helm-operator-deployments
Browse files Browse the repository at this point in the history
Updates flux/helm-operator standalone deployment setup
  • Loading branch information
tamarakaufler authored Mar 19, 2018
2 parents 6492293 + 6aaef2b commit 6576049
Show file tree
Hide file tree
Showing 7 changed files with 86 additions and 50 deletions.
13 changes: 13 additions & 0 deletions deploy-helm/flux-helm-release-crd.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: fluxhelmreleases.helm.integrations.flux.weave.works
spec:
group: helm.integrations.flux.weave.works
names:
kind: FluxHelmRelease
listKind: FluxHelmReleaseList
plural: fluxhelmreleases
scope: Namespaced
version: v1alpha
34 changes: 34 additions & 0 deletions deploy-helm/helm-operator-deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: flux-helm-operator
spec:
replicas: 1
strategy:
type: Recreate
template:
metadata:
labels:
name: flux-helm-operator
spec:
serviceAccount: flux
volumes:
- name: git-key
secret:
secretName: flux-git-deploy
containers:
- name: flux-helm-operator
# There are no ":latest" images for helm-operator. Find the most recent
# release or image version at https://quay.io/weaveworks/helm-operator
# and replace the tag here.
image: quay.io/weaveworks/helm-operator:alpha
imagePullPolicy: IfNotPresent
volumeMounts:
- name: git-key
mountPath: /etc/fluxd/ssh
args:
# replace (at least) the following URL
- --git-url=git@github.com:weaveworks/flux-helm-test
- --git-branch=master
- --git-charts-path=charts
2 changes: 1 addition & 1 deletion deploy/flux-deployment.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
apiVersion: extensions/v1beta1
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: flux
Expand Down
47 changes: 0 additions & 47 deletions deploy/helm-operator-deployment.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion site/helm/helm-integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Flux-Helm Integration implementation consists of two parts:

1. *Flux agent* monitors user git repo containing deployment configuration for applications/services, ie Custom Resource manifests. On detecting changes it applies the manifests, resulting in creation or update of Custom Resources.

2. *Helm operator* deals with Helm Chart releases. The operator watches for changes of Custom Resources of kind FluxHelmResource. It receives Kubernetes Events and acts accordingly, installing, upgrading or deleting a Chart release.
2. *Helm operator* deals with Helm Chart releases. The operator watches for changes of Custom Resources of kind FluxHelmRelease. It receives Kubernetes Events and acts accordingly, installing, upgrading or deleting a Chart release.

## More detail

Expand Down
27 changes: 27 additions & 0 deletions site/standalone/installing.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,16 @@ $EDITOR ./deploy/flux-deployment.yaml
kubectl apply -f ./deploy
```

```
Helm users
Create all resources defined in the
[deploy-helm directory](../../deploy-helm/):
$EDITOR ./deploy-helm/helm-operator-deployment.yaml
kubectl apply -f ./deploy-helm
```

Next, download the latest version of the fluxctl client [from github](https://github.com/weaveworks/flux/releases).

Continue to [setup flux](./setup.md)
Expand All @@ -36,6 +46,10 @@ Continue to [setup flux](./setup.md)
The deployment installs Flux and its dependencies. First, change to
the directory with the examples configuration.

### Note

Helm users also need content of the deploy-helm directory.

```
cd deploy
```
Expand Down Expand Up @@ -129,6 +143,19 @@ Flux.
Download the latest version of the fluxctl client
[from github](https://github.com/weaveworks/flux/releases).

## Helm operator (Helm users only)

The Kubernetes deployment configuration file
[helm-operator-deployment.yaml](../../deploy-helm/helm-operator-deployment.yaml) runs the
helm operator, but you'll need to edit it first, at least to supply your
own configuration repo (the `--git-repo` as for flux and the `--git-charts-path`
argument).

```
$EDITOR helm-operator-deployment.yaml
kubectl create -f flux-helm-release-crd.yaml -f helm-operator-deployment.yaml
```

# Next

Continue to [setup flux](./setup.md)
11 changes: 10 additions & 1 deletion site/standalone/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,19 @@ time.
## Connect flux to a repository

First, you need to connect flux to the repository with Kubernetes
manifests. This is achieved by settings the `--git-url` and
manifests. This is achieved by setting the `--git-url` and
`--git-branch` arguments in the
[`flux-deployment.yaml`](../../deploy/flux-deployment.yaml) manifest.

### Helm users

You need to connect the helm-operator to the same repository, pointing
the helm-operator to the git path containing Charts. This is achieved by
setting the `--git-url` and `--git-branch` arguments to the same values
as for flux and setting the `--git-charts-path` argument in the
[`helm-operator-deployment.yaml`](../../deploy-helm/helm-operator-deployment.yaml)
manifest.

## Add an SSH deploy key to the repository

Flux connects to the repository using an SSH key. You have two
Expand Down

0 comments on commit 6576049

Please sign in to comment.