Every option of .github/davils-ci.yaml with its default.
Every option with its default, read from actions/resolve-config/defaults.yaml. A repository only writes what differs; lists replace the default, mappings merge key by key. The JSON schema is schemas/davils-ci.schema.json.
| Option | Default | Values |
|---|---|---|
version |
1 |
1 |
project.working-directory |
. |
string |
project.release-branch |
main |
string |
project.integration-branch |
develop |
string |
packages.include |
[] |
list of string |
packages.exclude |
[] |
list of string |
packages.external-path-dependencies |
error |
error, warn |
packages.affected-only |
auto |
true, false, auto |
packages.always-all-paths |
["pubspec.yaml", "pubspec.lock", "analysis_options.yaml", "dart_test.yaml", "inspectra.yaml", "inspectra.base.yaml", "trivy*.yaml", "tool/**", ".github/**"] |
list of string |
packages.granularity |
auto |
auto, package, workspace, shards |
packages.shards |
8 |
integer |
packages.shard-threshold |
20 |
integer |
dart.enabled |
auto |
true, false, auto |
dart.sdks |
["stable", "lowest"] |
list of string |
dart.os |
["ubuntu"] |
list of ubuntu, ubuntu-arm, macos, windows, windows-arm |
dart.format.enabled |
true |
true, false, auto |
dart.format.command |
empty | string |
dart.analyze.enabled |
true |
true, false, auto |
dart.analyze.fatal-infos |
true |
boolean |
dart.analyze.command |
empty | string |
dart.test.enabled |
true |
true, false, auto |
dart.test.platforms |
[] |
list of string |
dart.test.command |
empty | string |
dart.test.args |
empty | string |
dart.test.report |
false |
boolean |
dart.coverage.enabled |
true |
true, false, auto |
dart.coverage.source |
auto |
auto, dart-ci, inspectra, none |
dart.coverage.min |
0 |
integer |
dart.coverage.codecov |
false |
boolean |
dart.build-runner.enabled |
auto |
true, false, auto |
dart.build-runner.command |
empty | string |
dart.publish-dry-run.enabled |
auto |
true, false, auto |
dart.pana.enabled |
false |
true, false, auto |
dart.pana.min-points |
0 |
integer |
dart.downgrade.enabled |
false |
true, false, auto |
dart.when |
events, branches, paths | |
flutter.enabled |
auto |
true, false, auto |
flutter.channel |
stable |
stable, beta, main, master |
flutter.versions |
["stable"] |
list of string |
flutter.version-file |
empty | string |
flutter.os |
["ubuntu"] |
list of ubuntu, ubuntu-arm, macos, windows, windows-arm |
flutter.format.enabled |
true |
true, false, auto |
flutter.format.command |
empty | string |
flutter.analyze.enabled |
true |
true, false, auto |
flutter.analyze.fatal-infos |
true |
boolean |
flutter.analyze.command |
empty | string |
flutter.test.enabled |
true |
true, false, auto |
flutter.test.command |
empty | string |
flutter.test.args |
empty | string |
flutter.test.exclude-tags |
empty | string |
flutter.test.report |
false |
boolean |
flutter.coverage.enabled |
true |
true, false, auto |
flutter.coverage.source |
auto |
auto, flutter-ci, inspectra, none |
flutter.coverage.min |
0 |
integer |
flutter.coverage.codecov |
false |
boolean |
flutter.build-runner.enabled |
auto |
true, false, auto |
flutter.build-runner.command |
empty | string |
flutter.publish-dry-run.enabled |
auto |
true, false, auto |
flutter.golden.enabled |
false |
true, false, auto |
flutter.golden.os |
macos |
ubuntu, macos, windows |
flutter.golden.tags |
golden |
string |
flutter.integration-test.enabled |
false |
true, false, auto |
flutter.integration-test.device |
auto |
auto, linux, chrome, macos, windows |
flutter.l10n.enabled |
auto |
true, false, auto |
flutter.when |
events, branches, paths | |
inspectra.enabled |
auto |
true, false, auto |
inspectra.install |
auto |
auto, dev-dependency, global, binary |
inspectra.version |
latest |
string |
inspectra.config-file |
empty | string |
inspectra.profile |
empty | string |
inspectra.check.enabled |
true |
true, false, auto |
inspectra.check.root |
auto |
true, false, auto |
inspectra.scan.enabled |
true |
true, false, auto |
inspectra.scan.recursive |
true |
boolean |
inspectra.scan.fail-on |
high |
critical, high, medium, low, unknown, none |
inspectra.scan.min-severity |
empty | ``, critical, `high`, `medium`, `low`, `unknown` |
inspectra.sarif.enabled |
auto |
true, false, auto |
inspectra.sarif.category |
inspectra |
string |
inspectra.summary.enabled |
true |
true, false, auto |
inspectra.report.enabled |
auto |
true, false, auto |
inspectra.config-lint.enabled |
true |
true, false, auto |
inspectra.config-diff.enabled |
auto |
true, false, auto |
inspectra.trivy.mode |
empty | ``, auto, `required`, `disabled` |
inspectra.trivy.version |
empty | string |
inspectra.trivy.cache |
true |
boolean |
inspectra.offline |
false |
boolean |
inspectra.tolerate-incomplete |
false |
boolean |
inspectra.when |
events, branches, paths | |
writerside.enabled |
auto |
true, false, auto |
writerside.instances |
[] |
list of string |
writerside.builder |
docker |
docker, action |
writerside.builder-image |
jetbrains/writerside-builder |
string |
writerside.builder-version |
2026.09.0357 |
string |
writerside.checker.enabled |
true |
true, false, auto |
writerside.pdf |
empty | string |
writerside.algolia.enabled |
false |
true, false, auto |
writerside.algolia.app-name |
empty | string |
writerside.algolia.index |
empty | string |
writerside.when |
events, branches, paths | |
dartdoc.enabled |
auto |
true, false, auto |
dartdoc.publishable-only |
true |
boolean |
dartdoc.validate-links |
true |
boolean |
dartdoc.fail-on-warnings |
false |
boolean |
dartdoc.dry-run-on-pr |
true |
boolean |
dartdoc.args |
empty | string |
dartdoc.when |
events, branches, paths | |
pages.enabled |
auto |
true, false, auto |
pages.deploy |
true |
boolean |
pages.parts.docs |
true |
boolean |
pages.parts.api |
true |
boolean |
pages.parts.web |
true |
boolean |
pages.parts.coverage |
false |
boolean |
pages.parts.inspectra |
false |
boolean |
pages.layout.docs |
/ |
string |
pages.layout.api |
/api |
string |
pages.layout.web |
/app/{id} |
string |
pages.layout.coverage |
/coverage/{id} |
string |
pages.layout.inspectra |
/quality |
string |
pages.landing-page |
auto |
true, false, auto |
pages.cname |
empty | string |
pages.spa-fallback |
empty | string |
pages.extra-path |
empty | string |
pages.environment |
github-pages |
string |
pages.when |
events, branches, paths | |
build.flutter.enabled |
auto |
true, false, auto |
build.flutter.apps |
[] |
list of string |
build.flutter.targets.web |
auto |
true, false, auto |
build.flutter.targets.apk |
false |
true, false, auto |
build.flutter.targets.appbundle |
false |
true, false, auto |
build.flutter.targets.ios |
false |
true, false, auto |
build.flutter.targets.ipa |
false |
true, false, auto |
build.flutter.targets.macos |
false |
true, false, auto |
build.flutter.targets.linux-x64 |
false |
true, false, auto |
build.flutter.targets.linux-arm64 |
false |
true, false, auto |
build.flutter.targets.windows-x64 |
false |
true, false, auto |
build.flutter.targets.windows-arm64 |
false |
true, false, auto |
build.flutter.build-mode |
release |
release, profile, debug |
build.flutter.flavor |
empty | string |
build.flutter.target-file |
empty | string |
build.flutter.dart-define-from-file |
empty | string |
build.flutter.extra-args |
empty | string |
build.flutter.build-name |
pubspec |
string |
build.flutter.build-number |
run-number |
string |
build.flutter.obfuscate |
false |
boolean |
build.flutter.web-wasm |
false |
boolean |
build.flutter.android-signing |
auto |
true, false, auto |
build.flutter.apple-signing |
auto |
true, false, auto |
build.flutter.macos-notarize |
false |
boolean |
build.flutter.java-version |
17 |
string |
build.flutter.environment |
empty | string |
build.flutter.when |
events, branches, paths | |
build.dart-compile.enabled |
auto |
true, false, auto |
build.dart-compile.executables |
[] |
list of object |
build.dart-compile.targets |
["linux-x64", "linux-arm64", "macos-arm64", "macos-x64", "windows-x64"] |
list of linux-x64, linux-arm64, macos-arm64, macos-x64, windows-x64, windows-arm64 |
build.dart-compile.archive |
zip |
zip, tar.gz |
build.dart-compile.checksums |
true |
boolean |
build.dart-compile.smoke-test-args |
--version |
string |
build.dart-compile.when |
events, branches, paths | |
release.mode |
auto |
auto, none, tag, release-please |
release.tag-patterns.single |
v{version} |
string |
release.tag-patterns.package |
{package}-v{version} |
string |
release.verify.enabled |
true |
true, false, auto |
release.verify.on-branch |
main |
string |
release.pub.enabled |
auto |
true, false, auto |
release.pub.environment |
pub.dev |
string |
release.pub.wait-for-siblings |
true |
boolean |
release.pub.wait-attempts |
60 |
integer |
release.pub.wait-interval |
30 |
integer |
release.github.enabled |
true |
true, false, auto |
release.github.notes-source |
auto |
auto, inspectra, changelog, generate, file, keep |
release.github.attest |
true |
boolean |
release.github.checksums |
true |
boolean |
release.github.draft |
false |
boolean |
release.github.make-latest |
auto |
true, false, auto |
release.release-please.token-source |
app |
app, pat, github-token |
release.release-please.config-file |
release-please-config.json |
string |
release.release-please.manifest-file |
.release-please-manifest.json |
string |
release.release-please.dispatch-workflow |
empty | string |
release.release-please.back-merge |
false |
boolean |
pr.title.enabled |
true |
true, false, auto |
pr.title.types |
[] |
list of string |
pr.title.scopes |
[] |
list of string |
pr.title.require-scope |
false |
boolean |
pr.title.subject-pattern |
empty | string |
pr.branch-policy.enabled |
true |
true, false, auto |
pr.branch-policy.main-allowed-sources |
["develop", "release-please--*", "hotfix/*"] |
list of string |
pr.when |
events, branches, paths | |
security.harden-runner.enabled |
true |
true, false, auto |
security.harden-runner.egress-policy |
audit |
audit, block |
security.harden-runner.allowed-endpoints |
empty | string |
hooks.pre-setup |
empty | string |
hooks.post-setup |
empty | string |
hooks.pre-test |
empty | string |
hooks.post-test |
empty | string |
hooks.pre-publish |
empty | string |
runners.linux |
ubuntu-latest |
string |
runners.linux-arm |
ubuntu-24.04-arm |
string |
runners.macos |
macos-latest |
string |
runners.macos-intel |
macos-15-intel |
string |
runners.windows |
windows-latest |
string |
runners.windows-arm |
windows-11-arm |
string |
timeouts.ci |
45 |
integer |
timeouts.inspectra |
30 |
integer |
timeouts.docs |
20 |
integer |
timeouts.build |
60 |
integer |
timeouts.publish |
45 |
integer |
timeouts.release |
20 |
integer |
artifacts.retention-days |
7 |
integer |
# The defaults of every option of .github/davils-ci.yaml. A repository only writes what differs.
#
# Precedence, lowest first: these defaults, the preset, .github/davils-ci.yaml, the `config` input
# of pipeline.yml, the typed inputs of pipeline.yml. Mappings merge key by key, lists replace.
#
# Toggles take true, false or auto. auto turns a feature on when the repository has what it needs:
# a Dart package for dart, a writerside.cfg for writerside, an app for the Flutter builds.
#
# Every feature has `when`: the events it runs on (push is a branch push, tag a tag push), the
# branches (globs, for push events; empty means all) and the paths (globs relative to the working
# directory, for pull_request, merge_group and push events; empty means any change).
version: 1
project:
working-directory: .
release-branch: main
integration-branch: develop
packages:
include: []
exclude: []
external-path-dependencies: error
affected-only: auto
always-all-paths:
- pubspec.yaml
- pubspec.lock
- analysis_options.yaml
- dart_test.yaml
- inspectra.yaml
- inspectra.base.yaml
- trivy*.yaml
- tool/**
- .github/**
granularity: auto
shards: 8
shard-threshold: 20
dart:
enabled: auto
sdks: [stable, lowest]
os: [ubuntu]
format:
enabled: true
command: ''
analyze:
enabled: true
fatal-infos: true
command: ''
test:
enabled: true
platforms: []
command: ''
args: ''
report: false
coverage:
enabled: true
source: auto
min: 0
codecov: false
build-runner:
enabled: auto
command: ''
publish-dry-run:
enabled: auto
pana:
enabled: false
min-points: 0
downgrade:
enabled: false
when:
events: [push, pull_request, merge_group, schedule, workflow_dispatch]
branches: []
paths: []
flutter:
enabled: auto
channel: stable
versions: [stable]
version-file: ''
os: [ubuntu]
format:
enabled: true
command: ''
analyze:
enabled: true
fatal-infos: true
command: ''
test:
enabled: true
command: ''
args: ''
exclude-tags: ''
report: false
coverage:
enabled: true
source: auto
min: 0
codecov: false
build-runner:
enabled: auto
command: ''
publish-dry-run:
enabled: auto
golden:
enabled: false
os: macos
tags: golden
integration-test:
enabled: false
device: auto
l10n:
enabled: auto
when:
events: [push, pull_request, merge_group, schedule, workflow_dispatch]
branches: []
paths: []
inspectra:
enabled: auto
install: auto
version: latest
config-file: ''
profile: ''
check:
enabled: true
root: auto
scan:
enabled: true
recursive: true
fail-on: high
min-severity: ''
sarif:
enabled: auto
category: inspectra
summary:
enabled: true
report:
enabled: auto
config-lint:
enabled: true
config-diff:
enabled: auto
trivy:
mode: ''
version: ''
cache: true
offline: false
tolerate-incomplete: false
when:
events: [push, pull_request, merge_group, schedule, workflow_dispatch]
branches: []
paths: []
writerside:
enabled: auto
instances: []
builder: docker
builder-image: jetbrains/writerside-builder
builder-version: '2026.09.0357'
checker:
enabled: true
pdf: ''
algolia:
enabled: false
app-name: ''
index: ''
when:
events: [push, pull_request, merge_group, workflow_dispatch]
branches: []
paths: []
dartdoc:
enabled: auto
publishable-only: true
validate-links: true
fail-on-warnings: false
dry-run-on-pr: true
args: ''
when:
events: [push, pull_request, merge_group, workflow_dispatch]
branches: []
paths: []
pages:
enabled: auto
deploy: true
parts:
docs: true
api: true
web: true
coverage: false
inspectra: false
layout:
docs: /
api: /api
web: /app/{id}
coverage: /coverage/{id}
inspectra: /quality
landing-page: auto
cname: ''
spa-fallback: ''
extra-path: ''
environment: github-pages
when:
events: [push, workflow_dispatch]
branches: [main]
paths: []
build:
flutter:
enabled: auto
apps: []
targets:
web: auto
apk: false
appbundle: false
ios: false
ipa: false
macos: false
linux-x64: false
linux-arm64: false
windows-x64: false
windows-arm64: false
build-mode: release
flavor: ''
target-file: ''
dart-define-from-file: ''
extra-args: ''
build-name: pubspec
build-number: run-number
obfuscate: false
web-wasm: false
android-signing: auto
apple-signing: auto
macos-notarize: false
java-version: '17'
environment: ''
when:
events: [push, workflow_dispatch]
branches: [main]
paths: []
dart-compile:
enabled: auto
executables: []
targets: [linux-x64, linux-arm64, macos-arm64, macos-x64, windows-x64]
archive: zip
checksums: true
smoke-test-args: --version
when:
events: [push, workflow_dispatch]
branches: [main]
paths: []
release:
mode: auto
tag-patterns:
single: v{version}
package: '{package}-v{version}'
verify:
enabled: true
on-branch: main
pub:
enabled: auto
environment: pub.dev
wait-for-siblings: true
wait-attempts: 60
wait-interval: 30
github:
enabled: true
notes-source: auto
attest: true
checksums: true
draft: false
make-latest: auto
release-please:
token-source: app
config-file: release-please-config.json
manifest-file: .release-please-manifest.json
dispatch-workflow: ''
back-merge: false
pr:
title:
enabled: true
types: []
scopes: []
require-scope: false
subject-pattern: ''
branch-policy:
enabled: true
main-allowed-sources: [develop, release-please--*, hotfix/*]
when:
events: [pull_request]
branches: []
paths: []
security:
harden-runner:
enabled: true
egress-policy: audit
allowed-endpoints: ''
hooks:
pre-setup: ''
post-setup: ''
pre-test: ''
post-test: ''
pre-publish: ''
runners:
linux: ubuntu-latest
linux-arm: ubuntu-24.04-arm
macos: macos-latest
macos-intel: macos-15-intel
windows: windows-latest
windows-arm: windows-11-arm
timeouts:
ci: 45
inspectra: 30
docs: 20
build: 60
publish: 45
release: 20
artifacts:
retention-days: 7