import {Releases} from "./Releases"; import * as core from "@actions/core"; export interface ArtifactDestroyer { destroyArtifacts(releaseId: number): Promise } export class GithubArtifactDestroyer implements ArtifactDestroyer { constructor(private releases: Releases) { } async destroyArtifacts(releaseId: number): Promise { const releaseAssets = await this.releases.listArtifactsForRelease(releaseId) for (const artifact of releaseAssets) { const asset = artifact core.debug(`Deleting existing artifact ${artifact.name}...`) await this.releases.deleteArtifact(asset.id) } } }