@megatherium/gitlab-api

0.15.1 • Public • Published

gitlab-api

See the whole documentation or the coverage report.

Getting started

Install the dependency:

$ npm install @megatherium/gitlab-api

Set up environment variables.

Start using it:

import gitlab from '@megatherium/gitlab-api';

(async() => {
	await gitlab.createProject('my-test-project');
})();

Configure an environment variable to give the module access to your GitLab API.

Environment variables

  • MEGATHERIUM_GITLAB_ACCESS_TOKEN or GITLAB_TOKEN - the access token to login to GitLab instance
  • MEGATHERIUM_GITLAB_BASE_URL - the base url of the github repository; default: https://gitlab.com/api/v4

API (22)

Exports

  • createProject(pathOrName: string, additionalData?: object): Promise Creates a new pipeline schedule for a project.
  • createProjectMember(projectIdOrName: int | string, userId: int, accessLevel: int, additionalData?: object): Promise<object> Adds a member to a project.
  • createProjectPipelineSchedule(projectIdOrName: int | string, description: string, cron: string, additionalData?: object): Promise Creates a new project.
  • createProjectVariable(projectIdOrName: int | string, variableData: object): Promise Creates a new variable for a GitLab project.
  • createProjectVariable(projectIdOrName: int | string, variableData: object): Promise Creates a new variable for a GitLab project.
  • createUserKey(parameters: object): Promise Adds a new ssh key to the current user.
  • getProject(projectIdOrName: int | string, additionalParameters?: object): Promise Retrieves the information about a project.
  • listProjects(additionalParameters?: object): Promise<Array<object>> Lists all projects from the current namespace, optionally filtered by parameters.
  • listProjectMembers(projectIdOrName: int | string, additionalParameters?: object): Promise<Array<object>> Lists all the members of a project.
  • listProjectPipelineSchedules(projectIdOrName: int | string, additionalParameters?: object): Promise<Array<object>> Lists the pipeline schedules from a specific project.
  • listProjectVariables(projectIdOrName: int | string): Promise<Array<object>> Lists the variables added to a project.
  • listUserKeys(): Promise<Array<object>> Lists the ssh keys from the current user.
  • listUsers(additionalParameters?: object): Promise<Array<object>> Lists the users. Can be filtered.
  • request(method: string, url: string, parameters?: object) Performs an authenticated API request on the GitLab API.
  • removeProject(pathIdOrName: string): Promise Deletes a project permanently.
  • removeProjectMember(projectIdOrName: int | string, userId: int, additionalParameters?: object): Promise Removes a member from a project.
  • removeProjectPipelineSchedule(projectIdOrName: int | string, pipelineScheduleId: int): Promise Removes a pipeline schedule from a project.
  • removeProjectVariable(projectIdOrName: int | string, variableName: string, additionalParameters?: object): Promise Deletes a variable from a project.
  • removeUserKey(int: keyId): Promise Deletes a key of the current user permanently.
  • updateProjectMember(projectIdOrName: int | string, userId: int, accessLevel: int, additionalData?: object): Promise<object> Updates the member of a project.
  • updateProjectPipelineSchedule(projectIdOrName: int | string, pipelineScheduleId: int, additionalData?: object): Promise Updates a pipeline schedule of a project.
  • updateProjectVariable(projectIdOrName: int | string, variableName: string, variableValue: string, additionalData?: object): Promise Updates the data from a project variable.

Scripts

The following scripts can be executed using npm run:

  • build Builds the module.
  • build-docs Builds the documentation.
  • build-source Builds the source code.
  • build-tests Builds test-cases from jsdoc examples.
  • clear Clears the module from a previous build.
  • clear-coverage Clears the coverage reports and caches.
  • clear-docs Clears the previous documentation build.
  • clear-source Clears the previous source build.
  • clear-tests Clears the generated jsdoc example test files.
  • fix Runs all automated fixes.
  • fix-lint Automatically fixes linting problems.
  • release Runs semantic release. Meant to be only executed by the CI, not by human users.
  • test Executes all tests.
  • test-coverage Generates coverage reports from the test results using nyc.
  • test-deps Executes a depcheck.
  • test-e2e Executes End-to-End-Tests using cucumber.
  • test-integration Executes integration tests using jest.
  • test-lint Executes linting tests using eslint.
  • test-unit Executes unit tests using mocha.
  • update Checks for dependency updates using renovate.

Readme

Keywords

none

Package Sidebar

Install

npm i @megatherium/gitlab-api

Weekly Downloads

0

Version

0.15.1

License

SEE LICENSE IN LICENSE.md

Unpacked Size

783 kB

Total Files

93

Last publish

Collaborators

  • sargtex1