gitlab.js 1.11 KB
Newer Older
Rosanny Sihombing's avatar
Rosanny Sihombing committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var env = process.env.NODE_ENV || 'testing'
const config = require('../config/config')[env]
const axios = require('axios')
const fs = require('fs')
var formData = require('form-data')

var gitlab = {
    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+
                '?name='+newPagesdata.name+'&description='+newPagesdata.description+'&tag_list=website'+
                '&use_custom_template=true&template_name=page_basic',
            headers: { 
                'Authorization': 'Bearer '+config.gitlab.token_readWriteProjects, 
                ...data.getHeaders()
            },
            data : data
        }
        axios(dataConfig)
        .then(function (response) {
            callback(response.data)
        })
        .catch(function (err) {
            if(err)
                callback(err.response.data)
        })
    }
}

module.exports = gitlab