Running Dependencies deployment

Preparation steps

This section explains how to deploy OpenCRVS dependencies grouped in 2 helm charts:

Environment configuration script (yarn environment:init) prepared configuration files (values.yaml) for deployment with default parameters. Navigate to environments folder inside infrastructure repository and review configuration files.

Here is an example directory structure for a development environment:

environments/
├── development
│   ├── dependencies
│   │   └── values.yaml
│   ├── opencrvs-services
│   │   └── values.yaml
│   └── traefik
│       └── values.yaml
└── README.md

A default configuration, created by the yarn environments:init script, is sufficient for inital deployments, but sometimes you may need to adjust TLS / SSL configuration in environments/traefik/values.yaml or tweak some properties here like static storage, etc.

Run dependencies deployment

  1. Navigate to GitHub Actions within infrastructure repository

  2. Select "Deploy Dependencies" action

  3. Select "Target environment" from dropdown menu, all environments created at step should be listed here.

  4. Click "Run workflow" button

Verification steps

  • Verify workflow was completed successfully

  • Verify resources are up and running after deployment:

    • kubectl get namespaces : You should see 2 new namespaces created (traefik, opencrvs-deps-<env>). NOTE: Check how to run kubectl at Kubernetes cluster access.

    • kubectl get pods -n traefik: Make sure traefik pod is up and running

    • kubectl get pods -n opencrvs-deps-<environment> : make sure datastores are up and running. Example output: If monitoring is enabled, you will also see filebeat, metricbeat, kibana pods.

  • Verify that MinIO and Kibana are available:

    • Kibana URL: https://kibana.<your domain> Username and password are stored as Kubernetes secret elasticsearch-opencrvs-users in opencrvs-deps-<environment> namespace.

    • MinIO URL: https://minio.<your domain> . Username and password are stored as Kubernetes secret minio-opencrvs-users in opencrvs-deps-<environment> namespace.

NOTE: Credentials are stored at GitHub secrets or can be fetched namespace opencrvs-deps-<env>.

Last updated