Skip to content

openclimatefix/ocf-infrastructure

Repository files navigation

OCF Infrastructure

Terraform infrastructure-as-code for cloud environments.

ease of contribution: medium

All Contributors


A repository for managing the cloud infrastructure for the Open Climate Fix organisation. Contains terraform code for defining services and describing environments. Each contextual domain and each deployment environment are specified in folders within the terraform directory, along with reusable modules and unittests.

Repository Structure

ocf-infrastructure:
  terraform: # Contains all the terraform code for OCF's cloud infrastructure
    modules: # Portable terraform modules defining specific cloud infrastructure blocks
    nowcasting: # Specific code for the nowcasting domain's cloud infrastructure
    pvsite: # Specific code for the nowcasting domain's cloud infrastruture
    unittests: # Specific infrastructure code for a environment to test the modules
  local-stack: # Code to run the terraform stack locally for local testing/development
  .github: # Contains github-specific code for automated CI workflows

See the README's in the domain folders for more information on their architecture:

Terraform Overview

Terraform is a declarative language which is used to specify and build cloud environments. To install the CLI locally, ensure Homebrew is installed, then run

$ brew install terraform

If you aren't on Mac or don't want to use Homebrew, check out the official terraform installation instructions.

Pre-Commit

This repository implements a pre-commit config that enables automatic fixes to code when you create a commit. This helps to maintin consistency in the main repo. To enable this, follow the installation instructions on the precommit website.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Peter Dudfield
Peter Dudfield

💻
Flo
Flo

👀
Shanmukh
Shanmukh

💻
lordsonfernando
lordsonfernando

💻
gmlyth
gmlyth

💻
Keenan Johnson
Keenan Johnson

📖
devsjc
devsjc

💻 🎨
wsharpe41
wsharpe41

💻
Pedro Garcia Rodriguez
Pedro Garcia Rodriguez

💻
erikg16
erikg16

💻
Aatman Vaidya
Aatman Vaidya

💻

This project follows the all-contributors specification. Contributions of any kind welcome!