Type object
File match **/updatecli.d/**/*.yaml **/updatecli.d/**/*.yml **/updatecli.d/**/*.json updatecli.yml updatecli.yaml
Schema URL https://catalog.lintel.tools/schemas/schemastore/updatecli-policy-manifest/latest.json
Source https://www.updatecli.io/schema/latest/policy/manifest/config.json

Validate with Lintel

npx @lintel/lintel check
Type: object

Spec contains pipeline configuration

Properties

name string required

"name" defines a pipeline name

example: * "name: 'deps: update nodejs version to latest stable'"

remark: * using a short sentence describing the pipeline is a good way to name your pipeline. * using conventional commits convention is a good way to name your pipeline. * "name" is often used a default values for other configuration such as pullrequest title. * "name" shouldn't contain any dynamic information such as source output.

pipelineid string

"pipelineid" allows to identify a full pipeline run.

example: * "pipelineid: nodejs/dependencies" * "pipelineid: gomod/github.com/updatecli/updatecli" * "pipelineid: autodiscovery/gomodules/minor"

remark: * "pipelineid" is used to generate uniq branch name for target update relying on scm configuration. * The same "pipelineid" may be used by different Updatecli manifest" to ensure they are updated in the same workflow including pullrequest.

autodiscovery object

"autodiscovery" defines the configuration to automatically discover new versions update.

example:

autodiscovery: scmid: default actionid: default groupby: all crawlers: golang/gomod: versionfilter: kind: semver pattern: patch

5 nested properties
crawlers object

Crawlers defines a map of crawler configuration where the key represent the crawler type

24 nested properties
argocd object

Spec defines the parameters which can be provided to the argocd builder.

5 nested properties
rootdir string

RootDir defines the root directory used to recursively search for ArgoCD manifest

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific Argocd manifest based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific ArgoCD manifest based on a rule

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: prerelease - Updatecli tries to identify the latest "prerelease" whatever it means patch - Updatecli only handles patch version update minor - Updatecli handles patch AND minor version update minoronly - Updatecli handles minor version only major - Updatecli handles patch, minor, AND major version update majoronly - Updatecli only handles major version update a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

	versionfilter:
		kind: semver
		pattern: minor
and its type like regex, semver, or just latest.
auths Record<string, object>

Auths holds a map of string to string where the key is the registry URL and the value the token used for authentication

Please be aware that only the host part of the URL is used to lookup for authentication token.

Example:

auths:
  "my-helm-repo.com": "my-secret-token"
bazel object

Spec defines the Bazel autodiscovery parameters.

4 nested properties
rootdir string

rootdir defines the root directory used to recursively search for MODULE.bazel files

ignore object[]

ignore specifies rule to ignore Bazel module updates.

only object[]

only specify required rule to restrict Bazel module updates.

versionfilter object

versionfilter provides parameters to specify the version pattern to use when generating manifest.

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

	versionfilter:
		kind: semver
		pattern: minor
cargo object

Spec defines the Cargo parameters.

5 nested properties
rootdir string

RootDir defines the root directory used to recursively search for Cargo.toml

ignore object[]

Ignore specifies rule to ignore Cargo.toml update.

only object[]

Only specify required rule to restrict Cargo.toml update.

registries Record<string, object>

Auths provides a map of registry credentials where the key is the registry URL without scheme

versionfilter object

versionfilter provides parameters to specify the version pattern to use when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
dockercompose object

Spec is a struct fill from Updatecli manifest data and shouldn't be modified at runtime unless For Fields that requires it, we can use the struct DockerCompose Spec defines the parameters which can be provided to the Helm builder.

7 nested properties
digest boolean

digest provides parameters to specify if the generated manifest should use a digest on top of the tag.

rootdir string

rootDir defines the root directory used to recursively search for Helm Chart If rootDir is not provided, the current working directory will be used. If rootDir is provided as an absolute path, scmID will be ignored. If rootDir is not provided but a scmid is, then rootDir will be set to the git repository root directory.

ignore object[]

ignore allows to specify rule to ignore autodiscovery a specific Helm based on a rule

only object[]

only allows to specify rule to only autodiscover manifest for a specific Helm based on a rule

auths Record<string, object>

