1
1
#! /usr/bin/env bash
2
2
3
- # rm -rf /usr/local/bin/miniscript-docker 2>/dev/null || true
4
3
[[ -z " $( command -v miniscript-docker) " ]] && \
5
4
install $0 /usr/local/bin || true
6
5
7
- VERSION=${VERSION:- v0.0.2}
8
-
9
- PORT=${PORT:- 80}
6
+ PORT=${PORT:- 8080}
10
7
VERBOSE=${VERBOSE:- }
11
8
12
9
FORCE=${FORCE:- }
@@ -15,16 +12,30 @@ TAG=${TAG:-miniscript}
15
12
16
13
PYTHON3=$( which python3)
17
14
18
- if [[ " $( uname -s ) " == " Darwin " ]];
15
+ if [[ " $CI " == " " ]];
19
16
then
20
- DOCKER=${DOCKER:- " /Applications/Docker.app/Contents/MacOS/Docker" }
17
+ if [[ " $( uname -s) " == " Darwin" ]];
18
+ then
19
+ DOCKER=${DOCKER:- " /Applications/Docker.app/Contents/MacOS/Docker" }
20
+ fi
21
+ if [[ " $( uname -s) " == " Linux" ]];
22
+ then
23
+ echo " TODO:more Linux support"
24
+ DOCKER=docker
25
+ DOCKER=${DOCKER:- docker}
26
+ fi
21
27
fi
22
- # # echo $DOCKER; ##exit
23
- # # [[ -z "$DOCKER" ]] && echo "????" && DOCKER=${DOCKER:docker}
28
+ # [[ -z "$DOCKER" ]] && echo "-z $DOCKER" && DOCKER=${DOCKER:docker}
29
+ # [[ ! -z "$DOCKER" ]] && echo "! -z $DOCKER" && DOCKER=${DOCKER:docker}
30
+ # echo $DOCKER;
24
31
25
32
# # MINT_000
26
33
27
34
# # MINT_001
35
+ MINT_001_1=" thresh(2,pk(XPUB1),s:pk(XPUB2),s:pk(XPUB3),snl:older(100))"
36
+ MINT_001_2=" thresh(2,pk(XPUB1),s:pk(XPUB2),s:pk(XPUB3),snl:after(2477600))"
37
+ MINT_001_3=" thresh(2,pk(XPUB1),s:pk(XPUB2),s:pk(XPUB3),snl:after(1694563200))"
38
+ MINT_001_4=" thresh(2,pk(XPUB1),s:pk(XPUB2),s:pk(XPUB3),snl:older(4194400))"
28
39
29
40
# # MINT_002
30
41
MINT_002_1=" thresh(3,pk(XPUB1),s:pk(XPUB2),s:pk(XPUB3),s:pk(XPUB4),s:pk(XPUB5),snu:older(100),snu:older(200))"
@@ -49,7 +60,7 @@ function docker-start(){
49
60
fi ; \
50
61
if [[ " $( uname -s) " == " Darwin" ]]; then\
51
62
DOCKER=" /Applications/Docker.app/Contents/MacOS/Docker" ; \
52
- open --background -a $DOCKER ; \
63
+ open --background -a $DOCKER || DOCKER= $( which docker ) ; \
53
64
fi ; \
54
65
sleep 1; \
55
66
done\
@@ -73,6 +84,19 @@ and(pk(A),or(pk(B),or(9@pk(C),older(1000))))
73
84
printf "
74
85
and(pk(A),or(pk(B),or(9@pk(C),older(1000))))
75
86
"
87
+
88
+ printf "
89
+ $MINT_001_1
90
+ "
91
+ printf "
92
+ $MINT_001_2
93
+ "
94
+ printf "
95
+ $MINT_001_3
96
+ "
97
+ printf "
98
+ $MINT_001_4
99
+ "
76
100
printf "
77
101
$MINT_002_1
78
102
"
@@ -103,61 +127,69 @@ function help {
103
127
printf " miniscript-docker examples\n"
104
128
printf " \n"
105
129
printf " miniscript-docker help [-h --help]\n"
130
+ printf " \n"
106
131
printf " miniscript-docker build [-b --build]\n"
107
132
printf " \n"
133
+ printf " miniscript-docker shell\n"
134
+ printf " \n"
135
+ printf " PORT=6102 miniscript-docker serve\n"
136
+ printf " \n"
108
137
printf " miniscript-docker run '<miniscript>'"
109
138
printf " \n"
110
139
exit ;
111
140
}
112
141
113
142
function build(){
114
143
115
- docker \
116
- build \
117
- https://raw.githubusercontent.com/bitcoincore-dev/miniscript-docker/$VERSION /Dockerfile \
118
- $NOCACHE \
119
- -t $TAG
120
-
121
144
# echo $DOCKER
122
145
# echo $NOCACHE
123
- # [ "$NOCACHE" ] && $(which docker) build --no-cache -t $TAG . && exit;
124
- # [ ! -z "$NOCACHE" ] && $(which docker) build $NOCACHE -t $TAG . && exit;
146
+ [ " $NOCACHE " ] && docker build --no-cache -t $TAG . && exit ;
147
+ [ ! -z " $NOCACHE " ] && docker build $NOCACHE -t $TAG . && exit ;
125
148
126
149
}
127
150
128
151
function run(){
129
152
130
153
docker-start
131
- echo $2
154
+
132
155
docker \
133
156
run \
134
157
--rm \
135
158
-v $PWD :/src \
136
159
$TAG \
137
160
sh \
138
- -c " echo '$2 ' | ./miniscript-run" ; exit ;
161
+ -c " echo '$1 ' | miniscript" ;
162
+
163
+ exit
164
+ }
165
+ function serve(){
166
+ echo serve
167
+ echo $PORT
168
+
169
+ docker-start
139
170
140
- # # echo $1
141
171
docker \
142
172
run \
143
- --rm \
144
- -v $PWD :/src \
145
- $TAG \
146
- sh \
147
- -c " echo ' $1 ' | miniscript " ;
148
- echo $2
173
+ -d \
174
+ -t \
175
+ -i \
176
+ -p 127.0.0.1: $PORT :8080/tcp \
177
+ -v ` pwd ` :/src miniscript bash - c " serve $PORT "
178
+ exit
149
179
150
180
}
151
181
function shell (){
152
182
153
183
docker-start
154
184
docker \
155
185
run \
186
+ -d \
156
187
-t \
157
188
-i \
158
189
--rm \
159
190
-p 127.0.0.1:$PORT :8080/tcp \
160
191
-v ` pwd` :/src miniscript bash
192
+
161
193
}
162
194
# # argparse
163
195
# # position $1
199
231
;;
200
232
run) RUN=TRUE && run $2 $3 $4
201
233
;;
234
+ serve) serve $PORT
235
+ ;;
202
236
shell) shell
203
237
;;
204
238
examples) examples
0 commit comments