-
Notifications
You must be signed in to change notification settings - Fork 4
/
.scala-steward.conf
150 lines (136 loc) · 6.67 KB
/
.scala-steward.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# pullRequests.frequency allows to control how often or when Scala Steward
# is allowed to create pull requests.
#
# Possible values:
# @asap
# PRs are created without delay.
#
# <timespan>
# PRs are created only again after the given timespan since the last PR
# has passed. Example values are "36 hours", "1 day", or "14 days".
# <CRON expression>
# PRs are created roughly according to the given CRON expression.
#
# CRON expressions consist of five fields:
# minutes, hour of day, day of month, month, and day of week.
#
# See https://www.alonsodomin.me/cron4s/userguide/index.html#parsing for
# more information about the CRON expressions that are supported.
#
# Note that the date parts of the CRON expression are matched exactly
# while the time parts are only used to abide to the frequency of
# the given expression.
#
#
pullRequests.frequency = "0 0 ? * MON" # every monday at midnight
# pullRequests.grouping allows you to specify how Scala Steward should group
# your updates in order to reduce the number of pull-requests.
#
# Updates will be placed in the first group with which they match, starting
# from the first in the array. Those that do not match any group will follow
# the default procedure (one PR per update).
#
# Each element in the array will have the following schema:
#
# - name (mandatory): the name of the group, will be used for things like naming the branch
# - title (optional): if provided it will be used as the title for the PR
# - filter (mandatory): a non-empty list containing the filters to use to know
# if an update falls into this group.
#
# `filter` properties would have this format:
#
# {
# version = "major" | "minor" | "patch" | "pre-release" | "build-metadata",
# group = "{group}",
# artifact = "{artifact}"
# }
#
# For more information on the values for the `version` filter visit https://semver.org/
#
# Every field in a `filter` is optional but at least one must be provided.
#
# For grouping every update together a filter like {group = "*"} can be # provided.
#
# To create a new PR for each unique combination of artifact-versions, include ${hash} in the name.
#
# Default: []
pullRequests.grouping = [ { name = "minor_patch", title = "CORE-69: Minor and patch updates - ${artifactVersions}", filter = [ { version = "minor" }, { version = "patch" } ] } ]
# Only these dependencies which match the given patterns are updated.
#
# Each pattern must have `groupId`, and may have `artifactId` and `version`.
# Defaults to empty `[]` which mean Scala Steward will update all dependencies.
# updates.allow = [ { groupId = "com.example" } ]
# The dependencies which match the given version pattern are updated.
# Dependencies that are not listed will be updated.
#
# Each pattern must have `groupId`, `version` and optional `artifactId`.
# Defaults to empty `[]` which mean Scala Steward will update all dependencies.
# the following example will allow to update foo when version is 1.1.x
# updates.pin = [ { groupId = "com.example", artifactId="foo", version = "1.1." } ]
# The dependencies which match the given pattern are NOT updated.
#
# Each pattern must have `groupId`, and may have `artifactId` and `version`.
# Defaults to empty `[]` which mean Scala Steward will not ignore dependencies.
# updates.ignore = [ { groupId = "org.acme", artifactId="foo", version = "1.0" } ]
# Elasticsearch and its Lucene dependency should not be automatically updated;
# these require nontrivial changes to calling code and business logic. See AJ-266.
updates.ignore = [
{ groupId = "org.elasticsearch.client", artifactId = "transport" }, # AJ-266
{ groupId = "org.apache.lucene", artifactId = "lucene-queryparser" } # AJ-266
]
# If set, Scala Steward will only create or update `n` PRs each time it runs (see `pullRequests.frequency` above).
# Useful if running frequently and/or CI build are costly
# Default: None
updates.limit = 5
# The extensions of files that should be updated.
# Default: [".scala", ".sbt", ".sbt.shared", ".sc", ".yml", "pom.xml"]
# updates.fileExtensions = [".scala", ".sbt", ".sbt.shared", ".sc", ".yml", ".md", ".markdown", ".txt"]
# If "on-conflicts", Scala Steward will update the PR it created to resolve conflicts as
# long as you don't change it yourself.
# If "always", Scala Steward will always update the PR it created as long as
# you don't change it yourself.
# If "never", Scala Steward will never update the PR
# Default: "on-conflicts"
updatePullRequests = "on-conflicts"
# If set, Scala Steward will use this message template for the commit messages and PR titles.
# Supported variables: ${artifactName}, ${currentVersion}, ${nextVersion} and ${default}
# Default: "${default}" which is equivalent to "Update ${artifactName} to ${nextVersion}"
commits.message = "CORE-69: Update ${artifactName} from ${currentVersion} to ${nextVersion}"
# If true and when upgrading version in .scalafmt.conf, Scala Steward will perform scalafmt
# and add a separate commit when format changed. So you don't need reformat manually and can merge PR.
# If false, Scala Steward will not perform scalafmt, so your CI may abort when reformat needed.
# Default: true
# scalafmt.runAfterUpgrading = false
# It is possible to have multiple scala projects in a single repository. In that case the folders containing the projects (build.sbt folders)
# are specified using the buildRoots property. Note that the paths used there are relative and if the repo directory itself also contains a build.sbt the dot can be used to specify it.
# Default: ["."]
# buildRoots = [ ".", "subfolder/projectA" ]
# Define commands that are executed after an update via a hook.
# A groupId and/or artifactId can be defined to only execute after certain dependencies are updated. If neither is defined, the hook runs for every update.
# postUpdateHooks = [{
# command = ["sbt", "protobufGenerate"],
# commitMessage = "Regenerated protobuf files",
# groupId = "com.github.sbt",
# artifactId = "sbt-protobuf"
# }]
# You can override some config options for dependencies that matches the given pattern.
# Currently, "pullRequests" can be overridden.
# Each pattern must have `groupId`, and may have `artifactId` and `version`.
# First-matched entry is used.
# More-specific entry should be placed before less-specific entry.
#
# Default: empty `[]`
# dependencyOverrides = [
# {
# dependency = { groupId = "com.example", artifactId = "foo", version = "2." },
# pullRequests = { frequency = "1 day" },
# },
# {
# dependency = { groupId = "com.example", artifactId = "foo" },
# pullRequests = { frequency = "30 day" },
# },
# {
# dependency = { groupId = "com.example" },
# pullRequests = { frequency = "14 day" },
# }
# ]