Esempio n. 1
0
 def createOne(self, mids):
     if not type(mids) == list:
         mids = [mids]
     url = "https://api.vultr.com/v1/server/create"
     serverId = None
     for mid in mids:
         name = hostGroup + "-" + str(mid)
         argvs = {
             "DCID": 19,
             "OSID": 160,
             "VPSPLANID": 29,
             "SCRIPTID": self.SCRIPTID,
             "SSHKEYID": self.SSHKEYID,
             "hostname": name,
             "label": name
         }
         res = requests.post(url,
                             headers=self.api,
                             data=argvs,
                             proxies=self.proxies)
         if res.status_code != 200:
             log = "create server " + name + " failed, " + res.text
             logging("e", log)
         else:
             serverId = res.json()["SUBID"]
             log = "server " + name + " created, its id is " + serverId
             logging("i", log)
     return serverId
Esempio n. 2
0
 def destroyMe(self):
     hostId = self.name.split("-")[-1]
     serverId, hostname = self.getOneId(hostId)
     if not serverId:
         log = "can not find you, misson failed"
         logging("e", log)
         return
     else:
         sd = self.destroyOne(hostId)
         return sd
Esempio n. 3
0
 def updateScript(self):
     url = "https://api.vultr.com/v1/startupscript/update"
     with open("vultr.sh", "r") as f:
         script = f.read()
     data = {"SCRIPTID": self.SCRIPTID, "name": "default", "script": script}
     res = requests.post(url,
                         headers=self.api,
                         proxies=self.proxies,
                         data=data)
     if res.status_code == 200:
         log = str(self.SCRIPTID) + " updated"
         logging("i", log)
     else:
         print res.status_code
Esempio n. 4
0
 def rebootOne(self, mids):
     if not type(mids) == list:
         mids = [mids]
     result = None
     for mid in mids:
         serverId, hostname = self.getOneId(mid)
         url = "https://api.vultr.com/v1/server/reboot"
         data = {"SUBID": serverId}
         res = requests.post(url,
                             headers=self.api,
                             proxies=self.proxies,
                             data=data)
         if res.status_code == 200:
             log = hostname + " rebooted"
             logging("i", log)
             result = True
         else:
             log = "Failed, status code: " + str(res.status_code)
     return result
            end = time.time()
            delta_time = end - start
            print('epoch ' + str(epoch + 1) + ' needs time:' +
                  str(delta_time) + ' s')

            if (epoch + 1) % 10 == 0:
                checkpoint_path = os.path.join(savedir, 'model.ckpt')
                saver.save(sess, checkpoint_path,
                           global_step=epoch)  # 第三个参数将训练的次数作为后缀加入到模型名字中
                print('Model has been saved in {}'.format(savedir))

            train_epochER = train_batchErrors.sum() / train_step_num

            logging(config,
                    logfile,
                    train_epochER,
                    epoch,
                    delta_time,
                    mode1=mode)
            logging_total_acc(logfile, train_epochER, 'train')

            # training*****************************************************************************

            # # ************************  test ***************************************************
            start = time.time()
            for step in range(test_step_num):
                summary, acc, los = sess.run([merged, accuracy, loss],
                                             feed_dict={is_training: False})
                test_batchErrors[step] = acc  # 用于统计最后的Epoch er
                test_batchLoss[step] = los
                print("step: ", step + 1, 'accuracy: ', acc)