-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathJustfile
More file actions
70 lines (52 loc) · 1.47 KB
/
Justfile
File metadata and controls
70 lines (52 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
NAME := "choose"
VERSION := "v0.1.2"
WORKDIR := justfile_directory()
GOOS := shell("go env GOOS")
GOARCH := shell("go env GOARCH")
GOARM := shell("go env GOARM")
TARGETPLATFORM := f"docker/{{GOOS}}/{{GOARCH}}/{{GOARM}}"
PROGRAM := f"{{NAME}}-{{VERSION}}-{{GOOS}}-{{GOARCH}}{{GOARM}}"
DATA := "_license"
default:
just --list --unsorted --justfile {{justfile()}}
build:
shards build
release:
shards build --release
static:
shards build --release --static
run ARGS="": build
cd src/{{NAME}} && {{WORKDIR}}/bin/{{NAME}} {{ ARGS }}
target:
mkdir -p target/{{TARGETPLATFORM}}
ln -f bin/{{NAME}} target/{{TARGETPLATFORM}}/
cp -a src/{{NAME}}/{{DATA}} target/{{TARGETPLATFORM}}/
# tree target
cd target/{{TARGETPLATFORM}}/ && ./{{NAME}} list
upload:
mkdir -p upload/{{PROGRAM}}
ln -f bin/{{NAME}} upload/{{PROGRAM}}/
cp -a src/{{NAME}}/{{DATA}} upload/{{PROGRAM}}/
# tree upload
cd upload/{{PROGRAM}}/ && ./{{NAME}} list
cd upload && just zip '-r {{PROGRAM}}.zip {{PROGRAM}}'
cd upload && just sha256sum '{{PROGRAM}}.zip >> {{PROGRAM}}.sha256sum'
upload-single:
mkdir -p upload
ln -f bin/{{NAME}} upload/{{PROGRAM}}
# tree upload
cd upload && just sha256sum '{{PROGRAM}} >> {{PROGRAM}}.sha256sum'
clean:
rm -rf target upload
[no-cd, unix]
sha256sum ARGS:
sha256sum {{ARGS}}
[no-cd, windows]
sha256sum ARGS:
C:/msys64/usr/bin/sha256sum.exe {{ARGS}}
[no-cd, unix]
zip ARGS:
zip {{ARGS}}
[no-cd, windows]
zip ARGS:
C:/msys64/usr/bin/zip.exe {{ARGS}}