add delete limit of 100
This commit is contained in:
@@ -6,7 +6,7 @@ import {
|
||||
import * as Graphql from '../../src/version/graphql'
|
||||
import {GetVersionsQueryResponse} from '../../src/version'
|
||||
|
||||
export function getMockedOldestQueryResponse(
|
||||
export function getMockedOldestQueryResponseForLessThan100(
|
||||
numVersions: number
|
||||
): GetVersionsQueryResponse {
|
||||
const versions = []
|
||||
|
||||
10
dist/index.js
vendored
10
dist/index.js
vendored
@@ -58,16 +58,20 @@ function finalIds(input) {
|
||||
console.log(`in min versions to keep`);
|
||||
return getVersionIds(input.owner, input.repo, input.packageName, 100, input.ignoreVersions, '', input.token).pipe(operators_1.map(value => {
|
||||
console.log(`point 1`);
|
||||
const toDelete = totalCount -
|
||||
let toDelete = totalCount -
|
||||
value.filter(info => input.ignoreVersions.test(info.version))
|
||||
.length -
|
||||
input.minVersionsToKeep;
|
||||
toDelete = toDelete > 100 ? 100 : toDelete;
|
||||
value = value.filter(info => !input.ignoreVersions.test(info.version));
|
||||
console.log(`toDelete: ${toDelete} numVersions: ${input.numOldVersionsToDelete} total count: ${totalCount}`);
|
||||
if (toDelete > input.numOldVersionsToDelete) {
|
||||
if (toDelete > input.numOldVersionsToDelete &&
|
||||
input.numOldVersionsToDelete < 100) {
|
||||
//here input.numOldVersionsToDelete will never have user value hence using it to keep track of deleted versions
|
||||
input.numOldVersionsToDelete =
|
||||
input.numOldVersionsToDelete + value.length;
|
||||
input.numOldVersionsToDelete + value.length > 100
|
||||
? 100
|
||||
: input.numOldVersionsToDelete + value.length;
|
||||
return toDelete - input.numOldVersionsToDelete >= 0
|
||||
? value.map(info => info.id)
|
||||
: value
|
||||
|
||||
@@ -1,20 +1,8 @@
|
||||
import {Input} from './input'
|
||||
import {EMPTY, Observable, of, throwError} from 'rxjs'
|
||||
import {deletePackageVersions, getOldestVersions} from './version'
|
||||
import {deletePackageVersions, getOldestVersions, VersionInfo} from './version'
|
||||
import {concatMap, map, expand, tap} from 'rxjs/operators'
|
||||
|
||||
export interface VersionInfo {
|
||||
id: string
|
||||
version: string
|
||||
}
|
||||
|
||||
export interface QueryInfo {
|
||||
versions: VersionInfo[]
|
||||
cursor: string
|
||||
paginate: boolean
|
||||
totalCount: number
|
||||
}
|
||||
|
||||
let totalCount: number
|
||||
|
||||
export function getVersionIds(
|
||||
@@ -102,19 +90,25 @@ export function finalIds(input: Input): Observable<string[]> {
|
||||
).pipe(
|
||||
map(value => {
|
||||
console.log(`point 1`)
|
||||
const toDelete =
|
||||
let toDelete =
|
||||
totalCount -
|
||||
value.filter(info => input.ignoreVersions.test(info.version))
|
||||
.length -
|
||||
input.minVersionsToKeep
|
||||
toDelete = toDelete > 100 ? 100 : toDelete
|
||||
value = value.filter(info => !input.ignoreVersions.test(info.version))
|
||||
console.log(
|
||||
`toDelete: ${toDelete} numVersions: ${input.numOldVersionsToDelete} total count: ${totalCount}`
|
||||
)
|
||||
if (toDelete > input.numOldVersionsToDelete) {
|
||||
if (
|
||||
toDelete > input.numOldVersionsToDelete &&
|
||||
input.numOldVersionsToDelete < 100
|
||||
) {
|
||||
//here input.numOldVersionsToDelete will never have user value hence using it to keep track of deleted versions
|
||||
input.numOldVersionsToDelete =
|
||||
input.numOldVersionsToDelete + value.length
|
||||
input.numOldVersionsToDelete + value.length > 100
|
||||
? 100
|
||||
: input.numOldVersionsToDelete + value.length
|
||||
return toDelete - input.numOldVersionsToDelete >= 0
|
||||
? value.map(info => info.id)
|
||||
: value
|
||||
|
||||
Reference in New Issue
Block a user