Skip to content

Commit 31339bb

Browse files
authored
Merge pull request #2898 from OpenC3/pull
Add ability to pull to openc3_util
2 parents de86942 + 961c515 commit 31339bb

File tree

2 files changed

+140
-63
lines changed

2 files changed

+140
-63
lines changed

scripts/linux/openc3_util.sh

Lines changed: 84 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ then
88
then
99
function docker() {
1010
podman $@
11+
return $?
1112
}
1213
else
1314
echo "Neither docker nor podman found!!!"
@@ -16,20 +17,50 @@ then
1617
fi
1718

1819
usage() {
19-
echo "Usage: $1 [encode, hash, save, load, tag, push, clean, hostsetup]" >&2
20+
echo "Usage: $1 [encode, hash, save, load, tag, push, pull, clean, hostsetup]" >&2
2021
echo "* encode: encode a string to base64" >&2
2122
echo "* hash: hash a string using SHA-256" >&2
2223
echo "* save: save images to a tar file" >&2
2324
echo "* load: load images from a tar file" >&2
2425
echo "* tag: tag images" >&2
2526
echo "* push: push images" >&2
27+
echo "* pull: pull images from a registry" >&2
2628
echo "* clean: remove node_modules, coverage, etc" >&2
2729
echo "* hostsetup: configure host for redis" >&2
2830
echo "* hostenter: sh into vm host" >&2
2931
exit 1
32+
return 1
3033
}
3134

