Commit d7bce6a5 authored by Ahmad Nemati's avatar Ahmad Nemati

init

parent 91b305f2
...@@ -13,6 +13,7 @@ const cronSpeed = require('node-cron'); ...@@ -13,6 +13,7 @@ const cronSpeed = require('node-cron');
const shellExec = require('shell-exec') const shellExec = require('shell-exec')
let Hetzner = require('./Hetzner') let Hetzner = require('./Hetzner')
let constant = require('./constant') let constant = require('./constant')
let masterId = 0
let het let het
...@@ -130,18 +131,19 @@ async function init() { ...@@ -130,18 +131,19 @@ async function init() {
await initToken() await initToken()
addMaster() addMaster()
postRequest() postRequest()
attacher() attacher()
// checkServers() // checkServers()
} }
async function checkServers() { async function checkServers() {
let servers = await het.getAllServers('fsn1') let servers = await het.getAllServers()
console.log(servers)
let masterid=await het.getMasterServerId() if (masterId ===0)
return
for (let i = 0; i < servers.length; i++) for (let i = 0; i < servers.length; i++)
if (servers[i].id !== masterid) { if (servers[i].id !== masterId) {
let min = getMinDiff(servers[i].created) let min = getMinDiff(servers[i].created)
...@@ -151,7 +153,7 @@ async function checkServers() { ...@@ -151,7 +153,7 @@ async function checkServers() {
case 404: case 404:
if (min > 45) { if (min > 30) {
await het.deleteServer(servers[i].id) await het.deleteServer(servers[i].id)
console.log('Need remove server ' + servers[i].name + ' Idle is ' + min) console.log('Need remove server ' + servers[i].name + ' Idle is ' + min)
} }
...@@ -188,34 +190,32 @@ function getMinDiff(end) { ...@@ -188,34 +190,32 @@ function getMinDiff(end) {
} }
async function checkIps(ip) { async function checkIps(ip) {
let status = await getWorkFloating(ip)
status = parseInt(status)
switch (status) {
case 404:
await postFloatingIps([ip])
break
case 400:
await postFloatingIps([ip])
break
case 0:
await het.removeFloatingIpByIp(ip)
break
case 1:
break
}
let status = await getWorkFloating(ip)
status = parseInt(status)
switch (status) {
case 404:
await postFloatingIps([ip])
break
case 400:
await postFloatingIps([ip])
break
case 0:
await het.removeFloatingIpByIp(ip)
break
case 1:
break
}
} }
async function initToken() { async function initToken() {
var contents = await fs.readFileSync('./token.txt', 'utf8'); var contents = await fs.readFileSync('./token.txt', 'utf8');
het = new Hetzner(contents) het = new Hetzner(contents)
masterId = await het.getMasterServerId()
// remover() // remover()
...@@ -256,8 +256,7 @@ async function attacher() { ...@@ -256,8 +256,7 @@ async function attacher() {
let ips = await het.getAllFloatingIps() let ips = await het.getAllFloatingIps()
let attached = false let attached = false
for (let i = 0; i < ips.length; i++) { for (let i = 0; i < ips.length; i++) {
if (typeof ips[i].server === "number") if (typeof ips[i].server === "number") {
{
if (ips[i].server === serverId) { if (ips[i].server === serverId) {
attached = true attached = true
await postFloatingIps([ips[i].ip]) await postFloatingIps([ips[i].ip])
...@@ -269,12 +268,9 @@ async function attacher() { ...@@ -269,12 +268,9 @@ async function attacher() {
} }
for (let i = 0; i < ips.length; i++) { for (let i = 0; i < ips.length; i++) {
if (typeof ips[i].server !== "number") if (typeof ips[i].server !== "number") {
{ await het.updateFlotingIP(ips[i].id, serverId)
await het.updateFlotingIP(ips[i].id,serverId)
await postFloatingIps([ips[i].ip]) await postFloatingIps([ips[i].ip])
addBaship(ips[i].ip) addBaship(ips[i].ip)
break break
...@@ -360,8 +356,6 @@ function getWorkMaster(ip) { ...@@ -360,8 +356,6 @@ function getWorkMaster(ip) {
} }
function addIp() { function addIp() {
const request = require('request'); const request = require('request');
let url = 'http://admin.fcfglobal.co:3000/add/' let url = 'http://admin.fcfglobal.co:3000/add/'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment