diff --git a/src/services/Jobs.js b/src/services/Jobs.js index 466ccf92..092a575f 100644 --- a/src/services/Jobs.js +++ b/src/services/Jobs.js @@ -7,28 +7,88 @@ class Jobs extends BaseService { return RequestHelper.get(this, `projects/${pId}/jobs`, options); } - play(projectId, jobId) { - const pId = encodeURIComponent(projectId); + cancel(projectId, jobId) { + const [pId, jId] = [projectId, jobId].map(encodeURIComponent); - return RequestHelper.post(this, `projects/${pId}/jobs/${jobId}/play`); + return RequestHelper.post(this, `projects/${pId}/jobs/${jId}/cancel`); } - downloadSingleArtifactFile(projectId, jobId, artifactPath, { stream }) { - const pId = encodeURIComponent(projectId); + downloadSingleArtifactFile( + projectId, + jobId, + artifactPath, + options = { stream: false }, + ) { + const [pId, jId] = [projectId, jobId].map(encodeURIComponent); - return RequestHelper.get(this, `projects/${pId}/jobs/${jobId}/artifacts/${artifactPath}`, {}, { stream }); + return RequestHelper.get( + this, + `projects/${pId}/jobs/${jId}/artifacts/${artifactPath}`, + options, + { stream: options.stream }, + ); + } + + downloadLatestArtifactFile( + projectId, + ref, + name, + options = { stream: false }, + ) { + const [pId, rId, jobName] = [projectId, ref, name].map(encodeURIComponent); + + return RequestHelper.get( + this, + `projects/${pId}/jobs/artifacts/${rId}/download?job=${jobName}`, + options, + { stream: options.stream }, + ); + } + + downloadTraceFile(projectId, jobId) { + const [pId, jId] = [projectId, jobId].map(encodeURIComponent); + + return RequestHelper.get(this, `projects/${pId}/jobs/${jId}/trace`); + } + + erase(projectId, jobId) { + const [pId, jId] = [projectId, jobId].map(encodeURIComponent); + + return RequestHelper.post(this, `projects/${pId}/jobs/${jId}/erase`); + } + + keepArtifacts(projectId, jobId) { + const [pId, jId] = [projectId, jobId].map(encodeURIComponent); + + return RequestHelper.post(this, `projects/${pId}/jobs/${jId}/artifacts/keep`); + } + + play(projectId, jobId) { + const [pId, jId] = [projectId, jobId].map(encodeURIComponent); + + return RequestHelper.post(this, `projects/${pId}/jobs/${jId}/play`); + } + + retry(projectId, jobId) { + const [pId, jId] = [projectId, jobId].map(encodeURIComponent); + + return RequestHelper.post(this, `projects/${pId}/jobs/${jId}/retry`); } show(projectId, jobId) { - const pId = encodeURIComponent(projectId); + const [pId, jId] = [projectId, jobId].map(encodeURIComponent); - return RequestHelper.get(this, `projects/${pId}/jobs/${jobId}`); + return RequestHelper.get(this, `projects/${pId}/jobs/${jId}`); } showPipelineJobs(projectId, pipelineId, options) { - const pId = encodeURIComponent(projectId); + const [pId, ppId] = [projectId, pipelineId].map(encodeURIComponent); - return RequestHelper.get(this, `projects/${pId}/pipelines/${pipelineId}/jobs`, options); + return RequestHelper.get( + this, + `projects/${pId}/pipelines/${ppId}/jobs`, + options, + ); } }