auths provides a map of registry credentials where the key is the registry URL without scheme if empty, updatecli relies on OCI credentials such as the one used by Docker.

example:


auths: "ghcr.io": token: "xxx" "index.docker.io": username: "admin" password: "password"

filematch string[]

FileMatch allows to override default docker-compose.yaml file matching. Default ["compose.yaml", "compose.yml", "compose..yaml", "compose..yml", "docker-compose.yaml","docker-compose.yml","docker-compose..yaml","docker-compose..yml"]

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

More information available at https://www.updatecli.io/docs/core/versionfilter/

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

  versionfilter:
  kind: semver
  pattern: minor

More version filter available at https://www.updatecli.io/docs/core/versionfilter/

dockerfile object

Spec is a struct fill from Updatecli manifest data and shouldn't be modified at runtime unless For Fields that requires it, we can use the struct Dockerfile Spec defines the parameters which can be provided to the Dockerfile crawler.

7 nested properties
digest boolean

digest provides parameters to specify if the generated manifest should use a digest on top of the tag.

rootdir string

RootDir defines the root directory used to recursively search for Helm Chart

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific Helm based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific Helm based on a rule

auths Record<string, object>

Auths provides a map of registry credentials where the key is the registry URL without scheme if empty, updatecli relies on OCI credentials such as the one used by Docker.

example:


auths: "ghcr.io": token: "xxx" "index.docker.io": username: "admin" password: "password"

filematch string[]

FileMatch allows to override default Dockerfile file matching. Default ["Dockerfile"]

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

versionfilter:
  kind: semver
  pattern: minor

More version filter available at https://www.updatecli.io/docs/core/versionfilter/

flux object

Spec defines the parameters which can be provided to the Flux crawler.

9 nested properties
auths Record<string, object>

auths provides a map of registry credentials where the key is the registry URL without scheme

digest boolean

digest allows to specify if the generated manifest should use OCI digest on top of the tag

default: true

helmrelease boolean

helmRelease define if helmrelease file should be updated or not

default: true

files string[]

files allows to override default flux files

default: [".yaml", ".yml"]

ignore object[]

ignore allows to specify rule to ignore autodiscovery a specific Flux helmrelease based on a rule

default: empty

only object[]

only allows to specify rule to only autodiscover manifest for a specific Flux helm release based on a rule

default: empty

ocirepository boolean

OCIRepository allows to specify if OCI repository files should be updated

default: true

rootdir string

rootDir defines the root directory used to recursively search for Flux files

default: . (current working directory) or scm root directory

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

More information available at https://www.updatecli.io/docs/core/versionfilter/

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

  versionfilter:
  kind: semver
  pattern: minor

More version filter available at https://www.updatecli.io/docs/core/versionfilter/

gitea/action object

Spec defines the parameters which can be provided to the Action crawler.

9 nested properties
files string[]

files allows to specify the accepted Action workflow file name

default:

  • ".github/workflows/*.yaml",
  • ".github/workflows/*.yml",
  • ".gitea/workflows/*.yaml",
  • ".gitea/workflows/*.yml",
  • ".forgejo/workflows/*.yaml",
  • ".forgejo/workflows/*.yml",
actions string[]

actions allows to specify the accepted Composite Action names

default:

  • "*",
ignore object[]

ignore allows to specify rule to ignore autodiscovery a specific GitHub action based on a rule

default: empty

only object[]

only allows to specify rule to only autodiscover manifest for a specific GitHub action based on a rule

default: empty

rootdir string

rootDir allows to specify the root directory from where looking for GitHub Action

default: empty

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex
	versionfilter of kind `regex` uses regular expression as version filtering
	pattern accepts a valid regular expression

example:
```
	versionfilter:
		kind: semver
		pattern: minor
```

and its type like regex, semver, or just latest.
credentials Record<string, object>

Credentials allows to specify the credentials to use to authenticate to the git provider The ID of the credential must be the domain of the git provider to configure

default: empty

examples:

  autodiscovery:
    crawlers:
      github/action:
        credentials:
          "code.forgejo.com":
            kind: gitea
            token: xxx
          "github.com":
            kind: github
            token: '{{ requiredEnv "GITHUB_TOKEN" }}'
credentialsdocker Record<string, object>

