mirror of
https://github.com/Retropex/apolloapi-v2.git
synced 2025-05-15 20:50:48 +02:00
Added format node disk
This commit is contained in:
parent
47c76b5583
commit
a3c92b32b6
2
apolloui
2
apolloui
@ -1 +1 @@
|
||||
Subproject commit c0d56f4c4d3eafdf01a8499ddff32d0fcb19506e
|
||||
Subproject commit 09641151acd13f0f212ee6755b8bfa1ff724e3ca
|
18
backend/format_node_disk
Executable file
18
backend/format_node_disk
Executable file
@ -0,0 +1,18 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Stop node
|
||||
screen -X -S node quit
|
||||
sleep 10
|
||||
|
||||
# Umount disk
|
||||
sudo umount /media/nvme
|
||||
|
||||
# Format disk
|
||||
sudo mkfs.ext4 -F -j /dev/nvme0n1p1
|
||||
|
||||
# Mount back disk
|
||||
sudo mount /dev/nvme0n1p1 /media/nvme
|
||||
|
||||
# Recreate Bitcoin directory
|
||||
sudo mkdir /media/nvme/Bitcoin
|
||||
sudo chown futurebit.futurebit /media/nvme/Bitcoin
|
17
backend/format_node_disk_fake
Executable file
17
backend/format_node_disk_fake
Executable file
@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Stop node
|
||||
screen -X -S node quit
|
||||
sleep 5
|
||||
|
||||
# Umount disk
|
||||
echo "umounting disk"
|
||||
|
||||
# Format disk
|
||||
echo "formatting disk"
|
||||
|
||||
# Mount back disk
|
||||
echo "mounting back disk"
|
||||
|
||||
# Recreate Bitcoin directory
|
||||
echo "recreating dir"
|
@ -10,7 +10,7 @@
|
||||
"node": ">= 8.x"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "./node_modules/nodemon/bin/nodemon.js src/init.js | ./node_modules/.bin/bunyan",
|
||||
"dev": "PORT=5001 ./node_modules/nodemon/bin/nodemon.js src/init.js | ./node_modules/.bin/bunyan",
|
||||
"build": "pkg . --targets node8-linux-armv7 --no-bytecode",
|
||||
"run-container": "docker run --rm -it -v \"$(pwd)\":/hostdir --entrypoint=/bin/bash orange"
|
||||
},
|
||||
|
13
src/graphql/graphqlModules/Node/nodeFormat.js
Normal file
13
src/graphql/graphqlModules/Node/nodeFormat.js
Normal file
@ -0,0 +1,13 @@
|
||||
module.exports.typeDefs = `
|
||||
type NodeActions {
|
||||
format: EmptyOutput!
|
||||
}
|
||||
`;
|
||||
|
||||
module.exports.resolvers = {
|
||||
NodeActions: {
|
||||
format (root, args, { dispatch }) {
|
||||
return dispatch('api/node/format');
|
||||
}
|
||||
}
|
||||
};
|
29
src/store/api/node/nodeFormat.js
Normal file
29
src/store/api/node/nodeFormat.js
Normal file
@ -0,0 +1,29 @@
|
||||
const { join } = require('path')
|
||||
const { exec } = require('child_process')
|
||||
const axios = require('axios')
|
||||
|
||||
module.exports = ({ define }) => {
|
||||
define('format', async (payload, { knex, errors, utils }) => {
|
||||
await formatDisk();
|
||||
}, {
|
||||
auth: true
|
||||
})
|
||||
}
|
||||
|
||||
function formatDisk () {
|
||||
return new Promise((resolve, reject) => {
|
||||
const scriptName = (process.env.NODE_ENV === 'production') ? 'format_node_disk' : 'format_node_disk_fake'
|
||||
const scriptPath = join(__dirname, '..', '..', '..', '..', 'backend', scriptName)
|
||||
exec(scriptPath, {}, (err, stdout) => {
|
||||
if (err) {
|
||||
reject(err)
|
||||
} else {
|
||||
try {
|
||||
resolve();
|
||||
} catch (err) {
|
||||
reject(err)
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
Loading…
Reference in New Issue
Block a user