Step 1
Beginner
3 min
Projects
Understand what a Bruin project is - the root directory, the .bruin.yml configuration, environments, connections, and secrets.
Bruin CLI
Learning paths:Data Engineer
Video
What is a project?
A project is the root directory of your Bruin workspace. It must be git-initialized - Bruin uses this to locate the root and navigate the directory tree.
The .bruin.yml file
At the root of every project is a .bruin.yml file. This is where you define:
- Environments - such as
default,dev,prod,sandbox - Connections - database connections like DuckDB, BigQuery, Redshift, Postgres, MotherDuck
- Custom connections - API keys and secrets you want to inject across pipelines
You can set a default environment so that when you create a run without specifying one, it uses that environment (typically dev).
Key rules
- The project root must be git-initialized
.bruin.ymlis automatically added to.gitignore- it should never be pushed to your repo since it contains credentials- Connections defined here are available to all pipelines in the project, but each pipeline chooses which ones to use
Example structure
my-project/ # git-initialized root
.bruin.yml # environments, connections, secrets
.gitignore # .bruin.yml is listed here
pipeline-1/ # first pipeline
pipeline-2/ # second pipeline