The repo file is used to configure global settings for a Git repository. It should be placed in the root of the repository and should have the name repo.ocu.star. The repo file can currently be used to configure:
  • The id of the repository. This is used to reference the repository within Ocuroot state and from other repositories. It should be unique within your organization.
  • Environments to be included in your Ocuroot organization.
As an example, the below repo file will define a single repository named my_repo and four environments: dev, staging, prod-us-east and prod-us-west:
load("github.com/ocuroot/sdk/v0/repo.star", "repo")
load("github.com/ocuroot/sdk/v0/environments.star", "environment")

repo(id="my_repo")

environment("dev", attributes={ "type": "dev" })
environment("staging", attributes={ "type": "staging" })
environment("prod-us-east", attributes={ "type": "prod" })
environment("prod-us-west", attributes={ "type": "prod" })
The environments defined in the repo file will be applied to the Ocuroot organization upon the next deliver operation containing the code change.