Repository Structure
How to structure your repository for use with Ocuroot
A git repository using Ocuroot will contain a repository configuration file (repo.ocu.star
),
one or more package configuration files (package.ocu.star
), and a local state directory (.ocuroot
).
Basic Structure
Single Package Repository
For repositories containing a single package, you can place the package.ocu.star
file at the root:
Multi-Package Repository (Monorepo)
For monorepos, each package has its own package.ocu.star
file in its directory:
Configuration Files
repo.ocu.star
The repository configuration file defines repository-wide settings and is always located at the root of the repository.
See The Repo File for more information.
package.ocu.star
Package configuration files define individual packages and define the rules to build and deploy them.
See The Package File for more information.
.ocuroot Directory
The .ocuroot
directory stores local state and should never be committed to version control. Add this to your .gitignore
:
This directory contains:
- Authentication tokens (when using repository-specific auth)
- Build cache
- Local configuration