From 2a95fba312329f7a9d039a9a67dabd3baf05e28b Mon Sep 17 00:00:00 2001 From: Mike Penz Date: Mon, 19 Oct 2020 19:58:36 +0200 Subject: [PATCH] - verify versions match semver versioning --- src/tags.ts | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/tags.ts b/src/tags.ts index 9f3f888..4bd1c17 100755 --- a/src/tags.ts +++ b/src/tags.ts @@ -1,5 +1,6 @@ import {Octokit, RestEndpointMethodTypes} from '@octokit/rest' import * as core from '@actions/core' +import * as semver from 'semver' import {SemVer} from 'semver' export interface TagInfo { @@ -94,8 +95,18 @@ export class Tags { 2020.3.0 */ export function sortTags(tags: TagInfo[]): TagInfo[] { - tags.sort((b, a) => { + // filter out tags which do not follow semver + const validatedTags = tags.filter(tag => { + const isValid = semver.valid(tag.name) !== null + if(!isValid) { + core.debug(`⚠️ dropped tag ${tag.name} because it is not a valid semver tag`) + } + return isValid + }) + + // sort using semver + validatedTags.sort((b, a) => { return new SemVer(a.name).compare(b.name) }) - return tags + return validatedTags }