fusion-infra-cli
Provision and migrate Fusion databases using the fusion-infra-cli (finf). USE FOR: provision a database for a service, run SQL migrations, provision PR-specific ephemeral databases, check database state. DO NOT USE FOR: application code changes, service deployments, role management, or infrastructur
By equinor · 355 installs
npx skills add equinor/fusion-skills --skill fusion-infra-cli
Source repository · Upstream listing
Fusion Infra CLI
When to use
Use when a Fusion service database needs to be provisioned or migrated — locally during development or inside CI/CD pipelines.
Typical triggers:
"Provision the database for the context service"
"Run migrations on the QA database"
"Set up a PR database for this pull request"
"What does the database provision config look like?"
"The pipeline is failing on the database provision step"
"Create a PR database that copies from CI"
When not to use
Application code or service changes — use the service repo
Role or permission management — use fusion roles cli
Infrastructure other than databases (networking, storage, etc.)
Kubernetes or container management
Prerequisites
Install finf as a .NET global tool:
Update to latest:
Auth uses DefaultAzureCredential automatically (picks up az login session). Pass t <token to override.
Core workflow — provision a database
1. Create the provisioning config file
The config file defines the database resource. Minimal example ( db config.json ):
Full config with SQL permissions:
See [references/db config schema.md](references/db config schema.md) for the full schema.
2. Run provisioning
CI / non production:
QA:
Production (add production flag):
Pull Request (ephemeral database, copies from CI):
3. Run migrations
After provisioning, apply SQL migrations:
The m flag accepts a directory of .sql files or a single .sql file.
Environments
Key Purpose
ci Continuous integration
fqa QA / pre production
fprd Production (requires production flag)
pr Pull request ephemeral (requires pr and ghr )
Full reference
For complete flag reference, run:
Or see the source documentation:
[README.md](https://github.com/equinor/fusion core services/blob/main/tooling/fusion infra cli/Fusion.Infra.Cli/README.md)
[Source: tooling/fusion infra cli](https://github.com/equinor/fusion core services/tree/main/tooling/fusion infra cli)
Safety
Always use verbose in pipelines to get diagnostic output
Always save output with o response.json so pipeline steps can reference the result
The production flag is an explicit guard — never omit it for fprd provisioning
Never pass raw tokens in pipeline YAML — use secret variables and pass via t
database delete is irreversible for non PR databases — confirm with user before running