OpenCRVS
v1.3
v1.3
  • 👋Introduction
  • Product Specifications
    • Functional Architecture
    • Workflow management
    • Status Flow Diagram
    • Users
      • Examples
    • Core functions
      • 1. Notify event
      • 2. Declare event
      • 3. Validate event
      • 4. Register event
      • 5. Print certificate
      • 5. Issue certificate
      • 6. Search for a record
      • 7. View record
      • 8. Correct record
      • 9. Verify record
      • 10. Archive record
      • 11. Vital statistics export
    • Support functions
      • 10. Login
      • 11. Audit
      • 12. Deduplication
      • 13. Performance management
      • 14. Payment
      • 15. Learning
      • 16. User support
    • Admin functions
      • 17. User management
      • 18. Comms management
      • 19. Content management
      • 20. Config management
    • Data functions
      • 21. Legacy data import
      • 22. Legacy paper import
  • Technology
    • Architecture
      • Performance tests
    • Standards
      • FHIR Documents
        • Event Composition
        • Person
        • Registration Task
        • Event Observations
        • Locations
    • Security
    • Interoperability
      • Create a client
      • Authenticate a client
      • Event Notification clients
      • Record Search clients
      • Webhook clients
      • National ID client
      • FHIR Location REST API
      • Other ways to interoperate
  • Default configuration
    • Intro to Farajaland
    • Civil registration in Farajaland
    • OpenCRVS configuration in Farajaland
      • User / role mapping
      • Application settings
      • Declaration forms
      • Certificate templates
    • Business process flows in Farajaland
  • Setup
    • 1. Establish team
    • 2. Gather requirements
    • 3. Installation
      • 3.1 Set-up a local development environment
        • 3.1.1 Install the required dependencies
        • 3.1.2 Install OpenCRVS locally
        • 3.1.3 Starting and stopping OpenCRVS
        • 3.1.4 Log in to OpenCRVS locally
        • 3.1.5 Tooling
      • 3.2 Set-up your own country configuration
        • 3.2.1 Fork your own country configuration repository
        • 3.2.2 Set up administrative address divisions
          • 3.2.2.1 Prepare source file for administrative structure
          • 3.2.2.2 Prepare source file for statistics
        • 3.2.3 Set up CR offices and Health facilities
          • 3.2.3.1 Prepare source file for CRVS Office facilities
          • 3.2.3.2 Prepare source file for health facilities
        • 3.2.4 Set up employees & roles for testing or production
          • 3.2.3.1 Prepare source file for employees
          • 3.2.3.2 Configure role titles
        • 3.2.5 Set up application settings
          • 3.2.5.1 Configuring Metabase Dashboards
        • 3.2.6 Configure certificate templates
        • 3.2.7 Configure declaration forms
          • 3.2.7.1 Configuring an event form
        • 3.2.8 Seeding your local development environment database
          • 3.2.8.1 Clearing your local development environment database
        • 3.2.9 Countryconfig APIs explained
          • 3.2.9.1 Managing language content
      • 3.3 Set-up a server-hosted environment
        • 3.3.1 Provision your server nodes with SSH access
        • 3.3.2 Provision environment
        • 3.3.3 Provision a comms gateway
        • 3.3.4 Set up an SMTP server for OpenCRVS monitoring alerts
        • 3.3.5 Setup DNS A records
        • 3.3.6 Deploy (Automated & Manual)
        • 3.3.7 Seeding & clearing data on a server
        • 3.3.8 Automated & manual backup and manual restore
    • 4. Functional configuration
      • 4.1 Configure application settings
      • 4.2 Configure registration periods and fees
      • 4.3 Create new user roles
      • 4.4 Managing system users
    • 5. Testing
    • 6. Go-live
    • 7. Monitoring
      • 7.1 Application logs
      • 7.2 Infrastructure health
      • 7.3 Routine monitoring checklist
      • 7.4 Setting up alerts
      • 7.5 Managing a Docker Swarm
  • General
    • Contributing
    • Releases
      • v1.3.5: Release notes
      • v1.3.4: Release notes
      • v1.3.2: Release notes
      • v1.3.1: Release notes
      • v1.3.* to v1.3.* Migration notes
      • v1.3.0: Release notes
      • v1.2.* to v1.3.* Migration notes
        • v1.2 to v1.3: Form migration
      • v1.2.1: Release notes
      • Patch: Elasticsearch 7.10.2
      • v1.2.0: Release notes
      • v1.1.* to v1.2.* Migration notes
      • v.1.1.2: Release notes
      • v.1.1.1: Release notes
      • v1.1.0: Release notes
    • Interoperability roadmap
    • Product roadmap
