From 47b73a2917012a0de6759272ecededed07060e1e Mon Sep 17 00:00:00 2001 From: Lorenzo Bernardi Date: Wed, 4 Nov 2020 20:08:04 +0100 Subject: [PATCH] Added support for full semver --- src/meta.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/meta.ts b/src/meta.ts index 31624a6..7020b0b 100644 --- a/src/meta.ts +++ b/src/meta.ts @@ -1,5 +1,6 @@ import * as handlebars from 'handlebars'; import * as moment from 'moment'; +import * as semver from 'semver'; import {Inputs} from './context'; import {Context} from '@actions/github/lib/context'; import {ReposGetResponseData} from '@octokit/types'; @@ -76,6 +77,17 @@ export class Meta { let tags: Array = []; for (const image of this.inputs.images) { tags.push(`${image}:${version.version}`); + if(this.inputs.fullSemver && semver.valid(version.version)) { + const major: number = semver.major(semver.coerce(version.version)); + const minor: number = semver.minor(semver.coerce(version.version)); + const patch: number = semver.patch(semver.coerce(version.version)); + const prerelease: string[] | null = semver.patch(version.version); + tags.push(`${image}:${major}`); + tags.push(`${image}:${major}.${minor}`); + if(prerelease !== null) { + tags.push(`${image}:${major}.${minor}.${patch}`); + } + } if (version.latest) { tags.push(`${image}:latest`); }