renovate/lib/datasource
2020-02-15 17:49:57 +01:00
..
__snapshots__ chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
ansible-galaxy feat: ansible-galaxy datasource and manager (#5301) 2020-02-13 11:50:39 +01:00
cargo feat: DatasourceError (#5475) 2020-02-13 13:29:55 +01:00
cdnjs feat: DatasourceError (#5475) 2020-02-13 13:29:55 +01:00
dart feat: DatasourceError (#5475) 2020-02-13 13:29:55 +01:00
docker fix(docker): ignore quay.io errors 2020-02-15 17:49:57 +01:00
git-submodules chore: fix flaky tests (#5464) 2020-02-12 10:22:38 +01:00
git-tags chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
github chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
gitlab chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
go chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
gradle-version fix(gradle-version): only throw error for services.gradle.org 2020-02-14 12:53:27 +01:00
helm feat: DatasourceError (#5475) 2020-02-13 13:29:55 +01:00
hex feat: DatasourceError (#5475) 2020-02-13 13:29:55 +01:00
maven feat: DatasourceError (#5475) 2020-02-13 13:29:55 +01:00
npm fix(npm): better datasource error logging 2020-02-14 11:06:09 +01:00
nuget chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
orb chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
packagist feat: DatasourceError (#5475) 2020-02-13 13:29:55 +01:00
pypi chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
ruby-version feat: DatasourceError (#5475) 2020-02-13 13:29:55 +01:00
rubygems fix(rubygems): don’t throw DatasourceError for unknown 2020-02-14 09:59:52 +01:00
sbt chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
terraform logs: fix terraform repository log meta 2020-02-14 13:45:04 +01:00
terraform-provider chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
common.ts fix: set DatasourceError prototype explicitly 2020-02-13 14:31:26 +01:00
index.spec.ts chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
index.ts fix(datasource): better DatasourceError handling 2020-02-14 09:19:45 +01:00
metadata.spec.ts chore(datasource): move test files to lib (#5426) 2020-02-11 05:08:10 +00:00
metadata.ts feat(constants): Host Types (#5171) 2020-02-06 12:15:54 +00:00
readme.md feat: replace purl with datasource (#3154) 2019-02-04 09:41:22 +01:00

Datasources

Datasources are used in Renovate primarily to fetch released versions of packages.

getPkgReleases

The minimum exported interface for a datasource is a function called getPkgReleases that takes a lookup config as input.

The config contains:

  • lookupName: the package's full name including scope if present (e.g. @foo/bar)
  • lookupType: used only when there is a need to specify different types of lookups within the same datasource
  • registryUrls: an array of registry Urls to try

getPkgReleases should return an object containing:

  • releases: an array of strings of matched versions. This is the only mandatory field.
  • deprecationMessage: a string description of the package's deprecation notice, if applicable
  • sourceUrl: a HTTP URL pointing to the source code (e.g. on GitHub)
  • homepage: a HTTP URL for the package's homepage. Ideally should be empty if the homepage and sourceUrl are the same
  • changelogUrl: a URL pointing to the package's Changelog (could be a markdown file, for example). If not present then Renovate will search the sourceUrl for a changelog file.
  • tags: an object mapping tag -> version, e.g. tags: { latest: '3.0.0' }. This is only used by the followTags function.

getDigest

Datasources that support the concept of digests (e.g. docker digests and git commit hashes) also can export a getDigest function.

The getDigest function has two inputs:

  • config: the Renovate config for the package being updated, contains same fields as getPkgReleases
  • newValue: the version or value to retrieve the digest for

The getDigest function returns a string output representing the digest value. If none is found then a return value of null should be returned.

getPreset

This function is supported by npm, github and gitlab for retrieving a Renovate preset.