CredentialsDocker provides a map of registry credentials where the key is the registry URL without scheme

digest boolean

Digest provides parameters to specify if the generated manifest should use a digest instead of the branch or tag.

Remark: - The digest is only supported for GitHub Action and docker image tag update. Feel free to open an issue for the Gitea and Forgejo integration.

github/action object

Spec defines the parameters which can be provided to the Action crawler.

9 nested properties
files string[]

files allows to specify the accepted Action workflow file name

default:

  • ".github/workflows/*.yaml",
  • ".github/workflows/*.yml",
  • ".gitea/workflows/*.yaml",
  • ".gitea/workflows/*.yml",
  • ".forgejo/workflows/*.yaml",
  • ".forgejo/workflows/*.yml",
actions string[]

actions allows to specify the accepted Composite Action names

default:

  • "*",
ignore object[]

ignore allows to specify rule to ignore autodiscovery a specific GitHub action based on a rule

default: empty

only object[]

only allows to specify rule to only autodiscover manifest for a specific GitHub action based on a rule

default: empty

rootdir string

rootDir allows to specify the root directory from where looking for GitHub Action

default: empty

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex
	versionfilter of kind `regex` uses regular expression as version filtering
	pattern accepts a valid regular expression

example:
```
	versionfilter:
		kind: semver
		pattern: minor
```

and its type like regex, semver, or just latest.
credentials Record<string, object>

Credentials allows to specify the credentials to use to authenticate to the git provider The ID of the credential must be the domain of the git provider to configure

default: empty

examples:

  autodiscovery:
    crawlers:
      github/action:
        credentials:
          "code.forgejo.com":
            kind: gitea
            token: xxx
          "github.com":
            kind: github
            token: '{{ requiredEnv "GITHUB_TOKEN" }}'
credentialsdocker Record<string, object>

CredentialsDocker provides a map of registry credentials where the key is the registry URL without scheme

digest boolean

Digest provides parameters to specify if the generated manifest should use a digest instead of the branch or tag.

Remark: - The digest is only supported for GitHub Action and docker image tag update. Feel free to open an issue for the Gitea and Forgejo integration.

golang object

Spec defines the parameters which can be provided to the Golang autodiscovery builder.

6 nested properties
rootdir string

rootDir defines the root directory used to recursively search for golang go.mod

onlygoversion boolean

OnlyGoVersion allows to specify if the autodiscovery should only handle Go version specified in go.mod

onlygomodule boolean

OnlyGoModule allows to specify if the autodiscovery should only handle Go module specified in go.mod

ignore object[]

ignore allows to specify "rule" to ignore autodiscovery a specific go.mod rule

only object[]

only allows to specify rule to "only" autodiscover manifest for a specific golang rule

versionfilter object

versionfilter provides parameters to specify the version pattern to use when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
helm object

Spec defines the Helm parameters.

10 nested properties
auths Record<string, object>

auths provides a map of registry credentials where the key is the registry URL without scheme if empty, updatecli relies on OCI credentials such as the one used by Docker.

example:


auths: "ghcr.io": token: "xxx" "index.docker.io": username: "admin" password: "password"

digest boolean

digest provides a parameter to specify if the generated manifest should use a digest on top of the tag when updating container.

ignorecontainer boolean

ignorecontainer disables OCI container tag update when set to true

ignorechartdependency boolean

ignorechartdependency disables Helm chart dependencies update when set to true

ignore object[]

Ignore specifies rule to ignore Helm chart update.

rootdir string

rootdir defines the root directory used to recursively search for Helm Chart

only object[]

only specify required rule(s) to restrict Helm chart update.

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

More information available at https://www.updatecli.io/docs/core/versionfilter/

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

  versionfilter:
  kind: semver
  pattern: minor

More version filter available at https://www.updatecli.io/docs/core/versionfilter/

skippackaging boolean

[target] Defines if a Chart should be packaged or not.

versionincrement string

[target] Defines if a Chart changes, triggers, or not, a Chart version update, accepted values is a comma separated list of "none,major,minor,patch"

helmfile object

Spec defines the Helmfile parameters.

5 nested properties
rootdir string

rootdir defines the root directory used to recursively search for Helmfile manifest

ignore object[]

