v0.10.1
A ready-to-use CI/CD Pipeline and jobs for Deno projects.
Attributes
Includes Deno configuration
Repository
Current version released
7 months ago
Dependencies
other
jsr:@std/flags@0.218.2jsr:@std/fmt@0.218.2/colorsjsr:@std/path@0.218.2jsr:@std/testing@0.218.2/assertsjsr:@tsirysndr/env-js@0.1.2jsr:@tsirysndr/exit-js@0.1.0jsr:@tsirysndr/fluent-az-pipelines@0.3jsr:@tsirysndr/fluent-circleci@0.3jsr:@tsirysndr/fluent-codepipeline@0.3jsr:@tsirysndr/fluent-gh-actions@0.3jsr:@tsirysndr/fluent-gitlab-ci@0.5node:fsnpm:graphql-request@6.1.0npm:graphql@16.8.1npm:lodash@4.17.21npm:node-color-log@11.0.2npm:stringify-tree@1.1.1
Versions
- v0.11.1Latest
- v0.11.0
- v0.10.3
- v0.10.2
- v0.10.1
- v0.10.0
- v0.9.2
- v0.9.1
- v0.9.0
- v0.9.0
- v0.8.6
- v0.8.5
- v0.8.5
- v0.8.4
- v0.8.3
- v0.8.2
- v0.8.1
- v0.8.0
- 0.7.2
- v0.7.1
- v0.7.0
- v0.6.1
- v0.6.0
- v0.6.0
- v0.5.5
- v0.5.5
- v0.5.4
- v0.5.3
- v0.5.3
- v0.5.2
- v0.5.2
- v0.5.1
- v0.5.0
- v0.4.3
- v0.4.2
- v0.4.2
- v0.4.1
- v0.4.0
- v0.3.1
- v0.3.0
- v0.2.2
- v0.2.0
- v0.1.12
- v0.1.12
- v0.1.11
- v0.1.10
- v0.1.9
- v0.1.8
- v0.1.7
- v0.1.7
- v0.1.6
- v0.1.5
- v0.1.4
- v0.1.3
- v0.1.2
- v0.1.1
- v0.1.1
- v0.1.0
Deno Pipeline
A ready-to-use CI/CD Pipeline for your Deno projects.
🚀 Usage
Run the following command:
fluentci run deno_pipeline
Or, if you want to use it as a template:
fluentci init -t deno
This will create a .fluentci
folder in your project.
Now you can run the pipeline with:
fluentci run .
🧩 Dagger Module
Use as a Dagger module:
dagger install github.com/fluent-ci-templates/deno-pipeline@main
Call functions from the module:
# Format
dagger call fmt --src .
# Lint
dagger call lint --src .
# Test
dagger call test --src .
# Compile
dagger call compile --src . \
--file main.ts \
--output-binary main \
--target x86_64-unknown-linux-gnu
# Deploy
dagger call deploy --src . \
--token DENO_DEPLOY_TOKEN \
--project $DENO_PROJECT \
--main main.tsx \
--no-static false
🛠️ Environment variables (Deno Deploy)
Variable | Description | Default |
---|---|---|
DENO_PROJECT | Your project name | |
NO_STATIC | Disable static assets | false |
EXCLUDE | Exclude files from deploy | |
DENO_DEPLOY_TOKEN | Your Deno Deploy token | |
DENO_MAIN_SCRIPT | Your main script | main.tsx |
✨ Jobs
Job | Description | Options |
---|---|---|
fmt | Format your code | |
lint | Lint your code | |
test | Run your tests | { ignore: string[] } |
compile | Compile the given script into a self contained executable | |
deploy | Deploy your app to Deno Deploy |
lint(
src: string | Directory | undefined = "."
): Promise<Directory | string>
fmt(
src: string | Directory | undefined = "."
): Promise<Directory | string>
test(
src: string | Directory | undefined = ".",
ignore: string[] = []
): Promise<File | string>
compile(
src: string | Directory | undefined = ".",
file = "main.ts",
output = "main",
target = "x86_64-unknown-linux-gnu"
): Promise<File | string>
deploy(
src: string | Directory | undefined = ".",
token?: string | Secret,
project?: string,
main?: string,
noStatic?: boolean,
excludeOpt?: string
): Promise<string>
👨💻 Programmatic usage
You can also use this pipeline programmatically:
import { fmt, lint, test } from "jsr:@fluentci/deno";
await fmt();
await lint();
await test();