Skip to content
GitLab
Explore
Projects
Groups
Snippets
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
m4lab_tv1
User Account
Commits
f8f078aa
Commit
f8f078aa
authored
4 years ago
by
Rosanny Sihombing
Browse files
Options
Download
Email Patches
Plain Diff
update gitlab API
parent
a954d29e
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
routes/gitlab.js
+72
-1
routes/gitlab.js
with
72 additions
and
1 deletion
+72
-1
routes/gitlab.js
+
72
-
1
View file @
f8f078aa
...
...
@@ -5,13 +5,36 @@ const fs = require('fs')
var
formData
=
require
(
'
form-data
'
)
var
gitlab
=
{
getUserIdByEmail
:
function
(
email
,
callback
)
{
let
dataConfig
=
{
method
:
'
get
'
,
url
:
'
https://transfer.hft-stuttgart.de/gitlab/api/v4/users?search=
'
+
email
,
headers
:
{
'
Authorization
'
:
'
Bearer
'
+
config
.
gitlab
.
token_readWriteProjects
}
}
axios
(
dataConfig
)
.
then
(
function
(
response
)
{
let
res
=
{
error
:
false
,
data
:
response
.
data
[
0
].
id
}
callback
(
res
)
})
.
catch
(
function
(
err
)
{
let
res
=
{
error
:
true
,
data
:
err
}
callback
(
res
)
})
},
// todo: fixing callback
createNewPages
:
function
(
newPagesdata
,
callback
)
{
let
data
=
new
formData
()
data
.
append
(
'
avatar
'
,
fs
.
createReadStream
(
newPagesdata
.
avatar
))
let
dataConfig
=
{
method
:
'
post
'
,
url
:
'
https://transfer.hft-stuttgart.de/gitlab/api/v4/projects/user/
'
+
newPagesdata
.
gitlabId
+
url
:
'
https://transfer.hft-stuttgart.de/gitlab/api/v4/projects/user/
'
+
newPagesdata
.
gitlab
User
Id
+
'
?name=
'
+
newPagesdata
.
name
+
'
&description=
'
+
newPagesdata
.
description
+
'
&tag_list=website
'
+
'
&use_custom_template=true&template_name=page_basic
'
,
headers
:
{
...
...
@@ -20,6 +43,7 @@ var gitlab = {
},
data
:
data
}
axios
(
dataConfig
)
.
then
(
function
(
response
)
{
callback
(
response
.
data
)
...
...
@@ -27,7 +51,54 @@ var gitlab = {
.
catch
(
function
(
err
)
{
if
(
err
)
callback
(
err
.
response
.
data
)
})
},
getUserProjects
:
function
(
gitlabUserId
,
callback
)
{
axios
.
get
(
'
https://transfer.hft-stuttgart.de/gitlab/api/v4/users/
'
+
gitlabUserId
+
'
/projects?private_token=
'
+
config
.
gitlab
.
token_readWriteProjects
+
'
&owned=true&simple=true&visibility=public
'
)
.
then
(
response
=>
{
let
res
=
{
error
:
false
,
data
:
response
.
data
}
callback
(
res
)
})
.
catch
(
err
=>
{
let
res
=
{
error
:
true
,
data
:
err
}
callback
(
res
)
})
},
getProjectIdsFromRunners
:
function
(
gitlabUserId
,
callback
)
{
let
projectIds
=
[]
let
dataConfig
=
{
method
:
'
get
'
,
url
:
'
https://transfer.hft-stuttgart.de/gitlab/api/v4/runners/7
'
,
headers
:
{
'
Authorization
'
:
'
Bearer
'
+
config
.
gitlab
.
token_readWriteProjects
}
}
axios
(
dataConfig
)
.
then
(
function
(
response
)
{
let
projects
=
response
.
data
.
projects
projects
.
forEach
((
project
)
=>
{
if
(
project
.
namespace
.
id
==
gitlabUserId
)
{
projectIds
.
push
(
project
.
id
)
}
})
let
res
=
{
error
:
false
,
data
:
projectIds
}
callback
(
res
)
})
.
catch
(
function
(
err
)
{
let
res
=
{
error
:
true
,
data
:
err
}
callback
(
res
)
});
}
}
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Explore
Projects
Groups
Snippets