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
419e010a
Commit
419e010a
authored
Sep 23, 2021
by
QM
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add make docker-compose dapp=autonomy
parent
c52d3858
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
388 additions
and
29 deletions
+388
-29
docker-compose.sh
build/docker-compose.sh
+2
-2
build.sh
plugin/dapp/autonomy/cmd/build.sh
+4
-0
autonomyTest.sh
plugin/dapp/autonomy/cmd/build/autonomyTest.sh
+0
-0
publicTest.sh
plugin/dapp/autonomy/cmd/build/publicTest.sh
+329
-0
testcase.sh
plugin/dapp/autonomy/cmd/build/testcase.sh
+15
-0
test-rpc.sh
plugin/dapp/autonomy/cmd/test/test-rpc.sh
+27
-22
proposal_board.go
plugin/dapp/autonomy/commands/proposal_board.go
+3
-3
proposal_project.go
plugin/dapp/autonomy/commands/proposal_project.go
+1
-1
autonomy.go
plugin/dapp/autonomy/executor/autonomy.go
+1
-0
boardaction.go
plugin/dapp/autonomy/executor/boardaction.go
+6
-1
No files found.
build/docker-compose.sh
View file @
419e010a
...
@@ -126,8 +126,8 @@ function base_init() {
...
@@ -126,8 +126,8 @@ function base_init() {
sed
-i
$sedfix
's/^genesis="12qyocayNF7.*/genesis="1G5Cjy8LuQex2fuYv3gzb7B8MxAnxLEqt3"/g'
chain33.toml
sed
-i
$sedfix
's/^genesis="12qyocayNF7.*/genesis="1G5Cjy8LuQex2fuYv3gzb7B8MxAnxLEqt3"/g'
chain33.toml
#autonomy
#autonomy
sed
-i
$sedfix
's/^useBalance=.*/useBalance=true/g'
chain33.toml
#
sed -i $sedfix 's/^useBalance=.*/useBalance=true/g' chain33.toml
sed
-i
$sedfix
's/^total="16htvcBNS.*/total="1Q9sQwothzM1gKSzkVZ8Dt1tqKX1uzSagx"/g'
chain33.toml
#
sed -i $sedfix 's/^total="16htvcBNS.*/total="1Q9sQwothzM1gKSzkVZ8Dt1tqKX1uzSagx"/g' chain33.toml
if
[
"
$DAPP
"
==
"x2ethereum"
]
;
then
if
[
"
$DAPP
"
==
"x2ethereum"
]
;
then
sed
-i
$sedfix
's/^enableReduceLocaldb=.*/enableReduceLocaldb=false/g'
chain33.toml
sed
-i
$sedfix
's/^enableReduceLocaldb=.*/enableReduceLocaldb=false/g'
chain33.toml
...
...
plugin/dapp/autonomy/cmd/build.sh
View file @
419e010a
...
@@ -4,6 +4,10 @@ strpwd=$(pwd)
...
@@ -4,6 +4,10 @@ strpwd=$(pwd)
strcmd
=
${
strpwd
##*dapp/
}
strcmd
=
${
strpwd
##*dapp/
}
strapp
=
${
strcmd
%/cmd*
}
strapp
=
${
strcmd
%/cmd*
}
OUT_DIR
=
"
${
1
}
/
$strapp
"
mkdir
-p
"
${
OUT_DIR
}
"
cp
./build/
*
"
${
OUT_DIR
}
"
OUT_TESTDIR
=
"
${
1
}
/dapptest/
$strapp
"
OUT_TESTDIR
=
"
${
1
}
/dapptest/
$strapp
"
mkdir
-p
"
${
OUT_TESTDIR
}
"
mkdir
-p
"
${
OUT_TESTDIR
}
"
cp
./test/
*
"
${
OUT_TESTDIR
}
"
cp
./test/
*
"
${
OUT_TESTDIR
}
"
plugin/dapp/autonomy/cmd/build/autonomyTest.sh
0 → 100755
View file @
419e010a
This diff is collapsed.
Click to expand it.
plugin/dapp/autonomy/cmd/build/publicTest.sh
0 → 100644
View file @
419e010a
#!/usr/bin/env bash
# shellcheck disable=SC2128
# shellcheck source=/dev/null
# shellcheck disable=SC2155
set
-x
set
-e
#color
RED
=
'\033[1;31m'
GRE
=
'\033[1;32m'
NOC
=
'\033[0m'
# 出错退出前拷贝日志文件
function
exit_cp_file
()
{
exit
1
}
# $1 dockerName
function
get_docker_addr
()
{
local
dockerAddr
=
$(
docker inspect
"
${
1
}
"
| jq
".[].NetworkSettings.Networks"
|
grep
"IPAddress"
|
awk
'{ print $2}'
|
sed
's/\"//g'
|
sed
's/,//g'
)
echo
"
${
dockerAddr
}
"
}
#function block_wait() {
# set +x
# set +x
# local block=$1
# for((i=1;i<=block;i++));do
# hash=$(${Chain33Cli} send coins transfer -a 0.001 -n test -t "${propAddr}" -k CC38546E9E659D15E6B4893F0AB32A06D103931A8230B0BDE71459D2B27D6944)
# check_tx "${Chain33Cli}" "${hash}"
# echo "这是第 $i 次调用";
# done;
# set -x
# set -x
#}
# 杀死进程ebrelayer 进程 $1进程名称
function
kill_ebrelayer
()
{
# shellcheck disable=SC2009
ps
-ef
|
grep
"
${
1
}
"
# shellcheck disable=SC2009
pid
=
$(
ps
-ef
|
grep
"
${
1
}
"
|
grep
-v
'grep'
|
awk
'{print $2}'
| xargs
)
if
[
"
${
pid
}
"
==
""
]
;
then
echo
"not find
${
1
}
pid"
return
fi
kill
-9
"
${
pid
}
"
sleep
1
# shellcheck disable=SC2009
pid
=
$(
ps
-ef
|
grep
"
${
1
}
"
|
grep
-v
'grep'
|
awk
'{print $2}'
| xargs
)
if
[
"
${
pid
}
"
!=
""
]
;
then
echo
"kill
${
1
}
failed"
kill
-9
"
${
pid
}
"
fi
sleep
1
}
# 判断结果是否正确
function
cli_ret
()
{
set
+x
if
[[
$#
-lt
2
]]
;
then
echo
-e
"
${
RED
}
wrong parameter
${
NOC
}
"
exit_cp_file
fi
ok
=
$(
echo
"
${
1
}
"
| jq
-r
.isOK
)
if
[[
${
ok
}
!=
"true"
]]
;
then
echo
-e
"
${
RED
}
failed to
${
2
}${
NOC
}
"
exit_cp_file
fi
local
jqMsg
=
".msg"
if
[[
$#
-ge
3
]]
;
then
jqMsg
=
"
${
3
}
"
fi
msg
=
$(
echo
"
${
1
}
"
| jq
-r
"
${
jqMsg
}
"
)
if
[[
$#
-eq
4
]]
;
then
if
[
"
$(
echo
"
$msg
<
$4
"
| bc
)
"
-eq
1
]
||
[
"
$(
echo
"
$msg
>
$4
"
| bc
)
"
-eq
1
]
;
then
echo
-e
"
${
RED
}
The balance is not correct
${
NOC
}
"
exit_cp_file
fi
fi
set
-x
echo
"
${
msg
}
"
}
# 判断 chain33 金额是否正确
function
balance_ret
()
{
set
+x
if
[[
$#
-lt
2
]]
;
then
echo
-e
"
${
RED
}
wrong parameter
${
NOC
}
"
exit_cp_file
fi
local
balance
=
$(
echo
"
${
1
}
"
| jq
-r
".balance"
)
if
[
"
$(
echo
"
$balance
<
$2
"
| bc
)
"
-eq
1
]
||
[
"
$(
echo
"
$balance
>
$2
"
| bc
)
"
-eq
1
]
;
then
echo
-e
"
${
RED
}
The balance is not correct
${
NOC
}
"
exit_cp_file
fi
set
-x
echo
"
${
balance
}
"
}
# 查询关键字所在行然后删除 ${1}文件名称 ${2}关键字
function
delete_line
()
{
line
=
$(
cat
-n
"
${
1
}
"
|
grep
"
${
2
}
"
|
awk
'{print $1}'
| xargs |
awk
'{print $1}'
)
if
[
"
${
line
}
"
]
;
then
sed
-i
"
${
line
}
"
'd'
"
${
1
}
"
# 删除行
fi
}
# 查询关键字所在行然后删除 ${1}文件名称 ${2}关键字
function
delete_line_show
()
{
local
line
=
$(
cat
-n
"
${
1
}
"
|
grep
"
${
2
}
"
|
awk
'{print $1}'
| xargs |
awk
'{print $1}'
)
if
[
"
${
line
}
"
]
;
then
sed
-i
"
${
line
}
"
'd'
"
${
1
}
"
# 删除行
line
=
$((
line
-
1
))
fi
echo
"
${
line
}
"
}
# chain33 区块等待 $1:cli 路径 $2:等待高度
function
block_wait
()
{
set
+x
local
CLI
=
${
1
}
if
[[
$#
-lt
1
]]
;
then
echo
-e
"
${
RED
}
wrong block_wait parameter
${
NOC
}
"
exit_cp_file
fi
local
cur_height
=
$(${
CLI
}
block last_header | jq
".height"
)
local
expect
=
$((
cur_height
+
${
2
}))
local
count
=
0
while
true
;
do
new_height
=
$(${
CLI
}
block last_header | jq
".height"
)
if
[[
${
new_height
}
-ge
${
expect
}
]]
;
then
break
fi
count
=
$((
count
+
1
))
sleep
1
done
count
=
$((
count
+
1
))
set
-x
echo
-e
"
${
GRE
}
chain33 wait new block
$count
s, cur height=
$expect
,old=
$cur_height
${
NOC
}
"
}
# 检查交易是否执行成功 $1:cli 路径 $2:交易hash
function
check_tx
()
{
set
+x
local
CLI
=
${
1
}
if
[[
$#
-lt
2
]]
;
then
echo
-e
"
${
RED
}
wrong check_tx parameters
${
NOC
}
"
exit_cp_file
fi
if
[[
${
2
}
==
""
]]
;
then
echo
-e
"
${
RED
}
wrong check_tx txHash is empty
${
NOC
}
"
exit_cp_file
fi
local
count
=
0
while
true
;
do
ty
=
$(${
CLI
}
tx query
-s
"
${
2
}
"
| jq .receipt.ty
)
if
[[
${
ty
}
!=
""
]]
;
then
break
fi
count
=
$((
count
+
1
))
sleep
1
if
[[
${
count
}
-ge
100
]]
;
then
echo
"chain33 query tx for too long"
break
fi
done
set
-x
ty
=
$(${
CLI
}
tx query
-s
"
${
2
}
"
| jq .receipt.ty
)
if
[[
${
ty
}
!=
2
]]
;
then
echo
-e
"
${
RED
}
check tx error, hash is
${
2
}${
NOC
}
"
exit_cp_file
fi
}
function
check_number
()
{
if
[[
$#
-lt
2
]]
;
then
echo
-e
"
${
RED
}
wrong check number parameters
${
NOC
}
"
exit_cp_file
fi
if
[
"
$(
echo
"
$1
<
$2
"
| bc
)
"
-eq
1
]
||
[
"
$(
echo
"
$1
>
$2
"
| bc
)
"
-eq
1
]
;
then
echo
-e
"
${
RED
}
error number, expect
${
1
}
, get
${
2
}${
NOC
}
"
exit_cp_file
fi
}
# 检查地址是否匹配 $1返回结果 $2匹配地址
function
check_addr
()
{
if
[[
$#
-lt
2
]]
;
then
echo
-e
"
${
RED
}
wrong check number parameters
${
NOC
}
"
exit_cp_file
fi
addr
=
$(
echo
"
${
1
}
"
| jq
-r
".acc.addr"
)
if
[[
${
addr
}
!=
"
${
2
}
"
]]
;
then
echo
-e
"
${
RED
}
error addr, expect
${
1
}
, get
${
2
}${
NOC
}
"
exit_cp_file
fi
}
# 判断结果 $1 和 $2 是否相等
function
is_equal
()
{
set
+x
if
[[
$#
-lt
2
]]
;
then
echo
-e
"
${
RED
}
wrong parameter
${
NOC
}
"
exit_cp_file
fi
if
[[
$1
!=
"
$2
"
]]
;
then
echo
-e
"
${
RED
}
$1
!=
${
2
}${
NOC
}
"
exit_cp_file
fi
set
-x
}
# 判断结果 $1 和 $2 是否不相等
function
is_not_equal
()
{
set
+x
if
[[
$#
-lt
2
]]
;
then
echo
-e
"
${
RED
}
wrong parameter
${
NOC
}
"
exit_cp_file
fi
if
[[
$1
==
"
$2
"
]]
;
then
echo
-e
"
${
RED
}
$1
==
${
2
}${
NOC
}
"
exit_cp_file
fi
set
-x
}
# import_key and transfer $1 key, $2 label, $3 addr, $4 transfer amount
function
import_addr
()
{
local
key
=
"
$1
"
local
label
=
"
$2
"
local
addr
=
"
$3
"
# shellcheck disable=SC2154
result
=
$(${
Chain33Cli
}
account import_key
-k
"
${
key
}
"
-l
"
${
label
}
"
)
check_addr
"
${
result
}
"
"
${
addr
}
"
if
[
"$#"
-eq
4
]
;
then
# shellcheck disable=SC2154
hash
=
$(${
Chain33Cli
}
send coins transfer
-a
"
$4
"
-n
test
-t
"
${
addr
}
"
-k
"
${
minerAddr
}
"
)
check_tx
"
${
Chain33Cli
}
"
"
${
hash
}
"
fi
}
function
InitChain33Account
()
{
# shellcheck disable=SC2154
import_addr
"
${
propKey
}
"
"prop"
"
${
propAddr
}
"
1000
# shellcheck disable=SC2154
import_addr
"
${
votePrKey2
}
"
"vote2"
"
${
voteAddr2
}
"
100
# shellcheck disable=SC2154
import_addr
"
${
votePrKey3
}
"
"vote3"
"
${
voteAddr3
}
"
100
# import_addr "${votePrKey}" "vote" "${voteAddr}" 3200
# shellcheck disable=SC2154
import_addr
"
${
changeKey
}
"
"changeTest"
"
${
changeAddr
}
"
10
autonomyAddr
=
$(${
Chain33Cli
}
exec
addr
-e
autonomy
)
# ticketAddr=$(${Chain33Cli} exec addr -e ticket)
hash
=
$(${
Chain33Cli
}
send coins transfer
-a
900
-n
test
-t
"
${
autonomyAddr
}
"
-k
"
${
propKey
}
"
)
check_tx
"
${
Chain33Cli
}
"
"
${
hash
}
"
# hash=$(${Chain33Cli} send coins transfer -a 3100 -n test -t "${ticketAddr}" -k "${votePrKey}")
# check_tx "${Chain33Cli}" "${hash}"
# shellcheck disable=SC2154
# hash=$(${Chain33Cli} send coins transfer -a 10 -n test -t "${voteAddr2}" -k "${minerAddr}")
# check_tx "${Chain33Cli}" "${hash}"
local
count
=
0
# shellcheck disable=SC2154
# shellcheck disable=SC2068
for
key
in
${
arrayKey
[@]
}
do
import_addr
"
${
key
}
"
"board
${
count
}
"
"
${
arrayAddr
[count]
}
"
100
count
=
$((
count
+
1
))
done
}
# chian33 初始化准备
function
InitChain33
()
{
echo
-e
"
${
GRE
}
===========
$FUNCNAME
begin ===========
${
NOC
}
"
# init
# ${Chain33Cli} seed save -p 1314fuzamei -s "tortoise main civil member grace happy century convince father cage beach hip maid merry rib"
# ${Chain33Cli} wallet unlock -p 1314fuzamei -t 0
# ${Chain33Cli} account import_key -k CC38546E9E659D15E6B4893F0AB32A06D103931A8230B0BDE71459D2B27D6944 -l returnAddr
InitChain33Account
echo
-e
"
${
GRE
}
===========
$FUNCNAME
end ===========
${
NOC
}
"
}
function
StartChain33
()
{
# kill_ebrelayer chain33
# sleep 2
#
# # delete chain33 datadir
# rm ../../datadir ../../logs -rf
#
# nohup ../../chain33 -f ./ci/autonomy/test.toml >chain33log.log 2>&1 &
#
# sleep 1
InitChain33
}
\ No newline at end of file
plugin/dapp/autonomy/cmd/build/testcase.sh
0 → 100755
View file @
419e010a
#!/usr/bin/env bash
# shellcheck disable=SC2128
# shellcheck source=/dev/null
source
"./autonomyTest.sh"
function
autonomy
()
{
if
[
"
${
2
}
"
==
"test"
]
;
then
echo
"========================== autonomy test =========================="
set
+e
set
-x
mainTest
echo
"========================== autonomy test end =========================="
fi
}
plugin/dapp/autonomy/cmd/test/test-rpc.sh
View file @
419e010a
...
@@ -8,13 +8,20 @@ HTTP=""
...
@@ -8,13 +8,20 @@ HTTP=""
EXECTOR
=
""
EXECTOR
=
""
EXECTOR_ADDR
=
""
EXECTOR_ADDR
=
""
TICKET_EXECTOR
=
""
TICKET_ADDR
=
""
propKey
=
"0xfd0c4a8a1efcd221ee0f36b7d4f57d8ff843cb8bc193b39c7863332d355acafa"
propKey
=
"0xfd0c4a8a1efcd221ee0f36b7d4f57d8ff843cb8bc193b39c7863332d355acafa"
propAddr
=
"15VUiygdxMSZ3rykwe742yomp2cPJ9Tfve"
propAddr
=
"15VUiygdxMSZ3rykwe742yomp2cPJ9Tfve"
votePrKey
=
"1c3e6cac2f887e1ab9180e2d5772dc4ba01accb8d4df434faba097003eb35482"
#votePrKey="1c3e6cac2f887e1ab9180e2d5772dc4ba01accb8d4df434faba097003eb35482"
voteAddr
=
"1Q9sQwothzM1gKSzkVZ8Dt1tqKX1uzSagx"
#voteAddr="1Q9sQwothzM1gKSzkVZ8Dt1tqKX1uzSagx"
voteAddr
=
"14KEKbYtKKQm4wMthSK9J4La4nAiidGozt"
votePrKey
=
"CC38546E9E659D15E6B4893F0AB32A06D103931A8230B0BDE71459D2B27D6944"
#14KEKbYtKKQm4wMthSK9J4La4nAiidGozt
voteAddr2
=
"1EbDHAXpoiewjPLX9uqoz38HsKqMXayZrF"
votePrKey2
=
"B0BB75BC49A787A71F4834DA18614763B53A18291ECE6B5EDEC3AD19D150C3E7"
#1EbDHAXpoiewjPLX9uqoz38HsKqMXayZrF
voteAddr3
=
"1KcCVZLSQYRUwE5EXTsAoQs9LuJW6xwfQa"
votePrKey3
=
"2AFF1981291355322C7A6308D46A9C9BA311AA21D94F36B43FC6A6021A1334CF"
proposalRuleID
=
""
proposalRuleID
=
""
proposalBoardID
=
""
proposalBoardID
=
""
...
@@ -100,11 +107,7 @@ boards='
...
@@ -100,11 +107,7 @@ boards='
"'
${
boardsAddr
[19]
}
'",
"'
${
boardsAddr
[19]
}
'",
"'
${
boardsAddr
[20]
}
'"
"'
${
boardsAddr
[20]
}
'"
'
'
chain33_para_init
()
{
ip
=
$1
chain33_ImportPrivkey
"
${
votePrKey
}
"
"
${
voteAddr
}
"
"autonomytest"
"
${
ip
}
"
chain33_SendToAddress
"12qyocayNF7Lv6C9qW4avxs2E7U41fKSfv"
"
$voteAddr
"
630000000000
"
${
ip
}
"
}
chain33_applyCoinsNOLimit
()
{
chain33_applyCoinsNOLimit
()
{
echo
"chain33_getMainChainCoins"
echo
"chain33_getMainChainCoins"
if
[
"$#"
-lt
3
]
;
then
if
[
"$#"
-lt
3
]
;
then
...
@@ -117,6 +120,7 @@ chain33_applyCoinsNOLimit() {
...
@@ -117,6 +120,7 @@ chain33_applyCoinsNOLimit() {
local
poolAddr
=
"1PcGKYYoLn1PLLJJodc1UpgWGeFAQasAkx"
local
poolAddr
=
"1PcGKYYoLn1PLLJJodc1UpgWGeFAQasAkx"
chain33_SendToAddress
"
${
poolAddr
}
"
"
${
targetAddr
}
"
"
$count
"
"
${
ip
}
"
chain33_SendToAddress
"
${
poolAddr
}
"
"
${
targetAddr
}
"
"
$count
"
"
${
ip
}
"
chain33_QueryBalance
"
${
targetAddr
}
"
"
${
ip
}
"
}
}
handleBoards
()
{
handleBoards
()
{
...
@@ -220,6 +224,7 @@ testProposalBoard() {
...
@@ -220,6 +224,7 @@ testProposalBoard() {
#vote
#vote
chain33_BlockWait 100
"
$HTTP
"
chain33_BlockWait 100
"
$HTTP
"
voteBoardTx
"
${
proposalBoardID
}
"
"
${
votePrKey
}
"
voteBoardTx
"
${
proposalBoardID
}
"
"
${
votePrKey
}
"
voteBoardTx
"
${
proposalBoardID
}
"
"
${
votePrKey2
}
"
#query
#query
queryProposal
"
${
proposalBoardID
}
"
"GetProposalBoard"
queryProposal
"
${
proposalBoardID
}
"
"GetProposalBoard"
listProposal 4
"ListProposalBoard"
listProposal 4
"ListProposalBoard"
...
@@ -276,6 +281,8 @@ testProposalRule() {
...
@@ -276,6 +281,8 @@ testProposalRule() {
#vote
#vote
chain33_BlockWait 100
"
$HTTP
"
chain33_BlockWait 100
"
$HTTP
"
voteRuleTx
"
${
proposalRuleID
}
"
${
votePrKey
}
voteRuleTx
"
${
proposalRuleID
}
"
${
votePrKey
}
voteRuleTx
"
${
proposalRuleID
}
"
"
${
votePrKey2
}
"
voteRuleTx
"
${
proposalRuleID
}
"
"
${
votePrKey3
}
"
#query
#query
queryProposal
"
${
proposalRuleID
}
"
"GetProposalRule"
queryProposal
"
${
proposalRuleID
}
"
"GetProposalRule"
listProposal 4
"ListProposalRule"
listProposal 4
"ListProposalRule"
...
@@ -457,45 +464,43 @@ init() {
...
@@ -457,45 +464,43 @@ init() {
if
[
"
$ispara
"
==
true
]
;
then
if
[
"
$ispara
"
==
true
]
;
then
EXECTOR_ADDR
=
$(
curl
-ksd
'{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"user.p.para.autonomy"}]}'
"
${
HTTP
}
"
| jq
-r
".result"
)
EXECTOR_ADDR
=
$(
curl
-ksd
'{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"user.p.para.autonomy"}]}'
"
${
HTTP
}
"
| jq
-r
".result"
)
EXECTOR
=
"user.p.para.autonomy"
EXECTOR
=
"user.p.para.autonomy"
TICKET_ADDR
=
$(
curl
-ksd
'{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"user.p.para.ticket"}]}'
"
${
HTTP
}
"
| jq
-r
".result"
)
TICKET_EXECTOR
=
"user.p.para.ticket"
else
else
EXECTOR_ADDR
=
$(
curl
-ksd
'{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"autonomy"}]}'
"
${
HTTP
}
"
| jq
-r
".result"
)
EXECTOR_ADDR
=
$(
curl
-ksd
'{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"autonomy"}]}'
"
${
HTTP
}
"
| jq
-r
".result"
)
EXECTOR
=
"autonomy"
EXECTOR
=
"autonomy"
TICKET_ADDR
=
$(
curl
-ksd
'{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"ticket"}]}'
"
${
HTTP
}
"
| jq
-r
".result"
)
TICKET_EXECTOR
=
"ticket"
fi
fi
echo
"EXECTOR_ADDR=
$EXECTOR_ADDR
"
echo
"EXECTOR_ADDR=
$EXECTOR_ADDR
"
local
main_ip
=
${
HTTP
//8901/8801
}
local
main_ip
=
${
HTTP
//8901/8801
}
chain33_ImportPrivkey
"
${
propKey
}
"
"
${
propAddr
}
"
"prop"
"
${
main_ip
}
"
chain33_ImportPrivkey
"
${
propKey
}
"
"
${
propAddr
}
"
"prop"
"
${
main_ip
}
"
chain33_ImportPrivkey
"
${
votePrKey2
}
"
"
${
voteAddr2
}
"
"voteAddr2"
"
${
main_ip
}
"
chain33_ImportPrivkey
"
${
votePrKey3
}
"
"
${
voteAddr3
}
"
"voteAddr3"
"
${
main_ip
}
"
if
[
"
$ispara
"
==
false
]
;
then
if
[
"
$ispara
"
==
false
]
;
then
chain33_applyCoinsNOLimit
"
$propAddr
"
100000000000
"
${
main_ip
}
"
chain33_applyCoinsNOLimit
"
$propAddr
"
100000000000
"
${
main_ip
}
"
chain33_QueryBalance
"
${
propAddr
}
"
"
$main_ip
"
chain33_applyCoinsNOLimit
"
${
voteAddr
}
"
10000000000
"
${
main_ip
}
"
chain33_applyCoinsNOLimit
"
${
voteAddr2
}
"
10000000000
"
${
main_ip
}
"
chain33_applyCoinsNOLimit
"
${
voteAddr3
}
"
10000000000
"
${
main_ip
}
"
else
else
chain33_applyCoins
"
$propAddr
"
1000000000
"
${
main_ip
}
"
chain33_applyCoinsNOLimit
"
$propAddr
"
1000000000
"
${
main_ip
}
"
chain33_QueryBalance
"
${
propAddr
}
"
"
$main_ip
"
#主链投票账户转帐
#主链投票账户转帐
handleBoards
"
$main_ip
"
handleBoards
"
$main_ip
"
local
para_ip
=
"
${
HTTP
}
"
local
para_ip
=
"
${
HTTP
}
"
chain33_ImportPrivkey
"
${
propKey
}
"
"
${
propAddr
}
"
"prop"
"
$para_ip
"
chain33_ImportPrivkey
"
${
propKey
}
"
"
${
propAddr
}
"
"prop"
"
$para_ip
"
chain33_ImportPrivkey
"
${
votePrKey2
}
"
"
${
voteAddr2
}
"
"voteAddr2"
"
${
para_ip
}
"
chain33_ImportPrivkey
"
${
votePrKey3
}
"
"
${
voteAddr3
}
"
"voteAddr3"
"
${
para_ip
}
"
#平行链中账户转帐
#平行链中账户转帐
chain33_applyCoinsNOLimit
"
$propAddr
"
100000000000
"
$para_ip
"
chain33_applyCoinsNOLimit
"
$propAddr
"
100000000000
"
$para_ip
"
chain33_QueryBalance
"
$propAddr
"
"
$para_ip
"
chain33_applyCoinsNOLimit
"
${
voteAddr
}
"
10000000000
"
${
para_ip
}
"
chain33_para_init
"
$para_ip
"
chain33_applyCoinsNOLimit
"
${
voteAddr2
}
"
10000000000
"
${
para_ip
}
"
chain33_applyCoinsNOLimit
"
${
voteAddr3
}
"
10000000000
"
${
para_ip
}
"
fi
fi
# 往合约中转
# 往合约中转
chain33_SendToAddress
"
$propAddr
"
"
$EXECTOR_ADDR
"
90000000000
"
$HTTP
"
chain33_SendToAddress
"
$propAddr
"
"
$EXECTOR_ADDR
"
90000000000
"
$HTTP
"
chain33_QueryExecBalance
"
$propAddr
"
"
$EXECTOR
"
"
$HTTP
"
chain33_QueryExecBalance
"
$propAddr
"
"
$EXECTOR
"
"
$HTTP
"
# 往ticket合约中转帐
chain33_SendToAddress
"
$voteAddr
"
"
$TICKET_ADDR
"
300100000000
"
$HTTP
"
chain33_QueryExecBalance
"
$voteAddr
"
"
$TICKET_EXECTOR
"
"
$HTTP
"
# 往投票账户中转帐
# 往投票账户中转帐
handleBoards
"
$HTTP
"
handleBoards
"
$HTTP
"
}
}
...
...
plugin/dapp/autonomy/commands/proposal_board.go
View file @
419e010a
...
@@ -88,7 +88,7 @@ func addProposalBoardFlags(cmd *cobra.Command) {
...
@@ -88,7 +88,7 @@ func addProposalBoardFlags(cmd *cobra.Command) {
cmd
.
Flags
()
.
Int32P
(
"month"
,
"m"
,
0
,
"month"
)
cmd
.
Flags
()
.
Int32P
(
"month"
,
"m"
,
0
,
"month"
)
cmd
.
Flags
()
.
Int32P
(
"day"
,
"d"
,
0
,
"day"
)
cmd
.
Flags
()
.
Int32P
(
"day"
,
"d"
,
0
,
"day"
)
cmd
.
Flags
()
.
BoolP
(
"update"
,
"u"
,
false
,
"replace or update boards, default is replace(false); update(true)
"
)
cmd
.
Flags
()
.
Int32P
(
"update"
,
"u"
,
1
,
"addr delete or replace boards, 1:add, 2:delete, 3:replace all, default is 1
"
)
cmd
.
Flags
()
.
Int64P
(
"startBlock"
,
"s"
,
0
,
"start block height"
)
cmd
.
Flags
()
.
Int64P
(
"startBlock"
,
"s"
,
0
,
"start block height"
)
cmd
.
MarkFlagRequired
(
"startBlock"
)
cmd
.
MarkFlagRequired
(
"startBlock"
)
cmd
.
Flags
()
.
Int64P
(
"endBlock"
,
"e"
,
0
,
"end block height"
)
cmd
.
Flags
()
.
Int64P
(
"endBlock"
,
"e"
,
0
,
"end block height"
)
...
@@ -106,7 +106,7 @@ func proposalBoard(cmd *cobra.Command, args []string) {
...
@@ -106,7 +106,7 @@ func proposalBoard(cmd *cobra.Command, args []string) {
month
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"month"
)
month
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"month"
)
day
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"day"
)
day
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"day"
)
update
,
_
:=
cmd
.
Flags
()
.
Get
Bool
(
"update"
)
update
,
_
:=
cmd
.
Flags
()
.
Get
Int32
(
"update"
)
startBlock
,
_
:=
cmd
.
Flags
()
.
GetInt64
(
"startBlock"
)
startBlock
,
_
:=
cmd
.
Flags
()
.
GetInt64
(
"startBlock"
)
endBlock
,
_
:=
cmd
.
Flags
()
.
GetInt64
(
"endBlock"
)
endBlock
,
_
:=
cmd
.
Flags
()
.
GetInt64
(
"endBlock"
)
boardstr
,
_
:=
cmd
.
Flags
()
.
GetString
(
"boards"
)
boardstr
,
_
:=
cmd
.
Flags
()
.
GetString
(
"boards"
)
...
@@ -117,7 +117,7 @@ func proposalBoard(cmd *cobra.Command, args []string) {
...
@@ -117,7 +117,7 @@ func proposalBoard(cmd *cobra.Command, args []string) {
Year
:
year
,
Year
:
year
,
Month
:
month
,
Month
:
month
,
Day
:
day
,
Day
:
day
,
Update
:
update
,
BoardUpdate
:
auty
.
BoardUpdate
(
update
)
,
Boards
:
boards
,
Boards
:
boards
,
StartBlockHeight
:
startBlock
,
StartBlockHeight
:
startBlock
,
EndBlockHeight
:
endBlock
,
EndBlockHeight
:
endBlock
,
...
...
plugin/dapp/autonomy/commands/proposal_project.go
View file @
419e010a
...
@@ -54,7 +54,7 @@ func addProposalProjectFlags(cmd *cobra.Command) {
...
@@ -54,7 +54,7 @@ func addProposalProjectFlags(cmd *cobra.Command) {
cmd
.
Flags
()
.
Int64P
(
"endBlock"
,
"e"
,
0
,
"end block height"
)
cmd
.
Flags
()
.
Int64P
(
"endBlock"
,
"e"
,
0
,
"end block height"
)
cmd
.
MarkFlagRequired
(
"endBlock"
)
cmd
.
MarkFlagRequired
(
"endBlock"
)
cmd
.
Flags
()
.
Int32P
(
"projectNeedBlockNum"
,
"n"
,
0
,
"project complete need time(unit is block number)"
)
cmd
.
Flags
()
.
Int32P
(
"projectNeedBlockNum"
,
"n"
,
0
,
"project complete need time(unit is block number)"
)
cmd
.
MarkFlagRequired
(
"projectNeedBlockNum"
)
//
cmd.MarkFlagRequired("projectNeedBlockNum")
}
}
func
proposalProject
(
cmd
*
cobra
.
Command
,
args
[]
string
)
{
func
proposalProject
(
cmd
*
cobra
.
Command
,
args
[]
string
)
{
...
...
plugin/dapp/autonomy/executor/autonomy.go
View file @
419e010a
...
@@ -15,6 +15,7 @@ import (
...
@@ -15,6 +15,7 @@ import (
type
subConfig
struct
{
type
subConfig
struct
{
Total
string
`json:"total"`
Total
string
`json:"total"`
UseBalance
bool
`json:"useBalance"`
UseBalance
bool
`json:"useBalance"`
Execer
string
`json:"execer"`
}
}
var
(
var
(
...
...
plugin/dapp/autonomy/executor/boardaction.go
View file @
419e010a
...
@@ -499,6 +499,7 @@ func (a *action) getTotalVotes(height int64) (int32, error) {
...
@@ -499,6 +499,7 @@ func (a *action) getTotalVotes(height int64) (int32, error) {
addr
=
subcfg
.
Total
addr
=
subcfg
.
Total
}
}
voteAccount
,
err
:=
a
.
getStartHeightVoteAccount
(
addr
,
""
,
height
)
voteAccount
,
err
:=
a
.
getStartHeightVoteAccount
(
addr
,
""
,
height
)
if
err
!=
nil
{
if
err
!=
nil
{
return
0
,
err
return
0
,
err
}
}
...
@@ -539,7 +540,11 @@ func (a *action) batchGetAddressVotes(addrs []string, height int64) (int32, erro
...
@@ -539,7 +540,11 @@ func (a *action) batchGetAddressVotes(addrs []string, height int64) (int32, erro
}
}
func
(
a
*
action
)
getAddressVotes
(
addr
string
,
height
int64
)
(
int32
,
error
)
{
func
(
a
*
action
)
getAddressVotes
(
addr
string
,
height
int64
)
(
int32
,
error
)
{
voteAccount
,
err
:=
a
.
getStartHeightVoteAccount
(
addr
,
ticketName
,
height
)
execer
:=
ticketName
if
subcfg
.
Execer
!=
""
{
execer
=
subcfg
.
Execer
}
voteAccount
,
err
:=
a
.
getStartHeightVoteAccount
(
addr
,
execer
,
height
)
if
err
!=
nil
{
if
err
!=
nil
{
return
0
,
err
return
0
,
err
}
}
...
...
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