This repository should contain all the information about the system, to ensure that any change (source code, documentation, policies, users etc.) is tracked.
The main folder that holds the infrastructure for the ti/uat/prod environments is the Core folder. The Dev folder is utilized to develop new features which will be later integrated into the Core folder. Finally, the Scripts folder is a collection of helper scripts to aid in importing existing resources into Terraform configurations and other tasks.
In order to use this repository, you need to do the following:
- Clone this repository.
- Copy the
sentitivedata folder from other loction into theCorefolder of this repo. - Install the AWS CLI tools and Terraform onto your machine.
- Follow the instructions found here and here to get aws profiles set up for the ti/uat/prod environments.
- Run
terraform initin theCorefolder to get everything initialized.
The workflow for developing new features in HydroVIS is as follows:
- Create a new feature branch from the existing
uatbranch. - Copy relevant resources from the
Corefolder into theDevfolder and/or use the existingDev/main.tfas a template for a new feature module. - Fill out the
Dev/sensitive/envs/env.dev.yamlwith the relevant information. - Deploy and test your new features.
- Once development is finished, reintegrate the resources in the
Devfolder into theCorefolder and reset theDevfolder back to how it was originally. - Create a pull request to have your new feature branch merged into the
tibranch.