Powered by GitBook
On this page
  • Seeding data on a new server
  • Clearing data on a new server
  1. Setup
  2. 3. Installation
  3. 3.3 Set-up a server-hosted environment

3.3.7 Seeding & clearing data on a server

Previous3.3.6 Deploy (Automated & Manual)Next3.3.8 Automated & manual backup and manual restore

Last updated 1 year ago

Seeding data on a new server

For new server deployments of OpenCRVS, you will need to seed the databases with the country specific data you created in

We have provided an automated Github action: to do this for you. Manual steps are also explained, should you not wish to use the action.

Provision the following environment variables in Github depending on your environment.

Variable
Description

GATEWAY_HOST

The URL to the gateway microservice e.g.: https://gateway.<your-domain>

AUTH_HOST

The URL to the auth microservice e.g.: https://auth.<your-domain>

COUNTRY_CONFIG_HOST

The URL to the country-config microservice e.g.: https://countryconfig.<your-domain>

Option 1: Run the automated seed-data action

As you performed in step , navigate to "Actions", in Github and click "Seed data."

a) You will be required to select the environment that you wish to seed.

b) You will be required to enter the OpenCRVS Core Dockerhub image tag for any tagged build on Dockerhub) to refer to the OpenCRVS Core release of choice. Usually this will be an official release if you have performed no customisations to core. E.G. v1.3.0

Option 2: Run the seed command manually

NOTE: You can manually run the seed command from terminal by navigating to the opencrvs-core directory

cd opencrvs-core

Export all the required variables:


export COUNTRY_CONFIG_HOST=<URL-to-your-country-config-server> \
export AUTH_HOST=<URL-to-your-auth-server> \
export GATEWAY_HOST=<URL-to-your-gateway-server> \
export SUPER_USER_PASSWORD=<your-superuser-password>

Run the seed to server command

yarn seed:prod

After seeding, the OpenHIM password is reset to the default username: root@openhim.org and default password: openhim-password. In production environments, it is very important for you to login to OpenHIM and change the password at the following URL: https://openhim.<your-domain> Store the new password in your password manager software.

Clearing data on a new server

THESE ARE DESTRUCTIVE ACTIONS. ALL YOUR OPENCRVS DATA IS DELETED AND RESTORED TO A FACTORY BACKUP.

Clearing all data on a server

  1. SSH into your server and navigate to the following directory:

cd /opt/opencrvs/infrastructure/
export ELASTICSEARCH_ADMIN_USER=elastic \
export ELASTICSEARCH_ADMIN_PASSWORD=<your elastic password> \
export MONGODB_ADMIN_USER=<your mongo username> \
export MONGODB_ADMIN_PASSWORD=<your mongo password>

3. The clear all script is run like this:

Replace and separate the <REPLICAS> with a space when calling the script: 1, 3 or 5

bash ./clear-all-data.sh <REPLICAS>

After clearing all data on a server, you must re-deploy to the server. This is so that a superuser is recreated allowing you to then re-seed the databases.

It is also possible to clear data on a server manually. This is the equivalent to using the --clear-data=yes parameter in the Deploy script in

2. Ensure that your database are available to the script as environment variables. You can do this by running:

step 3.3.6
secrets
step 3.2
seed-data
3.3.6 Deploy