node-gitlab
GitLab API Nodejs library.
It wraps the HTTP api library described here.
Maintained by Manfred Touron and Dave Irvine
Install
# Install from npm
npm install gitlab
Usage
URL to your GitLab instance should not include /api/v3 path.
Coffee-Script
# 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}"
Javascript
// 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
Develop
Edit the Coffee-Script files in src, then build them using cake build.
Use cake watch to build files continuously while developing.
CLI
Check out cli-gitlab
Contributors
- 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
 
License
MIT
Changelog
master (unreleased)
- 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
1.4.1 (2015-08-11)
- Coffee rebuild
 
1.4.0 (2015-08-11)
- Now using headers for PRIVATE-TOKEN
 - Add 
Groups.create,Groups.addProjectandGroups.searchmethods - Add 
Projects.removeandProjects.searchmethods - Add 
UserKeysresource - Add 
Users.searchmethod - Rename 
ProjectMielstones.gettoProjectMilestones.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
 




