This repository was archived by the owner on Nov 30, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.js
68 lines (57 loc) · 1.93 KB
/
index.js
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
const fs = require('fs');
const request = require('request');
require('dotenv').config();
const ovh = require('ovh')({
endpoint: process.env.OVH_API_ENDPOINT,
appKey: process.env.OVH_API_AK,
appSecret: process.env.OVH_API_AS,
consumerKey: process.env.OVH_API_CK,
});
function listProjectServices() {
ovh.requestPromised('GET', '/cloud/project')
.then((result) => {
console.log(result);
});
}
// listProjectServices();
function listStorageContainers() {
ovh.requestPromised('GET', `/cloud/project/${process.env.OVH_API_SERVICE}/storage`)
.then((result) => {
console.log(result);
});
}
// listStorageContainers();
function createStorageContainer(containerName) {
ovh.requestPromised('POST', `/cloud/project/${process.env.OVH_API_SERVICE}/storage`, {
archive: false,
containerName,
region: 'GRA5'
})
.then((result) => {
console.log(result);
});
}
// createStorageContainer('org_XXX');
function getStorageContainer(containerId) {
console.log(`containerId = ${containerId}`);
ovh.requestPromised('GET', `/cloud/project/${process.env.OVH_API_SERVICE}/storage/${containerId}`)
.then((result) => {
console.log(result);
});
}
// getStorageContainer('62334a6e587a457552314a424e513d3d');
async function addDocument(containerName, documentName) {
const result = await ovh.requestPromised('POST', `/cloud/project/${process.env.OVH_API_SERVICE}/storage/access`);
const data = fs.readFileSync(`${__dirname}/images/${documentName}`);
const endpointUrl = result.endpoints.find((endpoint) => endpoint.region === process.env.OVH_API_REGION).url;
const options = {
url: `${endpointUrl}/${containerName}/${documentName}`,
headers: { 'X-Auth-Token': result.token },
body: data
};
request.put(options, (err, response) => {
if (err) throw err;
console.log(`${response.statusCode} - ${response.statusMessage}`);
});
}
// addDocument('org_3', 'logo-ifcam.png');