/cl-gitlab

Common Lisp interface to Gitlab's api - mirror of https://gitlab.com/vindarel/cl-gitlab (staling repository, I don't use it)

Primary LanguageCommon Lisp

¡ don’t look ! it’s ugly.

Minimalistic interface to Gitlab’s api

A work in progress.

Authentication

There is no need to authenticate to query public projects.

Otherwise, you will need to manually set the *private-token* (until we implement a better way).

Create a token on your Gitlab profile: https://docs.gitlab.com/ce/user/profile/personal_access_tokens.html and then:

(setf gitlab:access-token "secret")

Using query params

  • Note taken on [2018-01-13 sam. 03:08]
    room for improvement. It’s flexible right now.

You can give query parameters as an alist to any request with the :params keyword argument. For example:

(project-issues "user/project" :params '(("state" . "opened")))

Endpoints

Base function: request

With request method "path" :params (alist) :data you can access all the api.

(gitlab:request :GET "/projects")

The other functions are only helpers.

Getting a project

(gitlab:project "username/project")

endpoint documentation.

Getting a project’s issues

(project-issues "user/project" :params '(("state" . "opened")))

See the api documentation for the possible parameters.

Inspired by glab.el.

It follows a minimalistic approach so you better read Gitlab’s API documentation: https://docs.gitlab.com/ce/api/ The goal is that if their API changes, our library doesn’t break.