Welcome to the FINOS Legend Charm Bundle, sometimes simply called Legend Charm; this component is part of the the Legend project, hosted by FINOS, and provides a simple, efficient and enterprise-ready way to deploy and orchestrate a Legend instance in any type of environments, from developers workstations, up to production.
The Legend Charm follows the same release cycle of the Legend platform; this means that every time a new Legend version is released, a new version (that is, channel, version and revision) is going to be created for this bundle; the name of the (charm) channel will reflect the name of the Legend Release; at the time of writing, latest Legend release is 2022-05-05, which is bundled into the bundle [channel 2022-05/edge, version 104
, revision 104
]((https://charmhub.io/finos-legend-bundle?channel=2022-05/edge); you can read more below about the automatic release process.
The bundle includes several Charms, one for each Legend component:
- mongodb-k8s
- finos-legend-db-k8s
- finos-legend-gitlab-integrator-k8s
- finos-legend-sdlc-k8s
- finos-legend-engine-k8s
- finos-legend-studio-k8s
For a full guide on how to the FINOS Legend bundle, see the legend-integration-juju repository, which will contain detailed information about the following topics:
- Prerequisites
- Install Microk8s and Juju
- Bootstrap Juju and add the Juju Legend Model
- Deploy the Legend Bundle
- Configure a hostname for your Legend Applications
- Setup and Configure GitLab and pass the GitLab application details to the Legend stack
- Accessing the Legend Studio dashboard
- Destroy setup
- Updating Legend applications
- Prerequisites
- Create and setup an AWS cluster
- Set up Ingress
- Install and Bootstrap Juju
- Create a Model
- Deploy the Legend Bundle
- Configure a hostname for FINOS Legend
- TLS Configuration
- gitlab.com Application setup
- Accessing the Legend Studio dashboard
- Destroy setup
- Alternative methods for accessing Legend Studio dashboard
In a Kubernetes cluster of your choice in which you have bootstrapped a Juju Controller, you can deploy the bundle by running the following command:
# Deploy the bundle:
juju deploy finos-legend-bundle --trust --channel=edge
The above command will deploy the latest application bundle published. You can deploy a specific version based on a FINOS Legend release by its year and month (newer than 2022.04.01):
juju deploy finos-legend-bundle --trust --channel=2022-04/edge
The above should yield a model containing all the Legend apps in either
blocked
or waiting
status, and require GitLab configuration to proceed.
This repository has a Github action configured to check if any new FINOS Legend releases have been published. If so, the Github action will pull the FINOS Legend Engine, SDLC, and Studio images defined in the release's manifest.josn
file, pull them, upload them into Charmhub, and release the Legend Charms with those image revisions. For more information on the Github action and how it se set up, see here.
Visit Legend Contribution Guide to learn how to contribute to Legend.
Copyright (c) 2021-present, Canonical
Distributed under the Apache License, Version 2.0.
SPDX-License-Identifier: Apache-2.0