mirror of
https://github.com/dorny/test-reporter.git
synced 2025-12-16 06:17:10 +01:00
Pass auth token to got request
This commit is contained in:
parent
52024f70c3
commit
8819b4b3d4
5 changed files with 36 additions and 21 deletions
|
|
@ -19,7 +19,8 @@ export class ArtifactProvider implements InputProvider {
|
|||
readonly name: string,
|
||||
readonly pattern: string[],
|
||||
readonly sha: string,
|
||||
readonly runId: number
|
||||
readonly runId: number,
|
||||
readonly token: string
|
||||
) {
|
||||
if (this.artifact.startsWith('/')) {
|
||||
const endIndex = this.artifact.lastIndexOf('/')
|
||||
|
|
@ -66,7 +67,7 @@ export class ArtifactProvider implements InputProvider {
|
|||
}
|
||||
|
||||
for (const art of artifacts) {
|
||||
await downloadArtifact(this.octokit, art.id, art.name)
|
||||
await downloadArtifact(this.octokit, art.id, art.name, this.token)
|
||||
const reportName = this.getReportName(art.name)
|
||||
const files: FileContent[] = []
|
||||
const zip = new Zip(art.name)
|
||||
|
|
|
|||
10
src/main.ts
10
src/main.ts
|
|
@ -69,7 +69,15 @@ class TestReporter {
|
|||
const pattern = this.path.split(',')
|
||||
|
||||
const inputProvider = this.artifact
|
||||
? new ArtifactProvider(this.octokit, this.artifact, this.name, pattern, this.context.sha, this.context.runId)
|
||||
? new ArtifactProvider(
|
||||
this.octokit,
|
||||
this.artifact,
|
||||
this.name,
|
||||
pattern,
|
||||
this.context.sha,
|
||||
this.context.runId,
|
||||
this.token
|
||||
)
|
||||
: new LocalFileProvider(this.name, pattern)
|
||||
|
||||
const parseErrors = this.maxAnnotations > 0
|
||||
|
|
|
|||
|
|
@ -32,7 +32,8 @@ export function getCheckRunContext(): {sha: string; runId: number} {
|
|||
export async function downloadArtifact(
|
||||
octokit: InstanceType<typeof GitHub>,
|
||||
artifactId: number,
|
||||
fileName: string
|
||||
fileName: string,
|
||||
token: string
|
||||
): Promise<void> {
|
||||
core.startGroup(`Downloading artifact ${fileName}`)
|
||||
try {
|
||||
|
|
@ -44,9 +45,11 @@ export async function downloadArtifact(
|
|||
archive_format: 'zip'
|
||||
})
|
||||
|
||||
const resp = await got({
|
||||
url: req.url,
|
||||
headers: req.headers as {[header: string]: string},
|
||||
const headers = {
|
||||
Authorization: `Bearer ${token}`
|
||||
}
|
||||
const resp = await got(req.url, {
|
||||
headers,
|
||||
followRedirect: false
|
||||
})
|
||||
|
||||
|
|
@ -57,15 +60,15 @@ export async function downloadArtifact(
|
|||
|
||||
const url = resp.headers.location
|
||||
if (url === undefined) {
|
||||
const headers = Object.keys(resp.headers)
|
||||
core.info(`Received headers: ${headers.join(', ')}`)
|
||||
const receivedHeaders = Object.keys(resp.headers)
|
||||
core.info(`Received headers: ${receivedHeaders.join(', ')}`)
|
||||
throw new Error('Location header was not found in API response')
|
||||
}
|
||||
if (typeof url !== 'string') {
|
||||
throw new Error(`Location header has unexpected value: ${url}`)
|
||||
}
|
||||
|
||||
const downloadStream = got.stream(url)
|
||||
const downloadStream = got.stream(url, {headers})
|
||||
const fileWriterStream = createWriteStream(fileName)
|
||||
|
||||
core.info(`Downloading ${url}`)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue