Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
chain33-pai
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
szh
chain33-pai
Commits
e1e84f48
Commit
e1e84f48
authored
Jul 07, 2020
by
szh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
安全关闭节点 添加程序是否关闭确认
parent
dd544b60
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
41 additions
and
2 deletions
+41
-2
broadcast.go
pkg/app/broadcast.go
+1
-1
process.go
pkg/app/process.go
+2
-0
raspberryChan.go
pkg/app/raspberryChan.go
+27
-0
node.go
routers/api/v1/node.go
+6
-1
pai.go
service/pai_service/pai.go
+5
-0
No files found.
pkg/app/broadcast.go
View file @
e1e84f48
...
@@ -56,7 +56,7 @@ func Broadcast() {
...
@@ -56,7 +56,7 @@ func Broadcast() {
tlog
.
Error
(
"broadcast"
,
"err"
,
"wlan0 not exists"
)
tlog
.
Error
(
"broadcast"
,
"err"
,
"wlan0 not exists"
)
ip
,
err
=
util
.
GetLocalIpByName
(
"eth0"
)
ip
,
err
=
util
.
GetLocalIpByName
(
"eth0"
)
if
err
!=
nil
{
if
err
!=
nil
{
tlog
.
Error
(
"broadcast"
,
"err"
,
"et
n
0 not exists"
)
tlog
.
Error
(
"broadcast"
,
"err"
,
"et
h
0 not exists"
)
time
.
Sleep
(
time
.
Second
*
1
)
time
.
Sleep
(
time
.
Second
*
1
)
continue
continue
}
}
...
...
pkg/app/process.go
View file @
e1e84f48
...
@@ -59,6 +59,8 @@ type BityuanOp struct {
...
@@ -59,6 +59,8 @@ type BityuanOp struct {
Lock
sync
.
Mutex
Lock
sync
.
Mutex
}
}
var
paiJobs
pai_service
.
Pai
var
BityuanFlag
BityuanOp
//true表示有任务在占用,禁止其他重复操作
var
BityuanFlag
BityuanOp
//true表示有任务在占用,禁止其他重复操作
var
Bityuan
ProcessInfo
var
Bityuan
ProcessInfo
var
UpdateInfo
updateInfo
var
UpdateInfo
updateInfo
...
...
pkg/app/raspberryChan.go
View file @
e1e84f48
...
@@ -55,6 +55,13 @@ func RaspberryChan() {
...
@@ -55,6 +55,13 @@ func RaspberryChan() {
}
else
{
}
else
{
tlog
.
Error
(
"deleteBackup fail "
,
"err"
,
err
)
tlog
.
Error
(
"deleteBackup fail "
,
"err"
,
err
)
}
}
case
"RESTART"
:
err
:=
restartNode
()
if
err
==
nil
{
tlog
.
Info
(
"deleteBackup success"
,
"err"
,
nil
)
}
else
{
tlog
.
Error
(
"deleteBackup fail "
,
"err"
,
err
)
}
}
}
}
}
...
@@ -223,6 +230,26 @@ func deleteBackup() error {
...
@@ -223,6 +230,26 @@ func deleteBackup() error {
return
nil
return
nil
}
}
func
restartNode
()
error
{
BityuanFlag
.
Lock
.
Lock
()
defer
BityuanFlag
.
Lock
.
Unlock
()
if
btyPath
==
""
{
tlog
.
Error
(
"btyPath empty"
,
"err"
,
"node not exists"
)
return
errors
.
New
(
"node not exists"
)
}
_
,
err
:=
SafeCloseNode
()
if
err
!=
nil
{
return
err
}
isrun
:=
MakeSureBtyIsNotRun
()
if
isrun
{
return
errors
.
New
(
"bty is running"
)
}
StartProcess
(
setting
.
Chain33Pai
.
Auto
)
return
nil
}
func
MakeSureBtyIsNotRun
()
bool
{
func
MakeSureBtyIsNotRun
()
bool
{
s
:=
time
.
Now
()
s
:=
time
.
Now
()
defer
func
()
{
defer
func
()
{
...
...
routers/api/v1/node.go
View file @
e1e84f48
...
@@ -283,7 +283,12 @@ func CloseNode(c* gin.Context){
...
@@ -283,7 +283,12 @@ func CloseNode(c* gin.Context){
return
return
}
}
//防止其他模块未关闭
//防止其他模块未关闭
time
.
Sleep
(
time
.
Second
*
2
)
//time.Sleep(time.Second * 2)
if
!
app
.
MakeSureBtyIsNotRun
()
{
appG
.
Response
(
http
.
StatusOK
,
e
.
NODE_ERROR
,
"node stop err"
)
app
.
BityuanFlag
.
Flag
=
false
return
}
appG
.
Response
(
http
.
StatusOK
,
e
.
SUCCESS
,
"node close safe"
)
appG
.
Response
(
http
.
StatusOK
,
e
.
SUCCESS
,
"node close safe"
)
}
}
...
...
service/pai_service/pai.go
View file @
e1e84f48
...
@@ -23,6 +23,8 @@ var (
...
@@ -23,6 +23,8 @@ var (
tlog
=
log
.
New
(
"service"
,
"pai_Service"
)
tlog
=
log
.
New
(
"service"
,
"pai_Service"
)
)
)
//在网络通畅的情况下 ENum 每30s +1 20=>restart 40 => rollback 60 =>recover
type
Pai
struct
{
type
Pai
struct
{
Hardware
string
`json:"hardware"`
Hardware
string
`json:"hardware"`
Revision
string
`json:"revision"`
Revision
string
`json:"revision"`
...
@@ -38,6 +40,9 @@ type Pai struct {
...
@@ -38,6 +40,9 @@ type Pai struct {
Arch
string
`json:"arch"`
Arch
string
`json:"arch"`
Disks
[]
*
pai
.
Disk
Disks
[]
*
pai
.
Disk
IsBackup
bool
`json:"is_backup"`
IsBackup
bool
`json:"is_backup"`
ENum
int64
`json:"e_num"`
LocalLastHeight2
int64
`json:"local_last_height_2"`
ProLevel
int64
`json:"pro_level"`
}
}
type
ReqUpdatePai
struct
{
type
ReqUpdatePai
struct
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment