Setting up Helm

Setting up Helm

FOSSA is distributed as an on-premises application using Helm. Helm is a tool for distributing applications that run on Kubernetes.

Installing helm

To install Helm, follow the instructions in Installing Helm. You should install a version of Helm that is compatible with your Kubernetes cluster. To see the list of compatible versions, see Helm's Version Support Policy.

Once installed, you can verify that your installation succeeded by running helm list. You should see a list of Helm releases installed in your Kubernetes cluster's default namespace. This list might be empty if you have not installed any other Helm charts.

⚠️ helm connects to Kubernetes using the same method as kubectl. If you're unable to connect to your cluster using helm, you should first test that you can connect to your cluster using kubectl cluster-info.

If you are unable to connect using kubectl cluster-info, you should contact your Kubernetes cluster administrator for assistance. FOSSA does not install or manage Kubernetes clusters.

Configuring the fossa Helm repository

In order to install the FOSSA chart using Helm, we need to first add the FOSSA Helm chart repository to your local helm configuration. For details, see The Chart Repository Guide.

FOSSA's official charts are hosted at https://charts.fossa.com. You should add them like this:

# Add the FOSSA Helm chart repository.
$ helm repo add fossa https://charts.fossa.com
"fossa" has been added to your repositories

# Load the latest information from all chart repositories.
$ helm repo update
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "fossa" chart repository
...Successfully got an update from the "stable" chart repository
Update Complete. ⎈Happy Helming!⎈

Testing your FOSSA image credentials

Your account manager should have provided you with FOSSA image credentials. To test them, run:

# Follow the prompts for username and password
$ docker login quay.io

$ docker pull quay.io/fossa/fossa

If pulling this image succeeds, then your credentials are working correctly.

Inspecting the chart (optional)

Now we're ready to download the chart, configure a values file, and install a release of the FOSSA application.

As a best practice, you should always inspect the contents of charts before you install them. In particular, FOSSA's chart bundles:

  • A docs folder containing this installation guide.
  • A CHANGELOG.md of changes between versions of charts, with breaking changes highlighted.
  • A commented values.yaml, with reference documentation for every possible Helm chart value.

To download and inspect the fossa-core chart:

# Download and unpack the chart into a temporary folder
$ helm pull --untardir /tmp/fossa-helm --untar fossa/fossa-core

We can also do the same for one of our sub-charts:

# Download and unpack the sparkle chart into the working directory
$ helm pull --untar fossa/sparkle
# Then, view the commented values file for the Sparkle sub-chart
$ less sparkle/values.yaml

Our sub-charts include:

NamePurposeRequired
faktoryTask SchedulerYes
fetchers-apiDependency ResolutionYes
hubbleQuick Import and Archive Upload supportYes
minioSelf-hosted S3 StorageNo
postgresSelf-hosted DatabaseNo
redisCache/DatabaseYes
sparkleAnalysis ingestion service for FOSSA.Yes

📘

To retrieve an up-to-date list of sub-charts, be sure to inspect fossa-core/Charts.yaml