gitbeaker/src/core/services/Environments.ts
2019-08-30 17:50:16 -04:00

43 lines
1.3 KiB
TypeScript

import {
BaseRequestOptions,
BaseService,
PaginatedRequestOptions,
RequestHelper,
Sudo,
} from '../infrastructure';
import { ProjectId, EnvironmentId } from '.';
class Environments extends BaseService {
all(projectId: ProjectId, options?: PaginatedRequestOptions) {
const pId = encodeURIComponent(projectId);
return RequestHelper.get(this, `projects/${pId}/environments`, options);
}
create(projectId: ProjectId, options?: BaseRequestOptions) {
const pId = encodeURIComponent(projectId);
return RequestHelper.post(this, `projects/${pId}/environments`, options);
}
edit(projectId: ProjectId, environmentId: EnvironmentId, options?: BaseRequestOptions) {
const [pId, eId] = [projectId, environmentId].map(encodeURIComponent);
return RequestHelper.put(this, `projects/${pId}/environments/${eId}`, options);
}
remove(projectId: ProjectId, environmentId: EnvironmentId, options?: Sudo) {
const [pId, eId] = [projectId, environmentId].map(encodeURIComponent);
return RequestHelper.del(this, `projects/${pId}/environments/${eId}`, options);
}
stop(projectId: ProjectId, environmentId: EnvironmentId, options?: Sudo) {
const [pId, eId] = [projectId, environmentId].map(encodeURIComponent);
return RequestHelper.post(this, `projects/${pId}/environments/${eId}/stop`, options);
}
}
export default Environments;