diff --git a/lib/manager/terragrunt-version/__snapshots__/extract.spec.ts.snap b/lib/manager/terragrunt-version/__snapshots__/extract.spec.ts.snap new file mode 100644 index 0000000000000000000000000000000000000000..ccbcee586c813adfe9a2f57e8b98595bf4a93385 --- /dev/null +++ b/lib/manager/terragrunt-version/__snapshots__/extract.spec.ts.snap @@ -0,0 +1,11 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`manager/terragrunt-version/extract extractPackageFile() returns a result 1`] = ` +Array [ + Object { + "currentValue": "12.0.0", + "datasource": "github-releases", + "depName": "gruntwork-io/terragrunt", + }, +] +`; diff --git a/lib/manager/terragrunt-version/extract.spec.ts b/lib/manager/terragrunt-version/extract.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..d44244501864aa80b036cc4154b980a9e42ed679 --- /dev/null +++ b/lib/manager/terragrunt-version/extract.spec.ts @@ -0,0 +1,11 @@ +import { getName } from '../../../test/util'; +import { extractPackageFile } from './extract'; + +describe(getName(__filename), () => { + describe('extractPackageFile()', () => { + it('returns a result', () => { + const res = extractPackageFile('12.0.0\n'); + expect(res.deps).toMatchSnapshot(); + }); + }); +}); diff --git a/lib/manager/terragrunt-version/extract.ts b/lib/manager/terragrunt-version/extract.ts new file mode 100644 index 0000000000000000000000000000000000000000..64762ab45c424cf38988716f3604e1fbb4726dc1 --- /dev/null +++ b/lib/manager/terragrunt-version/extract.ts @@ -0,0 +1,13 @@ +import * as datasourceGitHubRelease from '../../datasource/github-releases'; +import { logger } from '../../logger'; +import { PackageDependency, PackageFile } from '../common'; + +export function extractPackageFile(content: string): PackageFile { + logger.trace('terragrunt-version.extractPackageFile()'); + const dep: PackageDependency = { + depName: 'gruntwork-io/terragrunt', + currentValue: content.trim(), + datasource: datasourceGitHubRelease.id, + }; + return { deps: [dep] }; +} diff --git a/lib/manager/terragrunt-version/index.ts b/lib/manager/terragrunt-version/index.ts new file mode 100644 index 0000000000000000000000000000000000000000..fe24c1f17b48ad248565d7651b396ee5c8d4b86d --- /dev/null +++ b/lib/manager/terragrunt-version/index.ts @@ -0,0 +1,9 @@ +import * as hashicorpVersioning from '../../versioning/hashicorp'; + +export { extractPackageFile } from './extract'; + +export const defaultConfig = { + fileMatch: ['(^|/)\\.terragrunt-version$'], + versioning: hashicorpVersioning.id, + extractVersion: '^v(?<version>.+)$', +}; diff --git a/lib/manager/terragrunt-version/readme.md b/lib/manager/terragrunt-version/readme.md new file mode 100644 index 0000000000000000000000000000000000000000..5a0beb6aa0e0b746b59de3dc2f174def30197537 --- /dev/null +++ b/lib/manager/terragrunt-version/readme.md @@ -0,0 +1,2 @@ +This will maintain `.terragrunt-version` files. +Available versions will be determined from `gruntwork-io/terragrunt` GitHub releases.