Skip to content

Latest commit

 

History

History
26 lines (22 loc) · 1.61 KB

new-application-team.md

File metadata and controls

26 lines (22 loc) · 1.61 KB

Adding a new application team

Application teams are empowered to deploy, run, and maintain their own software on top of the platform, in a self-service fashion. The efforts that follow allow to:

  • isolate different teams
  • make them more autonomous
  • lower their cognitive load

Checklist

  1. Decide on a reserved Kubernetes namespace e.g. sciety.
  2. Create a Github repository that will contain definitions for all Kubernetes resources. Optionally create a deploy key and add to this repository in github.
  3. Sync this repository by adding a Kustomization for the team, and a Flux Kustomization.
  4. In the kustomizations, create (as needed):
    1. Create a dedicated node pool that will host all workloads in a certain namespace.
    2. Create a dedicated storage class that will configure and tag storage for a namespace.
    3. Create a deployment sync object for the git repository created above, referencing the deploy key secret if created above
  5. Test the setup via the creation of the desired Kubernetes namespace. Note: Make sure to set the annotation to assign workloads to the correct nodepool:
    apiVersion: v1
    kind: Namespace
    metadata:
    name: application-team-1
    annotations:
        elifesciences.org/default-project: application-team-1