GithubHelp home page GithubHelp logo

octopushelmchart's Introduction

Octopus Helm Chart

This Helm chart deploys a HA Octopus cluster (or a standalone Octopus instance when the replica count is 1).

This chart is available from the repository hosted at https://octopus-helm-charts.s3.amazonaws.com.

This chart uses the mssql-linux chart as a dependency. See https://github.com/helm/charts/tree/master/stable/mssql-linux for details on configuring that chart.

Kuberenetes v1.16 is required to deploy this chart.

Generate a new master key with this command:

openssl rand 16 | base64

Deploy the chart with the command:

helm repo add octopus https://octopus-helm-charts.s3.amazonaws.com
helm repo update
helm install octopus octopus/octopusdeploy --set octopus.username=admin --set octopus.password=Password01! --set octopus.licenseKeyBase64=<your Octopus license key base64 encoded> --set octopus.acceptEula=Y --set mssql-linux.acceptEula.value=Y --set octopus.masterKey=YOUR_GENERATED_KEY

Typical example of values

octopus:
  image: octopusdeploy/octopusdeploy:2020.5.266
  username: admin
  password: Password01!
  licenseKeyBase64: base 64 encoded license file goes here
  masterKey: build me with 'openssl rand 16 | base64'
  acceptEula: !!str "Y"
  replicaCount: 3
  storageClassName: "azurefile"
  pollingTentacles:
    exposeServices: true
mssql-linux:
  acceptEula:
    value: !!str "Y"
    

Deploying

The chart can be built and published with the script publish-chart.ps1. The commands it uses are shown below.

Package the chart with the command:

helm package .

Download the existing index.yaml file:

aws s3 cp s3://octopus-helm-charts/index.yaml .

Create the new index with the command:

helm repo index . --url https://octopus-helm-charts.s3.amazonaws.com --merge index.yaml

Upload the new files with the command:

aws s3 cp octopusdeploy-0.1.0.tgz s3://octopus-helm-charts
aws s3 cp index.yaml s3://octopus-helm-charts

The bucket can be found at https://s3.console.aws.amazon.com/s3/buckets/octopus-helm-charts/?region=us-east-1&tab=overview.

In Octopus

Create a new release at https://github.com/OctopusSamples/OctopusHelmChart/releases/new.

Run the deployment at https://deploy.octopushq.com/app#/Spaces-542/projects/octopus-server-helm-chart/deployments.

Support

This repository is licensed under the Apache 2.0 and provided as-is with no support.

octopushelmchart's People

Contributors

bobjwalker avatar harrisonmeister avatar hazzik avatar mcasperson avatar nickyheuperman avatar spyder007 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

octopushelmchart's Issues

Deployment errors for "existing" installs

When I first moved Octopus to Kubernetes, I had an existing installation, which means I had a database configured with authentication. I do not, therefore, need the username/password values to be passed in via the environment variables. Likewise, I am using the community edition, so the license key is not required.

The recent changes in moving these values to secrets have caused errors in deploying the helm charts when the values are not given.

Also, I was running into "unbound" errors with the new server log volume mount. I added the same logic to that volume template that exists in the other PVCs to correct the issue on my end.

I created a PR ( #8 ) to address both of these.

Helm install error - issue with statefulset.yaml

Hi all,
I'm having an issue running the helm install of Octopus Deploy as written in the readme here https://github.com/OctopusSamples/OctopusHelmChart)

Executing the following:

helm install octopus octopus/octopusdeploy --set octopus.username=admin --set octopus.password=Password01! --set octopus.acceptEula=Y --set mssql-linux.acceptEula.value=Y --set octopus.masterKey=Px1FZp2ZP4KJHxvIoDsI5A== --namespace octopus-deploy

(Password and Master key have been changed)

Results in the following error:

Error: template: octopusdeploy/templates/statefulset.yaml:5:51: executing "octopusdeploy/templates/statefulset.yaml" at <b64enc>: invalid value; expected string

For your information:

  • helm version
    version.BuildInfo{Version:"v3.6.3", GitCommit:"d506314abfb5d21419df8c7e7e68012379db2354", GitTreeState:"clean", GoVersion:"go1.16.5"}

  • kubectl version

Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.0", GitCommit:"c2b5237ccd9c0f1d600d3072634ca66cefdf272f", GitTreeState:"clean", BuildDate:"2021-08-04T17:56:19Z", GoVersion:"go1.16.6", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"18+", GitVersion:"v1.18.20-eks-8c579e", GitCommit:"8c579edfc914f013ff48b2a2b2c1308fdcacc53f", GitTreeState:"clean", BuildDate:"2021-07-31T01:34:13Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}
WARNING: version difference between client (1.22) and server (1.18) exceeds the supported minor version skew of +/-1

I'm unfortunately a Kubernetes noob, and can't seem to determine where, why, or even if the statefulset.yaml is crapping out, or if it's just me.

Any help would be greatly appreciated.

Fails to pull MSSQL docker image - outdated?

Looks like the docker image for MSSQL in the chart is outdated?

octopusdeploy-mssql-linux-5f99c8c6d9-x666z   0/1     ImagePullBackOff   0          114s

describe:

  Normal   Pulling           11s   kubelet            Pulling image "microsoft/mssql-server-linux:2017-CU5"
  Warning  Failed            10s   kubelet            Failed to pull image "microsoft/mssql-server-linux:2017-CU5": rpc error: code = Unknown desc = Error response from daemon: pull access denied for microsoft/mssql-server-linux, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
  Warning  Failed            10s   kubelet            Error: ErrImagePull
  Normal   BackOff           9s    kubelet            Back-off pulling image "microsoft/mssql-server-linux:2017-CU5"
  Warning  Failed            9s    kubelet            Error: ImagePullBackOff
$ docker login
Authenticating with existing credentials...
Login Succeeded
$ docker pull microsoft/mssql-server-linux:2017-CU5
Error response from daemon: pull access denied for microsoft/mssql-server-linux, repository does not exist or may require 'docker login': denied: requested access to the resource is denied

Sql server is always installed even when mssql-linux.enabled is set to false

Setting the mssql-linux.enabled key to false still install SQL server. The condition on the subchart is not respected.

# The MS SQL subchart values. See https://github.com/helm/charts/tree/master/stable/mssql-linux for more details.
mssql-linux:
  # If enabled, a simple MS SQL server will be deployed. Note that this server is not production ready, as it
  # uses ephemeral storage. A ClusterIP service with the hostname of mssql is also created.
  enabled: false
  # Set the SA password, used by the octopus.connectionString value
  sapassword: Password01!
  # Must be set to "Y" to accept the EULA
  acceptEula:
    value: "N"

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.