GitLab API Nodejs library. It wraps the HTTP api library described here.
Maintained by Manfred Touron and Dave Irvine
# Install from npm
npm install gitlab
URL to your GitLab instance should not include /api/v3
path.
# Connection
gitlab = (require 'gitlab')
url: 'http://example.com'
token: 'abcdefghij123456'
# Listing users
gitlab.users.all (users) ->
console.log "##{user.id}: #{user.email}, #{user.name}, #{user.created_at}" for user in users
# Listing projects
gitlab.projects.all (projects) ->
for project in projects
console.log "##{project.id}: #{project.name}, path: #{project.path}, default_branch: #{project.default_branch}, private: #{project.private}, owner: #{project.owner.name} (#{project.owner.email}), date: #{project.created_at}"
// Connection
var gitlab = require('gitlab')({
url: 'http://example.com',
token: 'abcdefghij123456'
});
// Listing users
gitlab.users.all(function(users) {
for (var i = 0; i < users.length; i++) {
console.log("#" + users[i].id + ": " + users[i].email + ", " + users[i].name + ", " + users[i].created_at);
}
});
// Listing projects
gitlab.projects.all(function(projects) {
for (var i = 0; i < projects.length; i++) {
console.log("#" + projects[i].id + ": " + projects[i].name + ", path: " + projects[i].path + ", default_branch: " + projects[i].default_branch + ", private: " + projects[i]["private"] + ", owner: " + projects[i].owner.name + " (" + projects[i].owner.email + "), date: " + projects[i].created_at);
}
});
See Examples directory for more examples
Edit the Coffee-Script files in src
, then build them using cake build
.
Use cake watch
to build files continuously while developing.
Check out cli-gitlab
- Glavin Wiechert
- Florian Quiblier
- Anthony Heber
- Evan Heidtmann
- luoqpolyvi
- Brian Vanderbusch
- daprahamian
- pgorecki
- CaoJun
- nalabjp
- shaoshuai0102
- Sakesan Panjamawat
- Jose Jiménez
- huhgawz
- Connor Weng
- Felix Fichte
- Steve Norman
- Pete Ward
- Pieter Soudan
- Ryan Southern
- Zhongyi Tong
- mrawdon
- Marcus M. Darden
MIT
- No entry.
1.7.1 (2016-08-04)
- Bug: fix create MR (@zhangqingyv)
1.7.0 (2016-07-11)
- Add support for adding a tag to a project
- Add gitlab.projects.repository.compare()
- Add support for portion builds API
- Set slumber version to non-breaking
1.6.0 (2016-05-10)
- Add function to query all projects as admin
- Add oauth_token option to authenticate connection
- Add possibility to showFile by sha id
- Add support for the GitLab services API
- Fix undefined assigneeId in merge request (#111)
1.5.0 (2015-11-26)
- Add
Project.edit
- Add
Projects.create_for_user
- Add ssh key to user
- Add Projects forks
Thanks to @peteward44, @Sewdn, @ryansouthern and @geeeeeeeeek
- Coffee rebuild
1.4.0 (2015-08-11)
- Now using headers for PRIVATE-TOKEN
- Add
Groups.create
,Groups.addProject
andGroups.search
methods - Add
Projects.remove
andProjects.search
methods - Add
UserKeys
resource - Add
Users.search
method - Rename
ProjectMielstones.get
toProjectMilestones.all
- Handling pagination on multiple new
.all()
methods - Various stability and performance fixes
Thanks to @huhgawz, @ConnorWeng, @langma, @spruce, @stevenorman and @nogs
1.3.0 (2015-02-09)
- Now handling notes
- Now handling lables
- Added Groups.addMember() and Groups.access_levels
- Checking for permissions
- Added tests
- Code cleanup and various small improvements
1.2.0 (2014-12-24)
- Switched to new organization, some urls changed
- Improve development tools
- Cleaned code
- Changed AddHook parameters
- Happy Christmas
1.1.0 (2014-11-04)
- Added project branch support
- Improved compatibility with API
- Improved global error handling
- Rebuilt javascript using latest Coffee-Script
1.0.0 (2014-08-19)
- Not fully stable, need more tests
- Now we have a CHANGELOG
POC (2012-12-11)
- POC