-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy paths3.js
77 lines (64 loc) · 1.31 KB
/
s3.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
69
70
71
72
73
74
75
76
77
function setS3Credentials(data) {
AWS.config.update(data);
AWS.config.region = s3region;
}
function testS3() {
var bucket = new AWS.S3({
params : {
Bucket : s3bucket
}
});
var params = {
Key : "test",
ContentType : "text/plain",
Body : new Date().toString()
};
bucket.upload(params, function(err, data) {
if (err)
alert("can't connect to s3");
else
console.log("s3 access granted");
});
}
function s3Upload(filename, type, data, callback) {
var bucket = new AWS.S3({
params : {
Bucket : s3bucket
}
});
var params = {
Key : filename,
ContentType : type,
Body : data
};
bucket.upload(params, function(err, data) {
if (err)
alert("can't upload");
else if (callback)
callback();
});
}
function getNow() {
var now = new Date().toISOString();
return now;
// return "" + now.getUTCFullYear() + (now.getUTCMonth() + 1) + now.getUTCDate() + "-" + now.getUTCHours()
// + now.getUTCMinutes() + now.getUTCSeconds();
}
function s3Backup(filename, type, callback) {
var bucket = new AWS.S3({
params : {
Bucket : s3bucket
}
});
var params = {
Key : filename + "." + getNow(),
ContentType : type,
CopySource : s3bucket + '/' + filename,
};
bucket.copyObject(params, function(err, data) {
if (err)
alert("can't backup");
else if (callback)
callback();
});
}