Ignore allows to specify rule to ignore "autodiscovery" a specific Helmfile based on a rule

only object[]

Only allows to specify rule to only "autodiscovery" manifest for a specific Helmfile based on a rule

auths Record<string, object>

Auths provides a map of registry credentials where the key is the registry URL without scheme

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
ko object

Spec defines the parameters which can be provided to the Kubernetes builder.

7 nested properties
auths Record<string, object>

Auths provides a map of registry credentials where the key is the registry URL without scheme

digest boolean

digest provides parameters to specify if the generated manifest should use a digest on top of the tag.

files string[]

Files allows to specify a list of Files to analyze.

    The pattern syntax is:
       pattern:
         { term }
       term:
         '*'         matches any sequence of non-Separator characters
         '?'         matches any single non-Separator character
         '[' [ '^' ] { character-range } ']' character class (must be non-empty)
         c           matches character c (c != '*', '?', '\\', '[')
         '\\' c      matches character c

	    character-range:
	    	c           matches character c (c != '\\', '-', ']')
         '\\' c      matches character c
         lo '-' hi   matches character c for lo <= c <= hi

        Match requires pattern to match all of name, not just a substring.
        The only possible returned error is ErrBadPattern, when pattern
        is malformed.

        On Windows, escaping is disabled. Instead, '\\' is treated as
        path separator.
rootdir string

RootDir defines the root directory used to recursively search for Kubernetes files

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific Kubernetes manifest based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific Kubernetes manifest based on a rule

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
kubernetes object

Spec defines the parameters which can be provided to the Kubernetes builder.

7 nested properties
auths Record<string, object>

auths provides a map of registry credentials where the key is the registry URL without scheme if empty, updatecli relies on OCI credentials such as the one used by Docker.

example:


auths: "ghcr.io": token: "xxx" "index.docker.io": username: "admin" password: "password"

digest boolean

digest provides parameters to specify if the generated manifest should use a digest on top of the tag.

files string[]

Files allows to specify a list of Files to analyze.

