allow min pre release versions to be set
This commit is contained in:
@@ -19,12 +19,22 @@ export function getVersionIds(input: Input): Observable<string[]> {
|
||||
map(versionInfo => {
|
||||
const numberVersionsToDelete =
|
||||
versionInfo.length - input.minVersionsToKeep
|
||||
return numberVersionsToDelete <= 0
|
||||
? []
|
||||
: versionInfo
|
||||
.filter(info => !input.ignoreVersions.test(info.version))
|
||||
.map(info => info.id)
|
||||
.slice(0, numberVersionsToDelete)
|
||||
|
||||
if (input.deletePreReleaseVersions == 'true') {
|
||||
return numberVersionsToDelete <= 0
|
||||
? []
|
||||
: versionInfo
|
||||
.filter(info => !input.ignoreVersions.test(info.version))
|
||||
.map(info => info.id)
|
||||
.slice(0, -input.minVersionsToKeep)
|
||||
} else {
|
||||
return numberVersionsToDelete <= 0
|
||||
? []
|
||||
: versionInfo
|
||||
.filter(info => !input.ignoreVersions.test(info.version))
|
||||
.map(info => info.id)
|
||||
.slice(0, numberVersionsToDelete)
|
||||
}
|
||||
})
|
||||
)
|
||||
}
|
||||
|
||||
@@ -47,8 +47,9 @@ export class Input {
|
||||
this.token = validatedParams.token
|
||||
|
||||
if (this.deletePreReleaseVersions == 'true') {
|
||||
this.numOldVersionsToDelete = 100
|
||||
this.minVersionsToKeep = 0
|
||||
this.numOldVersionsToDelete = 100 - this.minVersionsToKeep
|
||||
this.minVersionsToKeep =
|
||||
this.minVersionsToKeep > 0 ? this.minVersionsToKeep : 1
|
||||
this.ignoreVersions = new RegExp('^(0|[1-9]\\d*)((\\.(0|[1-9]\\d*))*)$')
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,7 +16,9 @@ function getActionInput(): Input {
|
||||
numOldVersionsToDelete: Number(getInput('num-old-versions-to-delete')),
|
||||
minVersionsToKeep: Number(getInput('min-versions-to-keep')),
|
||||
ignoreVersions: RegExp(getInput('ignore-versions')),
|
||||
deletePreReleaseVersions: getInput('delete-only-pre-release-versions'),
|
||||
deletePreReleaseVersions: getInput(
|
||||
'delete-only-pre-release-versions'
|
||||
).toLowerCase(),
|
||||
token: getInput('token')
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user