async deleteArtifacts()

in gh-actions-artifact-client/src/delete-http-client.js [4:32]


  async deleteArtifacts(artifactNamePattern) {
    const httpClient = utils.createHttpClient('@actions/artifact-download')
    try {
      const artifacts = await this.listArtifacts(httpClient)
      if (artifacts.count === 0) {
        throw new Error(
          `Unable to find any artifacts for the associated workflow`
        )
      }
      const artifactsToDelete = artifacts.value.filter(artifact => {
        return artifact.name.match(artifactNamePattern)
      })
      if (!artifactsToDelete) {
        throw new Error(
          `Unable to find artifacts matching ${artifactNamePattern}`
        )
      }

      for (const artifactToDelete of artifactsToDelete) {
        await this.deleteArtifact(
          httpClient,
          artifactToDelete.name,
          artifactToDelete.url
        )
      }
    } finally {
      httpClient.dispose()
    }
  }