32-
saveTar() {
35+
pull_images() {
36+
if [[ "$#" -lt 1 ]]; then
37+
echo "Usage: pull <TAG> [REPO] [NAMESPACE] [SUFFIX]" >&2
38+
echo "e.g. pull 7.0.0" >&2
39+
echo "e.g. pull 7.0.0 docker.io openc3inc" >&2
40+
exit 1
41+
fi
42+
tag=$1
43+
repo=${2:-docker.io}
44+
namespace=${3:-openc3inc}
45+
suffix=""
46+
if [[ -n "$4" ]]; then
47+
suffix=$4
48+
fi
49+
50+
set -x
51+
docker pull $repo/$namespace/openc3-buckets$suffix:$tag
52+
docker pull $repo/$namespace/openc3-cosmos-cmd-tlm-api$suffix:$tag
53+
docker pull $repo/$namespace/openc3-cosmos-init$suffix:$tag
54+
docker pull $repo/$namespace/openc3-cosmos-script-runner-api$suffix:$tag
55+
docker pull $repo/$namespace/openc3-operator$suffix:$tag
56+
docker pull $repo/$namespace/openc3-redis$suffix:$tag
57+
docker pull $repo/$namespace/openc3-traefik$suffix:$tag
58+
docker pull $repo/$namespace/openc3-tsdb$suffix:$tag
59+
set +x
60+
return 0
61+
}
62+
63+
save_tar() {
3364
if [[ "$#" -lt 3 ]]; then
3465
echo "Usage: save <REPO> <NAMESPACE> <TAG> <SUFFIX>" >&2
3566
echo "e.g. save docker.io openc3inc 5.1.0" >&2
@@ -44,33 +75,28 @@ saveTar() {
4475
mkdir -p tmp
4576

4677
set -x
47-
docker pull $repo/$namespace/openc3-ruby$suffix:$tag
48-
docker pull $repo/$namespace/openc3-node$suffix:$tag
49-
docker pull $repo/$namespace/openc3-base$suffix:$tag
50-
docker pull $repo/$namespace/openc3-operator$suffix:$tag
78+
docker pull $repo/$namespace/openc3-buckets$suffix:$tag
5179
docker pull $repo/$namespace/openc3-cosmos-cmd-tlm-api$suffix:$tag
80+
docker pull $repo/$namespace/openc3-cosmos-init$suffix:$tag
5281
docker pull $repo/$namespace/openc3-cosmos-script-runner-api$suffix:$tag
53-
docker pull $repo/$namespace/openc3-traefik$suffix:$tag
82+
docker pull $repo/$namespace/openc3-operator$suffix:$tag
5483
docker pull $repo/$namespace/openc3-redis$suffix:$tag
84+
docker pull $repo/$namespace/openc3-traefik$suffix:$tag
5585
docker pull $repo/$namespace/openc3-tsdb$suffix:$tag
56-
docker pull $repo/$namespace/openc3-buckets$suffix:$tag
57-
docker pull $repo/$namespace/openc3-cosmos-init$suffix:$tag
5886

59-
docker save $repo/$namespace/openc3-ruby$suffix:$tag -o tmp/openc3-ruby$suffix-$tag.tar
60-
docker save $repo/$namespace/openc3-node$suffix:$tag -o tmp/openc3-node$suffix-$tag.tar
61-
docker save $repo/$namespace/openc3-base$suffix:$tag -o tmp/openc3-base$suffix-$tag.tar
62-
docker save $repo/$namespace/openc3-operator$suffix:$tag -o tmp/openc3-operator$suffix-$tag.tar
87+
docker save $repo/$namespace/openc3-buckets$suffix:$tag -o tmp/openc3-buckets$suffix-$tag.tar
6388
docker save $repo/$namespace/openc3-cosmos-cmd-tlm-api$suffix:$tag -o tmp/openc3-cosmos-cmd-tlm-api$suffix-$tag.tar
89+
docker save $repo/$namespace/openc3-cosmos-init$suffix:$tag -o tmp/openc3-cosmos-init$suffix-$tag.tar
6490
docker save $repo/$namespace/openc3-cosmos-script-runner-api$suffix:$tag -o tmp/openc3-cosmos-script-runner-api$suffix-$tag.tar
65-
docker save $repo/$namespace/openc3-traefik$suffix:$tag -o tmp/openc3-traefik$suffix-$tag.tar
91+
docker save $repo/$namespace/openc3-operator$suffix:$tag -o tmp/openc3-operator$suffix-$tag.tar
6692
docker save $repo/$namespace/openc3-redis$suffix:$tag -o tmp/openc3-redis$suffix-$tag.tar
93+
docker save $repo/$namespace/openc3-traefik$suffix:$tag -o tmp/openc3-traefik$suffix-$tag.tar
6794
docker save $repo/$namespace/openc3-tsdb$suffix:$tag -o tmp/openc3-tsdb$suffix-$tag.tar
68-
docker save $repo/$namespace/openc3-buckets$suffix:$tag -o tmp/openc3-buckets$suffix-$tag.tar
69-
docker save $repo/$namespace/openc3-cosmos-init$suffix:$tag -o tmp/openc3-cosmos-init$suffix-$tag.tar
7095
set +x
96+
return 0
7197
}
7298

73-
loadTar() {
99+
load_tar() {
74100
if [[ -z "$1" ]]; then
75101
tag="latest"
76102
else
@@ -81,18 +107,16 @@ loadTar() {
81107
suffix=$2
82108
fi
83109
set -x
84-
docker load -i tmp/openc3-ruby$suffix-$tag.tar
85-
docker load -i tmp/openc3-node$suffix-$tag.tar
86-
docker load -i tmp/openc3-base$suffix-$tag.tar
87-
docker load -i tmp/openc3-operator$suffix-$tag.tar
110+
docker load -i tmp/openc3-buckets$suffix-$tag.tar
88111
docker load -i tmp/openc3-cosmos-cmd-tlm-api$suffix-$tag.tar
112+
docker load -i tmp/openc3-cosmos-init$suffix-$tag.tar
89113
docker load -i tmp/openc3-cosmos-script-runner-api$suffix-$tag.tar
90-
docker load -i tmp/openc3-traefik$suffix-$tag.tar
114+
docker load -i tmp/openc3-operator$suffix-$tag.tar
91115
docker load -i tmp/openc3-redis$suffix-$tag.tar
116+
docker load -i tmp/openc3-traefik$suffix-$tag.tar
92117
docker load -i tmp/openc3-tsdb$suffix-$tag.tar
93-
docker load -i tmp/openc3-buckets$suffix-$tag.tar
94-
docker load -i tmp/openc3-cosmos-init$suffix-$tag.tar
95118
set +x
119+
return 0
96120
}
97121

98122
tag() {
@@ -121,18 +145,16 @@ tag() {
121145
fi
122146

123147
set -x
124-
docker tag $repo1/$namespace1/openc3-ruby$suffix:$tag1 $repo2/$namespace2/openc3-ruby$suffix:$tag2
125-
docker tag $repo1/$namespace1/openc3-node$suffix:$tag1 $repo2/$namespace2/openc3-node$suffix:$tag2
126-
docker tag $repo1/$namespace1/openc3-base$suffix:$tag1 $repo2/$namespace2/openc3-base$suffix:$tag2
127-
docker tag $repo1/$namespace1/openc3-operator$suffix:$tag1 $repo2/$namespace2/openc3-operator$suffix:$tag2
148+
docker tag $repo1/$namespace1/openc3-buckets$suffix:$tag1 $repo2/$namespace2/openc3-buckets$suffix:$tag2
128149
docker tag $repo1/$namespace1/openc3-cosmos-cmd-tlm-api$suffix:$tag1 $repo2/$namespace2/openc3-cosmos-cmd-tlm-api$suffix:$tag2
150+
docker tag $repo1/$namespace1/openc3-cosmos-init$suffix:$tag1 $repo2/$namespace2/openc3-cosmos-init$suffix:$tag2
129151
docker tag $repo1/$namespace1/openc3-cosmos-script-runner-api$suffix:$tag1 $repo2/$namespace2/openc3-cosmos-script-runner-api$suffix:$tag2
130-
docker tag $repo1/$namespace1/openc3-traefik$suffix:$tag1 $repo2/$namespace2/openc3-traefik$suffix:$tag2
152+
docker tag $repo1/$namespace1/openc3-operator$suffix:$tag1 $repo2/$namespace2/openc3-operator$suffix:$tag2
131153
docker tag $repo1/$namespace1/openc3-redis$suffix:$tag1 $repo2/$namespace2/openc3-redis$suffix:$tag2
154+
docker tag $repo1/$namespace1/openc3-traefik$suffix:$tag1 $repo2/$namespace2/openc3-traefik$suffix:$tag2
132155
docker tag $repo1/$namespace1/openc3-tsdb$suffix:$tag1 $repo2/$namespace2/openc3-tsdb$suffix:$tag2
133-
docker tag $repo1/$namespace1/openc3-buckets$suffix:$tag1 $repo2/$namespace2/openc3-buckets$suffix:$tag2
134-
docker tag $repo1/$namespace1/openc3-cosmos-init$suffix:$tag1 $repo2/$namespace2/openc3-cosmos-init$suffix:$tag2
135156
set +x
157+
return 0
136158
}
137159

138160
push() {
@@ -150,27 +172,26 @@ push() {
150172
fi
151173

152174
set -x
153-
docker push $repo/$namespace/openc3-ruby$suffix:$tag
154-
docker push $repo/$namespace/openc3-node$suffix:$tag
155-
docker push $repo/$namespace/openc3-base$suffix:$tag
156-
docker push $repo/$namespace/openc3-operator$suffix:$tag
175+
docker push $repo/$namespace/openc3-buckets$suffix:$tag
157176
docker push $repo/$namespace/openc3-cosmos-cmd-tlm-api$suffix:$tag
177+
docker push $repo/$namespace/openc3-cosmos-init$suffix:$tag
158178
docker push $repo/$namespace/openc3-cosmos-script-runner-api$suffix:$tag
159-
docker push $repo/$namespace/openc3-traefik$suffix:$tag
179+
docker push $repo/$namespace/openc3-operator$suffix:$tag
160180
docker push $repo/$namespace/openc3-redis$suffix:$tag
181+
docker push $repo/$namespace/openc3-traefik$suffix:$tag
161182
docker push $repo/$namespace/openc3-tsdb$suffix:$tag
162-
docker push $repo/$namespace/openc3-buckets$suffix:$tag
163-
docker push $repo/$namespace/openc3-cosmos-init$suffix:$tag
164183
set +x
184+
return 0
165185
}
166186

167-
cleanFiles() {
187+
clean_files() {
168188
find . -type d -name "node_modules" | xargs -I {} echo "Removing {}"; rm -rf {}
169189
find . -type d -name "coverage" | xargs -I {} echo "Removing {}"; rm -rf {}
170190
# Prompt for removing pnpm-lock.yaml files
171191
find . -type f -name "pnpm-lock.yaml" | xargs -I {} rm -i {}
172192
# Prompt for removing Gemfile.lock files
173193
find . -type f -name "Gemfile.lock" | xargs -I {} rm -i {}
194+
return 0
174195
}
175196

176197
if [[ "$#" -eq 0 ]]; then
@@ -219,6 +240,27 @@ case $1 in
219240
fi
220241
echo -n $2 | shasum -a 256 | sed 's/-//'
221242
;;
243+
pull )
244+
if [[ "$2" == "--help" ]] || [[ "$2" == "-h" ]]; then
245+
echo "Usage: $0 pull REPO NAMESPACE TAG [SUFFIX]"
246+
echo ""
247+
echo "Pull all OpenC3 docker images from a registry."
248+
echo ""
249+
echo "Arguments:"
250+
echo " REPO Docker repository (e.g., docker.io)"
251+
echo " NAMESPACE Image namespace (e.g., openc3inc)"
252+
echo " TAG Image tag (e.g., latest or 5.1.0)"
253+
echo " SUFFIX Optional suffix for image names (e.g., -ubi)"
254+
echo ""
255+
echo "Example:"
256+
echo " $0 pull docker.io openc3inc 5.1.0"
257+
echo ""
258+
echo "Options:"
259+
echo " -h, --help Show this help message"
260+
exit 0
261+
fi
262+
pull_images "${@:2}"
263+
;;
222264
save )
223265
if [[ "$2" == "--help" ]] || [[ "$2" == "-h" ]]; then
224266
echo "Usage: $0 save REPO NAMESPACE TAG [SUFFIX]"
@@ -238,7 +280,7 @@ case $1 in
238280
echo " -h, --help Show this help message"
239281
exit 0
240282
fi
241-
saveTar "${@:2}"
283+
save_tar "${@:2}"
242284
;;
243285
load )
244286
if [[ "$2" == "--help" ]] || [[ "$2" == "-h" ]]; then
@@ -257,7 +299,7 @@ case $1 in
257299
echo " -h, --help Show this help message"
258300
exit 0
259301
fi
260-
loadTar "${@:2}"
302+
load_tar "${@:2}"
261303
;;
262304
tag )
263305
if [[ "$2" == "--help" ]] || [[ "$2" == "-h" ]]; then
@@ -320,7 +362,7 @@ case $1 in
320362
echo " -h, --help Show this help message"
321363
exit 0
322364
fi
323-
cleanFiles
365+
clean_files
324366
;;
325367
hostsetup )
326368
if [[ "$2" == "--help" ]] || [[ "$2" == "-h" ]]; then

scripts/windows/openc3_util.bat

Lines changed: 56 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ if "%1" == "encode" (
1515
if "%1" == "hash" (
1616
GOTO hash
1717
)
18+
if "%1" == "pull" (
19+
GOTO pull
20+
)
1821
if "%1" == "save" (
1922
GOTO save
2023
)
@@ -50,6 +53,37 @@ GOTO :EOF
5053
powershell -c "new-object System.Security.Cryptography.SHA256Managed | ForEach-Object {$_.ComputeHash([System.Text.Encoding]::UTF8.GetBytes("""%2"""))} | ForEach-Object {$_.ToString("""x2""")} | Write-Host -NoNewline"
5154
GOTO :EOF
5255

56+
:pull
57+
if "%2" == "" (
58+
@echo "Usage: pull <TAG> [REPO] [NAMESPACE]" 1>&2
59+
@echo "e.g. pull 7.0.0" 1>&2
60+
@echo "e.g. pull 7.0.0 docker.io openc3inc" 1>&2
61+
GOTO :EOF
62+
)
63+
set tag=%~2
64+
if "%3" == "" (
65+
set repo=docker.io
66+
) else (
67+
set repo=%~3
68+
)
69+
if "%4" == "" (
70+
set namespace=openc3inc
71+
) else (
72+
set namespace=%~4
73+
)
74+
75+
echo on
76+
docker pull !repo!/!namespace!/openc3-buckets:!tag! || exit /b
77+
docker pull !repo!/!namespace!/openc3-cosmos-cmd-tlm-api:!tag! || exit /b
78+
docker pull !repo!/!namespace!/openc3-cosmos-init:!tag! || exit /b
79+
docker pull !repo!/!namespace!/openc3-cosmos-script-runner-api:!tag! || exit /b
80+
docker pull !repo!/!namespace!/openc3-operator:!tag! || exit /b
81+
docker pull !repo!/!namespace!/openc3-redis:!tag! || exit /b
82+
docker pull !repo!/!namespace!/openc3-traefik:!tag! || exit /b
83+
docker pull !repo!/!namespace!/openc3-tsdb:!tag! || exit /b
84+
echo off
85+
GOTO :EOF
86+
5387
:save
5488
if "%5" == "" (
5589
set repo=%~2
@@ -58,23 +92,23 @@ GOTO :EOF
5892
if not exist tmp md tmp
5993

6094
echo on
61-
docker pull !repo!/!namespace!/openc3-operator:!tag! || exit /b
95+
docker pull !repo!/!namespace!/openc3-buckets:!tag! || exit /b
6296
docker pull !repo!/!namespace!/openc3-cosmos-cmd-tlm-api:!tag! || exit /b
97+
docker pull !repo!/!namespace!/openc3-cosmos-init:!tag! || exit /b
6398
docker pull !repo!/!namespace!/openc3-cosmos-script-runner-api:!tag! || exit /b
64-
docker pull !repo!/!namespace!/openc3-traefik:!tag! || exit /b
99+
docker pull !repo!/!namespace!/openc3-operator:!tag! || exit /b
65100
docker pull !repo!/!namespace!/openc3-redis:!tag! || exit /b
101+
docker pull !repo!/!namespace!/openc3-traefik:!tag! || exit /b
66102
docker pull !repo!/!namespace!/openc3-tsdb:!tag! || exit /b
67-
docker pull !repo!/!namespace!/openc3-buckets:!tag! || exit /b
68-
docker pull !repo!/!namespace!/openc3-cosmos-init:!tag! || exit /b
69103

70-
docker save !repo!/!namespace!/openc3-operator:!tag! -o tmp/openc3-operator-!tag!.tar || exit /b
104+
docker save !repo!/!namespace!/openc3-buckets:!tag! -o tmp/openc3-buckets-!tag!.tar || exit /b
71105
docker save !repo!/!namespace!/openc3-cosmos-cmd-tlm-api:!tag! -o tmp/openc3-cosmos-cmd-tlm-api-!tag!.tar || exit /b
106+
docker save !repo!/!namespace!/openc3-cosmos-init:!tag! -o tmp/openc3-cosmos-init-!tag!.tar || exit /b
72107
docker save !repo!/!namespace!/openc3-cosmos-script-runner-api:!tag! -o tmp/openc3-cosmos-script-runner-api-!tag!.tar || exit /b
73-
docker save !repo!/!namespace!/openc3-traefik:!tag! -o tmp/openc3-traefik-!tag!.tar || exit /b
108+
docker save !repo!/!namespace!/openc3-operator:!tag! -o tmp/openc3-operator-!tag!.tar || exit /b
74109
docker save !repo!/!namespace!/openc3-redis:!tag! -o tmp/openc3-redis-!tag!.tar || exit /b
110+
docker save !repo!/!namespace!/openc3-traefik:!tag! -o tmp/openc3-traefik-!tag!.tar || exit /b
75111
docker save !repo!/!namespace!/openc3-tsdb:!tag! -o tmp/openc3-tsdb-!tag!.tar || exit /b
76-
docker save !repo!/!namespace!/openc3-buckets:!tag! -o tmp/openc3-buckets-!tag!.tar || exit /b
77-
docker save !repo!/!namespace!/openc3-cosmos-init:!tag! -o tmp/openc3-cosmos-init-!tag!.tar || exit /b
78112
echo off
79113
) else (
80114
@echo "Usage: save <REPO> <NAMESPACE> <TAG>" 1>&2
@@ -89,14 +123,14 @@ GOTO :EOF
89123
set tag=%~2
90124
)
91125
echo on
92-
docker load -i tmp/openc3-operator-!tag!.tar || exit /b
126+
docker load -i tmp/openc3-buckets-!tag!.tar || exit /b
93127
docker load -i tmp/openc3-cosmos-cmd-tlm-api-!tag!.tar || exit /b
128+
docker load -i tmp/openc3-cosmos-init-!tag!.tar || exit /b
94129
docker load -i tmp/openc3-cosmos-script-runner-api-!tag!.tar || exit /b
95-
docker load -i tmp/openc3-traefik-!tag!.tar || exit /b
130+
docker load -i tmp/openc3-operator-!tag!.tar || exit /b
96131
docker load -i tmp/openc3-redis-!tag!.tar || exit /b
132+
docker load -i tmp/openc3-traefik-!tag!.tar || exit /b
97133
docker load -i tmp/openc3-tsdb-!tag!.tar || exit /b
98-
docker load -i tmp/openc3-buckets-!tag!.tar || exit /b
99-
docker load -i tmp/openc3-cosmos-init-!tag!.tar || exit /b
100134
echo off
101135
GOTO :EOF
102136

@@ -124,14 +158,14 @@ GOTO :EOF
124158
)
125159

126160
echo on
127-
docker tag !repo1!/!namespace1!/openc3-operator:!tag1! !repo2!/!namespace2!/openc3-operator:!tag2!
161+
docker tag !repo1!/!namespace1!/openc3-buckets:!tag1! !repo2!/!namespace2!/openc3-buckets:!tag2!
128162
docker tag !repo1!/!namespace1!/openc3-cosmos-cmd-tlm-api:!tag1! !repo2!/!namespace2!/openc3-cosmos-cmd-tlm-api:!tag2!
163+
docker tag !repo1!/!namespace1!/openc3-cosmos-init:!tag1! !repo2!/!namespace2!/openc3-cosmos-init:!tag2!
129164
docker tag !repo1!/!namespace1!/openc3-cosmos-script-runner-api:!tag1! !repo2!/!namespace2!/openc3-cosmos-script-runner-api:!tag2!
130-
docker tag !repo1!/!namespace1!/openc3-traefik:!tag1! !repo2!/!namespace2!/openc3-traefik:!tag2!
165+
docker tag !repo1!/!namespace1!/openc3-operator:!tag1! !repo2!/!namespace2!/openc3-operator:!tag2!
131166
docker tag !repo1!/!namespace1!/openc3-redis:!tag1! !repo2!/!namespace2!/openc3-redis:!tag2!
167+
docker tag !repo1!/!namespace1!/openc3-traefik:!tag1! !repo2!/!namespace2!/openc3-traefik:!tag2!
132168
docker tag !repo1!/!namespace1!/openc3-tsdb:!tag1! !repo2!/!namespace2!/openc3-tsdb:!tag2!
133-
docker tag !repo1!/!namespace1!/openc3-buckets:!tag1! !repo2!/!namespace2!/openc3-buckets:!tag2!
134-
docker tag !repo1!/!namespace1!/openc3-cosmos-init:!tag1! !repo2!/!namespace2!/openc3-cosmos-init:!tag2!
135169
echo off
136170
GOTO :EOF
137171

@@ -143,14 +177,14 @@ GOTO :EOF
143177
if not exist tmp md tmp
144178

145179
echo on
146-
docker push !repo!/!namespace!/openc3-operator:!tag!
180+
docker push !repo!/!namespace!/openc3-buckets:!tag!
147181
docker push !repo!/!namespace!/openc3-cosmos-cmd-tlm-api:!tag!
182+
docker push !repo!/!namespace!/openc3-cosmos-init:!tag!
148183
docker push !repo!/!namespace!/openc3-cosmos-script-runner-api:!tag!
149-
docker push !repo!/!namespace!/openc3-traefik:!tag!
184+
docker push !repo!/!namespace!/openc3-operator:!tag!
150185
docker push !repo!/!namespace!/openc3-redis:!tag!
186+
docker push !repo!/!namespace!/openc3-traefik:!tag!
151187
docker push !repo!/!namespace!/openc3-tsdb:!tag!
152-
docker push !repo!/!namespace!/openc3-buckets:!tag!
153-
docker push !repo!/!namespace!/openc3-cosmos-init:!tag!
154188
echo off
155189
) else (
156190
@echo "Usage: push <REPO> <NAMESPACE> <TAG>" 1>&2
@@ -199,13 +233,14 @@ GOTO :EOF
199233
GOTO :EOF
200234

201235
:usage
202-
@echo Usage: %1 [encode, hash, save, load, tag, push, zip, clean, hostsetup] 1>&2
236+
@echo Usage: %1 [encode, hash, save, load, tag, push, pull, zip, clean, hostsetup] 1>&2
203237
@echo * encode: encode a string to base64 1>&2
204238
@echo * hash: hash a string using SHA-256 1>&2
205239
@echo * save: save openc3 to tar files 1>&2
206240
@echo * load: load openc3 tar files 1>&2
207241
@echo * tag: tag images 1>&2
208242
@echo * push: push images 1>&2
243+
@echo * pull: pull images from a registry 1>&2
209244
@echo * zip: create openc3 zipfile 1>&2
210245
@echo * clean: remove node_modules, coverage, etc 1>&2
211246
@echo * hostsetup: configure host for redis 1>&2

0 commit comments

Comments
 (0)