https://github.com/fluent-ci-templates/atlas-pipeline
A ready-to-use CI/CD Pipeline for managing your database migrations with Atlas
https://github.com/fluent-ci-templates/atlas-pipeline
atlas cicd dagger database-migrations database-schema deno pipeline typescript
Last synced: 5 months ago
JSON representation
A ready-to-use CI/CD Pipeline for managing your database migrations with Atlas
- Host: GitHub
- URL: https://github.com/fluent-ci-templates/atlas-pipeline
- Owner: fluent-ci-templates
- License: mit
- Created: 2023-08-08T11:38:18.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-06-18T20:47:09.000Z (about 2 years ago)
- Last Synced: 2025-04-12T23:49:47.517Z (about 1 year ago)
- Topics: atlas, cicd, dagger, database-migrations, database-schema, deno, pipeline, typescript
- Language: TypeScript
- Homepage:
- Size: 169 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Atlas Pipeline
[](https://pkg.fluentci.io/atlas_pipeline)

[](https://dagger.io)
[](https://jsr.io/@fluentci/atlas)
[](https://codecov.io/gh/fluent-ci-templates/atlas-pipeline)
[](https://github.com/fluent-ci-templates/atlas-pipeline/actions/workflows/ci.yml)
A ready-to-use CI/CD Pipeline for managing your database migrations with [Atlas](https://atlasgo.io/)
## 🚀 Usage
Run the following command in your project:
```bash
fluentci run atlas_pipeline
```
Or, if you want to use it as a template:
```bash
fluentci init -t atlas
```
This will create a `.fluentci` folder in your project.
Now you can run the pipeline with:
```bash
fluentci run .
```
## 🧩 Dagger Module
Use as a [Dagger](https://dagger.io) module:
```bash
dagger install github.com/fluent-ci-templates/atlas-pipeline@main
```
Call a function from the module:
```bash
dagger call migrate --src . --database-url env:DATABASE_URL
```
## 🛠️ Environment variables
| Variable | Description | Required |
| ---------------- | ------------------------------ | -------- |
| DATABASE_URL | The database connection string | Yes |
| DATABASE_DEV_URL | The database connection string used for calculating migrations differences | No |
## ✨ Jobs
| Job | Description |
| --------- | ------------------------- |
| migrate | Apply database migrations |
| dry_run | Dry run migrations |
```typescript
dryRun(
src: string | Directory,
databaseUrl: string | Secret,
databaseDevUrl?: string
): Promise
migrate(
src: string | Directory,
databaseUrl: string | Secret,
databaseDevUrl?: string
): Promise
```
## 👨💻 Programmatic usage
You can also use this pipeline programmatically:
```ts
import { migrate } from "jsr:@fluentci/atlas";
await migrate();
```