Gitlab api client with more control over server response
Why one more gitlab api client? Though other project works and return the result as expected but due to poor implementation, less or no control over server response and few other reasons, didn't scale them well. Design differences also makes this project different. In the end i need this for my current project.
- asynchronous calls i.e no blocking
- fetches server response as well
- standard callback function argumnets:
function( error, response, result){ ... }
- use what you need. eg.
require('gitlab-yaac/users');
and you'll get users resource available only
npm install gitlab-yaac
var Users= require("gitlb-yaac/users");
//** Create new gitlab client
var gUsers = new Users({
url: 'http://example.com',
token: 'abcdefghij123456',
admin: true
});
// find all users
gUsers.find( function(err,response, results){})
...
//search for users by email or username with: /users?search=John
gUsers.find("john", function(err, response,results){ });
...
//find user by id
gUsers.find(4, function(err, response,result){
if( response.statusCode !== 404 ){
console.log("user found: ", result);
}
}
});
// with pagination
gUsers.find( {page: 1, per_page: 2}, function(err,res,result){...});
// Or
gUsers.find( "username/email", {page:1, per_page: 2}, function(err, res, result){...})
find it on wiki
Not all resources are implemented yet. Only highlighted ones are currently implemented.
Currently implemented resources are:
- Users
- Session
- Projects
- Users
- Session
- Projects
- Project Snippets
- Repositories
- Repository Files
- Commits
- Branches
- Merge Requests
- Issues
- Labels
- Milestones
- Notes (comments)
- Deploy Keys
- System Hooks
- Groups
- [gitlab official api] (http://doc.gitlab.com/ce/api/)
- TLS/SSL Protocol support
- add more resources
MIT