The pattern syntax is: pattern: { term } term: '' matches any sequence of non-Separator characters '?' matches any single non-Separator character '[' [ '^' ] { character-range } ']' character class (must be non-empty) c matches character c (c != '', '?', '\', '[') '\' c matches character c

character-range: c matches character c (c != '\', '-', ']') '\' c matches character c lo '-' hi matches character c for lo <= c <= hi

Match requires pattern to match all of name, not just a substring. The only possible returned error is ErrBadPattern, when pattern is malformed.

On Windows, escaping is disabled. Instead, '\' is treated as path separator.

rootdir string

RootDir defines the root directory used to recursively search for Kubernetes files

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific Kubernetes manifest based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific Kubernetes manifest based on a rule

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

More information available at https://www.updatecli.io/docs/core/versionfilter/

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

  versionfilter:
  kind: semver
  pattern: minor

More version filter available at https://www.updatecli.io/docs/core/versionfilter/

maven object

Spec defines the parameters which can be provided to the Helm builder.

4 nested properties
rootdir string

RootDir defines the root directory used to recursively search for Helm Chart

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific Helm based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific Helm based on a rule

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
nomad object

Spec is a struct fill from Updatecli manifest data and shouldn't be modified at runtime unless For Fields that requires it, we can use the struct DockerCompose Spec defines the parameters which can be provided to the Helm builder.

7 nested properties
digest boolean

digest provides parameters to specify if the generated manifest should use a digest on top of the tag.

rootdir string

rootDir defines the root directory used to recursively search for Nomad files If rootDir is not provided, the current working directory will be used. If rootDir is provided as an absolute path, scmID will be ignored. If rootDir is not provided but a scmid is, then rootDir will be set to the git repository root directory.

ignore object[]

ignore allows to specify rule to ignore autodiscovery a specific Helm based on a rule

only object[]

only allows to specify rule to only autodiscover manifest for a specific Helm based on a rule

auths Record<string, object>

auths provides a map of registry credentials where the key is the registry URL without scheme if empty, updatecli relies on OCI credentials such as the one used by Docker.

example:


auths: "ghcr.io": token: "xxx" "index.docker.io": username: "admin" password: "password"

filematch string[]

FileMatch allows to override default docker-compose.yaml file matching. Default ["docker-compose.yaml","docker-compose.yml","docker-compose..yaml","docker-compose..yml"]

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

More information available at https://www.updatecli.io/docs/core/versionfilter/

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

  versionfilter:
  kind: semver
  pattern: minor

More version filter available at https://www.updatecli.io/docs/core/versionfilter/

npm object

Spec defines the parameters which can be provided to the NPM builder.

8 nested properties
rootdir string

RootDir defines the root directory used to recursively search for npm packages.json

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific NPM based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific NPM based on a rule

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
ignoreversionconstraints boolean

IgnoreVersionConstraints indicates whether to respect version constraints defined in package.json or not. When set to true, Updatecli will ignore version constraints and update to the latest version available in the registry according to the specified version filter. Default is false.

Remark:

  • If set to false, Updatecli will try to convert version constrains to valid semantic version so we can use versionFilter to retrieve the last Major/Minor/Patch version but in case of complex version constraints, such as ">=1.0.0 <2.0.0", Updatecli will convert it to the first version it detects such as 1.0.0 in our example
npmrcpath string

NpmrcPath defines the path to the .npmrc file to use for all discovered packages. This will be propagated to all generated npm resource specs.

url string

URL defines the registry url (defaults to <https://registry.npmjs.org/>). This will be propagated to all generated npm resource specs.

registrytoken string

RegistryToken defines the token to use when connecting to the registry. This will be propagated to all generated npm resource specs.

plugin object
4 nested properties
spec object

Spec contains the plugin parameters. cfr the plugin documentation.

allowedpaths string[]

AllowedPaths is a list of paths to be accessed from inside the plugin sandbox, a path can be either a plain path or a map from HOST_PATH:GUEST_PATH

Example:

  • .:/mnt
  • /var/lib/updatecli:/data

Default: [".:/mnt"]

Remark:

  • Relative paths are considered relative to the Updatecli working directory. If a scm root directory is set, relative paths are considered relative to the scm root directory.
  • By default, the plugin runs from "/mnt"
allowhosts string[]

AllowedHosts hold a list of allowed hosts for HTTP requests from the plugin sandbox

timeout integer

Timeout defines a maximum execution time for the plugin in seconds

Default: 300 seconds

precommit object

Spec defines the parameters uses to generate the precomit manifests

5 nested properties
rootdir string

RootDir defines the root directory used to recursively search for npm packages.json

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific NPM based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific NPM based on a rule

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
digest boolean

Digest provides parameters to specify if the generated manifest should use a digest instead of the branch or tag. This is equivalent to using the --freeze option of precommit

prow object

Spec defines the parameters which can be provided to the Kubernetes builder.

7 nested properties
auths Record<string, object>

auths provides a map of registry credentials where the key is the registry URL without scheme if empty, updatecli relies on OCI credentials such as the one used by Docker.

example:


auths: "ghcr.io": token: "xxx" "index.docker.io": username: "admin" password: "password"

digest boolean

digest provides parameters to specify if the generated manifest should use a digest on top of the tag.

files string[]

Files allows to specify a list of Files to analyze.

The pattern syntax is: pattern: { term } term: '' matches any sequence of non-Separator characters '?' matches any single non-Separator character '[' [ '^' ] { character-range } ']' character class (must be non-empty) c matches character c (c != '', '?', '\', '[') '\' c matches character c

character-range: c matches character c (c != '\', '-', ']') '\' c matches character c lo '-' hi matches character c for lo <= c <= hi

Match requires pattern to match all of name, not just a substring. The only possible returned error is ErrBadPattern, when pattern is malformed.

On Windows, escaping is disabled. Instead, '\' is treated as path separator.

rootdir string

RootDir defines the root directory used to recursively search for Kubernetes files

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific Kubernetes manifest based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific Kubernetes manifest based on a rule

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

More information available at https://www.updatecli.io/docs/core/versionfilter/

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

  versionfilter:
  kind: semver
  pattern: minor

More version filter available at https://www.updatecli.io/docs/core/versionfilter/

rancher/fleet object

Spec defines the parameters which can be provided to the fleet builder.

5 nested properties
auths Record<string, object>

Auths holds a map of string to string where the key is the registry URL and the value the token used for authentication

Please be aware that only the host part of the URL is used to lookup for authentication token.

Example:

auths:
  "my-helm-repo.com": "my-secret-token"
rootdir string

RootDir defines the root directory used to recursively search for Fleet bundle

ignore object[]

Ignore allows to specify rule to ignore autodiscovery a specific Fleet bundle based on a rule

only object[]

Only allows to specify rule to only autodiscover manifest for a specific Fleet bundle based on a rule

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
terraform object

Spec defines the Terraform parameters.

5 nested properties
rootdir string

rootdir defines the root directory used to recursively search for .terraform.lock.hcl

ignore object[]

ignore specifies rule to ignore .terraform.lock.hcl update.

only object[]

only specify required rule to restrict .terraform.lock.hcl update.

versionfilter object

versionfilter provides parameters to specify the version pattern to use when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
platforms string[]

platforms is the target platforms to request package checksums for.

	remarks:
	* Fallback is linux_amd64, linux_arm64, darwin_amd64, darwin_arm64
terragrunt object

Spec defines the Terraform parameters.

6 nested properties
rootdir string

rootdir defines the root directory from where looking for terragrunt configuration

ignore object[]

ignore specifies rule to ignore .terraform.lock.hcl update.

only object[]

only specify required rule to restrict .terraform.lock.hcl update.

token string

token specifies the token to use for Git authentication when accessing private repositories. Works with any Git provider (GitHub, GitLab, Bitbucket, Gitea, etc.)

compatible:

  • autodiscovery

default: When not specified: No authentication (suitable for public repositories)

remark: Must be explicitly set for private repositories. Use template functions to read from environment: token: "{{ requiredEnv "GITLAB_TOKEN" }}"

example: token: "ghp_xxxxxxxxxxxx" token: "glpat-xxxxxxxxxxxx" token: "{{ requiredEnv "GITLAB_TOKEN" }}"

username string

username specifies the username to use for Git authentication when accessing private repositories. Works with any Git provider (GitHub, GitLab, Bitbucket, Gitea, etc.)

compatible:

  • autodiscovery

default: When not specified: "oauth2" (matches GitHub SCM plugin, required for go-git HTTP BasicAuth)

remark: For token-based auth, the username is typically a placeholder (token identifies the user). Common values: "oauth2" (default), "x-access-token", "git", or actual username. Use template functions to read from environment: username: "{{ requiredEnv "GIT_USERNAME" }}"

example: username: "git" username: "oauth2" username: "{{ requiredEnv "GIT_USERNAME" }}"

versionfilter object

versionfilter provides parameters to specify the version pattern to use when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
updatecli object

Spec defines the Updatecli parameters.

6 nested properties
rootdir string

rootdir defines the root directory used to recursively search for Updatecli manifest

ignore object[]

Ignore allows to specify rule to ignore "autodiscovery" a specific Updatecli based on a rule

only object[]

Only allows to specify rule to only "autodiscovery" manifest for a specific Updatecli based on a rule

files string[]

Files allows to specify a list of Files to analyze.

    The pattern syntax is:
       pattern:
         { term }
       term:
         '*'         matches any sequence of non-Separator characters
         '?'         matches any single non-Separator character
         '[' [ '^' ] { character-range } ']' character class (must be non-empty)
         c           matches character c (c != '*', '?', '\\', '[')
         '\\' c      matches character c

	    character-range:
	    	c           matches character c (c != '\\', '-', ']')
         '\\' c      matches character c
         lo '-' hi   matches character c for lo <= c <= hi

        Match requires pattern to match all of name, not just a substring.
        The only possible returned error is ErrBadPattern, when pattern
        is malformed.

        On Windows, escaping is disabled. Instead, '\\' is treated as
        path separator.
auths Record<string, object>

Auths provides a map of registry credentials where the key is the registry URL without scheme

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

	kind - semver
		versionfilter of kind `semver` uses semantic versioning as version filtering
		pattern accepts one of:
			`patch` - patch only update patch version
			`minor` - minor only update minor version
			`major` - major only update major versions
			`a version constraint` such as `>= 1.0.0`

	kind - regex
		versionfilter of kind `regex` uses regular expression as version filtering
		pattern accepts a valid regular expression

	example:
	```
		versionfilter:
			kind: semver
			pattern: minor
	```

	and its type like regex, semver, or just latest.
woodpecker object

Spec is a struct filled from Updatecli manifest data and shouldn't be modified at runtime unless For Fields that requires it, we can use the struct Woodpecker Spec defines the parameters which can be provided to the Woodpecker autodiscovery plugin.

7 nested properties
digest boolean

digest provides parameters to specify if the generated manifest should use a digest on top of the tag.

rootdir string

rootDir defines the root directory used to recursively search for Woodpecker workflow files If rootDir is not provided, the current working directory will be used. If rootDir is provided as an absolute path, scmID will be ignored. If rootDir is not provided but a scmid is, then rootDir will be set to the git repository root directory.

ignore object[]

ignore allows to specify rule to ignore autodiscovery a specific Woodpecker workflow based on a rule

only object[]

only allows to specify rule to only autodiscover manifest for a specific Woodpecker workflow based on a rule

auths Record<string, object>

auths provides a map of registry credentials where the key is the registry URL without scheme if empty, updatecli relies on OCI credentials such as the one used by Docker.

example:


auths: "ghcr.io": token: "xxx" "index.docker.io": username: "admin" password: "password"

filematch string[]

FileMatch allows to override default Woodpecker workflow file matching. Default [".woodpecker.yml", ".woodpecker.yaml", ".woodpecker/.yml", ".woodpecker/.yaml", ".woodpecker//*.yml", ".woodpecker//*.yaml"]

versionfilter object

versionfilter provides parameters to specify the version pattern used when generating manifest.

More information available at https://www.updatecli.io/docs/core/versionfilter/

kind - semver versionfilter of kind semver uses semantic versioning as version filtering pattern accepts one of: patch - patch only update patch version minor - minor only update minor version major - major only update major versions a version constraint such as >= 1.0.0

kind - regex versionfilter of kind regex uses regular expression as version filtering pattern accepts a valid regular expression

example:

  versionfilter:
  kind: semver
  pattern: minor

More version filter available at https://www.updatecli.io/docs/core/versionfilter/

scmid string

scmid is a unique identifier used to retrieve the scm configuration from the configuration file.

actionid string

actionid is a unique identifier used to retrieve the action configuration from the configuration file.

groupby string

groupby specifies how to group pipeline. The Accepted is one of "all", "individual". Default is "all"

	default:
		all
pullrequestid string

!Deprecated in favor of actionid

actions Record<string, object | object | object | object | object>

"actions" defines the list of action configurations which need to be managed. They are triggered if any of the depending target is updated.

examples:

actions: default: kind: github/pullrequest scmid: default spec: automerge: true labels: - "dependencies"

scms Record<string, object | object | object | object | object | object | object | object>

"scms" defines the list of repository configuration used to fetch content from.

examples:

scms: default: kind: github spec: owner: "updatecli" repository: "updatecli" token: "${{ env "GITHUB_TOKEN" }}" branch: "main"

sources Record<string, object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object>

"sources" defines the list of Updatecli source definition.

example:

sources: # Source to retrieve the latest version of nodejs nodejs: name: Get latest nodejs version kind: json spec: file: https://nodejs.org/dist/index.json key: .(lts!=false).version

conditions Record<string, object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object>

"conditions" defines the list of Updatecli condition definition.

example:

conditions: container: name: Check if Updatecli container image for tag "v0.63.0" exists kind: dockerimage spec: image: "updatecli/updatecli:latest" tag: "v0.63.0"

targets Record<string, object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object | object>

targets defines the list of Updatecli target definition.

example:

targets: default: name: 'ci: update Golangci-lint version to {{ source "default" }}' kind: yaml spec: file: .github/workflows/go.yaml key: $.jobs.build.steps[2].with.version scmid: default sourceid: default ---

version string

"version" defines the minimum Updatecli version compatible with the manifest

labels Record<string, string>

Labels contains user defined labels attached to the pipeline.

Labels are arbitrary key/value pairs that can be used to categorize or select pipelines. They are typically used for filtering pipelines when running Updatecli, for example to only run pipelines matching a given environment, operating system, or team.

example:

name: "Update dependencies" labels: os: debian environment: staging team: backend sources: ...