Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
plugin
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
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
link33
plugin
Commits
363fb6f3
Commit
363fb6f3
authored
Jun 05, 2019
by
mdj33
Committed by
vipwzw
Jun 05, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix ci
parent
5867e799
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
71 additions
and
30 deletions
+71
-30
testcase.sh
plugin/dapp/paracross/cmd/build/testcase.sh
+0
-0
paracross.go
plugin/dapp/paracross/commands/paracross.go
+38
-5
query.go
plugin/dapp/paracross/executor/query.go
+2
-6
superaccount.go
plugin/dapp/paracross/executor/superaccount.go
+10
-2
superaccount_test.go
plugin/dapp/paracross/executor/superaccount_test.go
+1
-1
rpc.go
plugin/dapp/paracross/rpc/rpc.go
+19
-15
paracross.go
plugin/dapp/paracross/types/paracross.go
+1
-1
No files found.
plugin/dapp/paracross/cmd/build/testcase.sh
View file @
363fb6f3
This diff is collapsed.
Click to expand it.
plugin/dapp/paracross/commands/paracross.go
View file @
363fb6f3
...
...
@@ -38,6 +38,7 @@ func ParcCmd() *cobra.Command {
GetParaListCmd
(),
GetNodeGroupCmd
(),
GetNodeInfoCmd
(),
GetNodeIdInfoCmd
(),
GetNodeListCmd
(),
NodeGroupStatusCmd
(),
NodeGroupListCmd
(),
...
...
@@ -455,8 +456,8 @@ func paraList(cmd *cobra.Command, args []string) {
// GetNodeInfoCmd get node current status
func
GetNodeInfoCmd
()
*
cobra
.
Command
{
cmd
:=
&
cobra
.
Command
{
Use
:
"node_status"
,
Short
:
"Get node current
vote status
"
,
Use
:
"node_
addr_
status"
,
Short
:
"Get node current
status:10:joined,11:quited from nodegroup
"
,
Run
:
nodeInfo
,
}
addNodeBodyCmdFlags
(
cmd
)
...
...
@@ -468,7 +469,7 @@ func addNodeBodyCmdFlags(cmd *cobra.Command) {
cmd
.
MarkFlagRequired
(
"title"
)
cmd
.
Flags
()
.
StringP
(
"addr"
,
"a"
,
""
,
"addr apply for super user"
)
cmd
.
Flags
()
.
StringP
(
"id"
,
"i"
,
""
,
"id apply for super use
r"
)
cmd
.
MarkFlagRequired
(
"add
r"
)
}
...
...
@@ -476,15 +477,47 @@ func nodeInfo(cmd *cobra.Command, args []string) {
rpcLaddr
,
_
:=
cmd
.
Flags
()
.
GetString
(
"rpc_laddr"
)
title
,
_
:=
cmd
.
Flags
()
.
GetString
(
"title"
)
addr
,
_
:=
cmd
.
Flags
()
.
GetString
(
"addr"
)
id
,
_
:=
cmd
.
Flags
()
.
GetString
(
"id"
)
params
:=
pt
.
ReqParacrossNodeInfo
{
Title
:
title
,
Addr
:
addr
,
}
var
res
pt
.
ParaNodeAddrIdStatus
ctx
:=
jsonclient
.
NewRPCCtx
(
rpcLaddr
,
"paracross.GetNodeAddrStatus"
,
params
,
&
res
)
ctx
.
Run
()
}
// GetNodeInfoCmd get node current status
func
GetNodeIdInfoCmd
()
*
cobra
.
Command
{
cmd
:=
&
cobra
.
Command
{
Use
:
"node_id_status"
,
Short
:
"Get node id current vote status:0:all,1:joining,2:quiting,3:closed,4:canceld"
,
Run
:
nodeIdInfo
,
}
addNodeIdBodyCmdFlags
(
cmd
)
return
cmd
}
func
addNodeIdBodyCmdFlags
(
cmd
*
cobra
.
Command
)
{
cmd
.
Flags
()
.
StringP
(
"title"
,
"t"
,
""
,
"parallel chain's title"
)
cmd
.
MarkFlagRequired
(
"title"
)
cmd
.
Flags
()
.
StringP
(
"id"
,
"i"
,
""
,
"id apply for super user"
)
cmd
.
MarkFlagRequired
(
"id"
)
}
func
nodeIdInfo
(
cmd
*
cobra
.
Command
,
args
[]
string
)
{
rpcLaddr
,
_
:=
cmd
.
Flags
()
.
GetString
(
"rpc_laddr"
)
title
,
_
:=
cmd
.
Flags
()
.
GetString
(
"title"
)
id
,
_
:=
cmd
.
Flags
()
.
GetString
(
"id"
)
params
:=
pt
.
ReqParacrossNodeInfo
{
Title
:
title
,
Id
:
id
,
}
var
res
pt
.
ParaNodeIdStatus
ctx
:=
jsonclient
.
NewRPCCtx
(
rpcLaddr
,
"paracross.GetNodeStatus"
,
params
,
&
res
)
ctx
:=
jsonclient
.
NewRPCCtx
(
rpcLaddr
,
"paracross.GetNode
ID
Status"
,
params
,
&
res
)
ctx
.
Run
()
}
...
...
plugin/dapp/paracross/executor/query.go
View file @
363fb6f3
...
...
@@ -85,11 +85,7 @@ func (p *Paracross) Query_GetNodeAddrInfo(in *pt.ReqParacrossNodeInfo) (types.Me
if
in
==
nil
||
in
.
Title
==
""
||
in
.
Addr
==
""
{
return
nil
,
types
.
ErrInvalidParam
}
addrStat
,
err
:=
getNodeAddr
(
p
.
GetStateDB
(),
in
.
Title
,
in
.
Addr
)
if
err
!=
nil
{
return
nil
,
err
}
stat
,
err
:=
getNodeID
(
p
.
GetStateDB
(),
addrStat
.
ProposalId
)
stat
,
err
:=
getNodeAddr
(
p
.
GetStateDB
(),
in
.
Title
,
in
.
Addr
)
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -97,7 +93,7 @@ func (p *Paracross) Query_GetNodeAddrInfo(in *pt.ReqParacrossNodeInfo) (types.Me
}
//Query_GetNodeIdInfo get specific node addr info
func
(
p
*
Paracross
)
Query_GetNodeI
d
Info
(
in
*
pt
.
ReqParacrossNodeInfo
)
(
types
.
Message
,
error
)
{
func
(
p
*
Paracross
)
Query_GetNodeI
D
Info
(
in
*
pt
.
ReqParacrossNodeInfo
)
(
types
.
Message
,
error
)
{
if
in
==
nil
||
in
.
Title
==
""
||
in
.
Id
==
""
{
return
nil
,
types
.
ErrInvalidParam
}
...
...
plugin/dapp/paracross/executor/superaccount.go
View file @
363fb6f3
...
...
@@ -444,6 +444,7 @@ func updateVotes(stat *pt.ParaNodeIdStatus, nodes map[string]struct{}) {
stat
.
Votes
=
votes
}
func
(
a
*
action
)
updateNodeAddrStatus
(
stat
*
pt
.
ParaNodeIdStatus
)
(
*
types
.
Receipt
,
error
)
{
addrStat
,
err
:=
getNodeAddr
(
a
.
db
,
stat
.
Title
,
stat
.
TargetAddr
)
if
err
!=
nil
{
...
...
@@ -503,14 +504,21 @@ func (a *action) nodeVote(config *pt.ParaNodeAddrConfig) (*types.Receipt, error)
if
err
!=
nil
{
return
nil
,
err
}
if
config
.
Title
!=
stat
.
Title
{
return
nil
,
errors
.
Wrapf
(
pt
.
ErrNodeNotForTheTitle
,
"config title:%s,id title:%s"
,
config
.
Title
,
stat
.
Title
)
}
if
stat
.
Status
!=
pt
.
ParacrossNodeJoining
&&
stat
.
Status
!=
pt
.
ParacrossNodeQuiting
{
return
nil
,
errors
.
Wrapf
(
pt
.
ErrParaNodeOpStatusWrong
,
"config id:%s,status:%d"
,
config
.
Id
,
stat
.
Status
)
}
//已经被其他id pass 场景
if
stat
.
Status
==
pt
.
ParacrossNodeJoining
&&
validNode
(
stat
.
TargetAddr
,
nodes
){
return
nil
,
errors
.
Wrapf
(
pt
.
ErrParaNodeAddrExisted
,
"config id:%s,addr:%s"
,
config
.
Id
,
stat
.
TargetAddr
)
}
if
stat
.
Status
==
pt
.
ParacrossNodeQuiting
&&
!
validNode
(
stat
.
TargetAddr
,
nodes
){
return
nil
,
errors
.
Wrapf
(
pt
.
ErrParaNodeAddrNotExisted
,
"config id:%s,addr:%s"
,
config
.
Id
,
stat
.
TargetAddr
)
}
var
copyStat
pt
.
ParaNodeIdStatus
err
=
deepCopy
(
&
copyStat
,
stat
)
if
err
!=
nil
{
...
...
plugin/dapp/paracross/executor/superaccount_test.go
View file @
363fb6f3
...
...
@@ -120,7 +120,7 @@ func checkGroupApplyReceipt(suite *NodeManageTestSuite, receipt *types.Receipt)
func
checkGroupApproveReceipt
(
suite
*
NodeManageTestSuite
,
receipt
*
types
.
Receipt
)
{
assert
.
Equal
(
suite
.
T
(),
receipt
.
Ty
,
int32
(
types
.
ExecOk
))
len
:=
len
(
receipt
.
Logs
)
var
stat
pt
.
ParaNodeIdStatus
err
:=
types
.
Decode
(
receipt
.
KV
[
len
-
1
]
.
Value
,
&
stat
)
assert
.
Nil
(
suite
.
T
(),
err
,
"decode ParaNodeAddrStatus failed"
)
...
...
plugin/dapp/paracross/rpc/rpc.go
View file @
363fb6f3
...
...
@@ -179,23 +179,23 @@ func (c *Jrpc) GetBlock2MainInfo(req *types.ReqBlocks, result *interface{}) erro
return
err
}
// GetNodeStatus get super node status
func
(
c
*
channelClient
)
GetNode
Status
(
ctx
context
.
Context
,
req
*
pt
.
ReqParacrossNodeInfo
)
(
*
pt
.
ParaNode
IdStatus
,
error
)
{
// GetNode
Addr
Status get super node status
func
(
c
*
channelClient
)
GetNode
AddrStatus
(
ctx
context
.
Context
,
req
*
pt
.
ReqParacrossNodeInfo
)
(
*
pt
.
ParaNodeAddr
IdStatus
,
error
)
{
r
:=
*
req
data
,
err
:=
c
.
Query
(
pt
.
GetExecName
(),
"GetNodeAddrInfo"
,
&
r
)
if
err
!=
nil
{
return
nil
,
err
}
if
resp
,
ok
:=
data
.
(
*
pt
.
ParaNodeIdStatus
);
ok
{
if
resp
,
ok
:=
data
.
(
*
pt
.
ParaNode
Addr
IdStatus
);
ok
{
return
resp
,
nil
}
return
nil
,
types
.
ErrDecode
}
// GetNodeStatus get super node status
// GetNode
ID
Status get super node status
func
(
c
*
channelClient
)
GetNodeIDStatus
(
ctx
context
.
Context
,
req
*
pt
.
ReqParacrossNodeInfo
)
(
*
pt
.
ParaNodeIdStatus
,
error
)
{
r
:=
*
req
data
,
err
:=
c
.
Query
(
pt
.
GetExecName
(),
"GetNodeI
d
Info"
,
&
r
)
data
,
err
:=
c
.
Query
(
pt
.
GetExecName
(),
"GetNodeI
D
Info"
,
&
r
)
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -205,22 +205,26 @@ func (c *channelClient) GetNodeIDStatus(ctx context.Context, req *pt.ReqParacros
return
nil
,
types
.
ErrDecode
}
// GetNodeStatus get super node status
func
(
c
*
Jrpc
)
GetNodeStatus
(
req
*
pt
.
ReqParacrossNodeInfo
,
result
*
interface
{})
error
{
if
req
==
nil
||
(
req
.
Addr
==
""
&&
req
.
Id
==
""
)
{
// GetNode
Addr
Status get super node status
func
(
c
*
Jrpc
)
GetNode
Addr
Status
(
req
*
pt
.
ReqParacrossNodeInfo
,
result
*
interface
{})
error
{
if
req
==
nil
||
req
.
Addr
==
""
{
return
types
.
ErrInvalidParam
}
var
data
*
pt
.
ParaNodeIdStatus
var
err
error
if
req
.
Addr
!=
""
{
data
,
err
=
c
.
cli
.
GetNodeStatus
(
context
.
Background
(),
req
)
}
data
,
err
:=
c
.
cli
.
GetNodeAddrStatus
(
context
.
Background
(),
req
)
*
result
=
data
return
err
}
if
req
.
Id
!=
""
{
data
,
err
=
c
.
cli
.
GetNodeIDStatus
(
context
.
Background
(),
req
)
// GetNodeIdStatus get super node status
func
(
c
*
Jrpc
)
GetNodeIDStatus
(
req
*
pt
.
ReqParacrossNodeInfo
,
result
*
interface
{})
error
{
if
req
==
nil
||
req
.
Id
==
""
{
return
types
.
ErrInvalidParam
}
data
,
err
:=
c
.
cli
.
GetNodeIDStatus
(
context
.
Background
(),
req
)
*
result
=
data
return
err
}
...
...
plugin/dapp/paracross/types/paracross.go
View file @
363fb6f3
...
...
@@ -117,7 +117,7 @@ const (
//voting status
const
(
// ParacrossNodeIDJoining apply for join group
ParacrossNodeJoining
=
iota
ParacrossNodeJoining
=
iota
+
1
// ParacrossNodeIDQuiting apply for quiting group
ParacrossNodeQuiting
// ParacrossNodeIDClosed id voting closed
...
...
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