mirror of
https://github.com/Sebclem/hassio-nextcloud-backup.git
synced 2024-11-22 09:12:58 +01:00
🚑 Use new supervisor URL + new auth method #102
This commit is contained in:
parent
7b7d5a2b0e
commit
15ed577682
@ -19,7 +19,7 @@ function getVersion() {
|
|||||||
let token = process.env.HASSIO_TOKEN;
|
let token = process.env.HASSIO_TOKEN;
|
||||||
let status = statusTools.getStatus();
|
let status = statusTools.getStatus();
|
||||||
let option = {
|
let option = {
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
responseType: "json",
|
responseType: "json",
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -50,7 +50,7 @@ function getAddonList() {
|
|||||||
let token = process.env.HASSIO_TOKEN;
|
let token = process.env.HASSIO_TOKEN;
|
||||||
let status = statusTools.getStatus();
|
let status = statusTools.getStatus();
|
||||||
let option = {
|
let option = {
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
responseType: "json",
|
responseType: "json",
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -97,6 +97,8 @@ function getAddonToBackup() {
|
|||||||
if (!excluded_addon.includes(addon.slug))
|
if (!excluded_addon.includes(addon.slug))
|
||||||
slugs.push(addon.slug)
|
slugs.push(addon.slug)
|
||||||
}
|
}
|
||||||
|
logger.debug("Addon to backup:")
|
||||||
|
logger.debug(slugs)
|
||||||
resolve(slugs)
|
resolve(slugs)
|
||||||
})
|
})
|
||||||
.catch(() => reject());
|
.catch(() => reject());
|
||||||
@ -136,6 +138,8 @@ function getFolderToBackup() {
|
|||||||
if (!excluded_folder.includes(folder.slug))
|
if (!excluded_folder.includes(folder.slug))
|
||||||
slugs.push(folder.slug)
|
slugs.push(folder.slug)
|
||||||
}
|
}
|
||||||
|
logger.debug("Folders to backup:");
|
||||||
|
logger.debug(slugs)
|
||||||
return slugs;
|
return slugs;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -144,11 +148,11 @@ function getSnapshots() {
|
|||||||
let token = process.env.HASSIO_TOKEN;
|
let token = process.env.HASSIO_TOKEN;
|
||||||
let status = statusTools.getStatus();
|
let status = statusTools.getStatus();
|
||||||
let option = {
|
let option = {
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
responseType: "json",
|
responseType: "json",
|
||||||
};
|
};
|
||||||
|
|
||||||
got("http://hassio/snapshots", option)
|
got("http://hassio/backups", option)
|
||||||
.then((result) => {
|
.then((result) => {
|
||||||
if (status.error_code === 1) {
|
if (status.error_code === 1) {
|
||||||
status.status = "idle";
|
status.status = "idle";
|
||||||
@ -156,7 +160,7 @@ function getSnapshots() {
|
|||||||
status.error_code = null;
|
status.error_code = null;
|
||||||
statusTools.setStatus(status);
|
statusTools.setStatus(status);
|
||||||
}
|
}
|
||||||
let snaps = result.body.data.snapshots;
|
let snaps = result.body.data.backups;
|
||||||
resolve(snaps);
|
resolve(snaps);
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
@ -184,11 +188,11 @@ function downloadSnapshot(id) {
|
|||||||
status.progress = 0;
|
status.progress = 0;
|
||||||
statusTools.setStatus(status);
|
statusTools.setStatus(status);
|
||||||
let option = {
|
let option = {
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
};
|
};
|
||||||
|
|
||||||
pipeline(
|
pipeline(
|
||||||
got.stream.get(`http://hassio/snapshots/${id}/download`, option)
|
got.stream.get(`http://hassio/backups/${id}/download`, option)
|
||||||
.on("downloadProgress", (e) => {
|
.on("downloadProgress", (e) => {
|
||||||
let percent = Math.round(e.percent * 100) / 100;
|
let percent = Math.round(e.percent * 100) / 100;
|
||||||
if (status.progress !== percent) {
|
if (status.progress !== percent) {
|
||||||
@ -233,11 +237,11 @@ function dellSnap(id) {
|
|||||||
let token = process.env.HASSIO_TOKEN;
|
let token = process.env.HASSIO_TOKEN;
|
||||||
|
|
||||||
let option = {
|
let option = {
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
responseType: "json",
|
responseType: "json",
|
||||||
};
|
};
|
||||||
|
|
||||||
got.post(`http://hassio/snapshots/${id}/remove`, option)
|
got.post(`http://hassio/backups/${id}/remove`, option)
|
||||||
.then(() => resolve())
|
.then(() => resolve())
|
||||||
.catch(() => reject());
|
.catch(() => reject());
|
||||||
})
|
})
|
||||||
@ -251,11 +255,11 @@ function checkSnap(id) {
|
|||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
let token = process.env.HASSIO_TOKEN;
|
let token = process.env.HASSIO_TOKEN;
|
||||||
let option = {
|
let option = {
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
responseType: "json",
|
responseType: "json",
|
||||||
};
|
};
|
||||||
|
|
||||||
got(`http://hassio/snapshots/${id}/info`, option)
|
got(`http://hassio/backups/${id}/info`, option)
|
||||||
.then((result) => {
|
.then((result) => {
|
||||||
logger.debug(`Snapshot size: ${result.body.data.size}`);
|
logger.debug(`Snapshot size: ${result.body.data.size}`);
|
||||||
resolve();
|
resolve();
|
||||||
@ -275,7 +279,7 @@ function createNewBackup(name) {
|
|||||||
getAddonToBackup().then((addons) => {
|
getAddonToBackup().then((addons) => {
|
||||||
let folders = getFolderToBackup();
|
let folders = getFolderToBackup();
|
||||||
let option = {
|
let option = {
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
responseType: "json",
|
responseType: "json",
|
||||||
timeout: create_snap_timeout,
|
timeout: create_snap_timeout,
|
||||||
json: {
|
json: {
|
||||||
@ -288,7 +292,7 @@ function createNewBackup(name) {
|
|||||||
option.json.password = settingsTools.getSettings().password_protect_value
|
option.json.password = settingsTools.getSettings().password_protect_value
|
||||||
}
|
}
|
||||||
|
|
||||||
got.post(`http://hassio/snapshots/new/partial`, option)
|
got.post(`http://hassio/backups/new/partial`, option)
|
||||||
.then((result) => {
|
.then((result) => {
|
||||||
logger.info(`Snapshot created with id ${result.body.data.slug}`);
|
logger.info(`Snapshot created with id ${result.body.data.slug}`);
|
||||||
resolve(result.body.data.slug);
|
resolve(result.body.data.slug);
|
||||||
@ -354,11 +358,11 @@ function uploadSnapshot(path) {
|
|||||||
body: form,
|
body: form,
|
||||||
username: this.username,
|
username: this.username,
|
||||||
password: this.password,
|
password: this.password,
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
};
|
};
|
||||||
|
|
||||||
got.stream
|
got.stream
|
||||||
.post(`http://hassio/snapshots/new/upload`, options)
|
.post(`http://hassio/backups/new/upload`, options)
|
||||||
.on("uploadProgress", (e) => {
|
.on("uploadProgress", (e) => {
|
||||||
let percent = e.percent;
|
let percent = e.percent;
|
||||||
if (status.progress !== percent) {
|
if (status.progress !== percent) {
|
||||||
@ -413,7 +417,7 @@ function stopAddons() {
|
|||||||
let promises = [];
|
let promises = [];
|
||||||
let token = process.env.HASSIO_TOKEN;
|
let token = process.env.HASSIO_TOKEN;
|
||||||
let option = {
|
let option = {
|
||||||
headers: { "X-HASSIO-KEY": token },
|
headers: { "Authorization": `Bearer ${token}` },
|
||||||
responseType: "json",
|
responseType: "json",
|
||||||
};
|
};
|
||||||
let addons_slug = settingsTools.getSettings().auto_stop_addon
|
let addons_slug = settingsTools.getSettings().auto_stop_addon
|
||||||
|
Loading…
Reference in New Issue
Block a user