Skip to content

Commit eab841e

Browse files
Update justfile
1 parent b67505c commit eab841e

File tree

2 files changed

+58
-52
lines changed

2 files changed

+58
-52
lines changed

.env.example

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@ REGISTRY_URL=https://index.docker.io/v1/
33
APP_NAME=appname
44
IMAGE=centos
55
TAG=7.8.2003
6+
CPU=3
7+
MEM=2048
8+
NS=cs50w
9+
PROF=minikube
10+
SHELL=/bin/bash
611
USER=apiuser
712
PASSWORD=apiuserpassword
813
EMAIL=thisismysingingvoice@acme.co

justfile

Lines changed: 53 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,61 +1,63 @@
1-
# https://just.systems/man/en
1+
# See https://just.systems/man/en
2+
3+
# positional args
4+
# * NOTE: unable to reuse recipe name (e.g., start/stop); prefix recipes with `@`
5+
# set positional-arguments := true
26

37
# load .env
48
set dotenv-load
59

610
# set env var
7-
export APP := `echo ${APP_NAME}`
8-
export CPU := "2"
9-
export IMAGE := `echo ${IMAGE}`
10-
export MEM := "2048"
11-
export NS := "default"
12-
export PROF := "minikube"
13-
export SHELL := "/bin/bash"
11+
export APP := `echo ${APP}`
12+
export CPU := `echo ${CPU}`
13+
export IMAGE := `echo ${IMAGE}`
14+
export MEM := `echo ${MEM}`
15+
export NS := `echo ${NS}`
16+
export PROF := `echo ${PROF}`
1417
export SCRIPT := "harden"
15-
export SHELL := "/bin/bash"
16-
export TAG := `echo ${TAG}`
17-
VERSION := `cat VERSION`
18+
export SHELL := `echo ${SHELL}`
19+
export TAG := `echo ${TAG}`
20+
export VERSION := "latest"
1821

1922
# x86_64/arm64
2023
arch := `uname -m`
2124

2225
# hostname
2326
host := `uname -n`
2427

25-
# [halp] list available commands
28+
# docker-compose / docker compose
29+
# * https://docs.docker.com/compose/install/linux/#install-using-the-repository
30+
docker-compose := if `command -v docker-compose; echo $?` == "0" {
31+
"docker-compose"
32+
} else {
33+
"docker compose"
34+
}
35+
36+
# [halp] list available commands
2637
default:
2738
just --list
2839

29-
# TODO: setup tilt
30-
# [devspace] start minikube + devspace
31-
start-devspace:
40+
# [git] update git submodules
41+
sub:
42+
git submodule update --init --recursive && git pull --recurse-submodules
43+
44+
# [minikube] start minikube + tilt
45+
start-minikube:
3246
#!/usr/bin/env bash
3347
set -euxo pipefail
34-
3548
if [[ $(minikube status -f \{\{\.Host\}\}) = 'Stopped' ]]; then
3649
minikube start --memory={{MEM}} --cpus={{CPU}} -p {{PROF}}
3750
fi
3851

39-
devspace use namespace {{NS}}
40-
devspace dev
52+
# [tilt] deploy docker image to local k8s cluster
53+
tilt-up: start-minikube
54+
tilt up
4155

42-
# [devspace] stop minikube
43-
stop-devspace:
56+
# [minikube] stop minikube
57+
stop-minikube:
4458
minikube stop -p {{PROF}}
4559

46-
# docker-compose / docker compose
47-
# * https://docs.docker.com/compose/install/linux/#install-using-the-repository
48-
docker-compose := if `command -v docker-compose; echo $?` == "0" {
49-
"docker-compose"
50-
} else {
51-
"docker compose"
52-
}
53-
54-
# [halp] list available commands
55-
default:
56-
just --list
57-
58-
# [check] lint sh script
60+
# [check] lint sh script
5961
checkbash:
6062
#!/usr/bin/env bash
6163
checkbashisms {{SCRIPT}}
@@ -66,7 +68,7 @@ checkbash:
6668
echo "No bashisms found"
6769
fi
6870

69-
# [docker] build locally or on intel box
71+
# [docker] build locally
7072
build: checkbash
7173
#!/usr/bin/env bash
7274
set -euxo pipefail
@@ -76,7 +78,11 @@ build: checkbash
7678
docker build -f Dockerfile --progress=plain -t {{APP}} .
7779
fi
7880

79-
# [docker] arm build w/docker-compose defaults
81+
# [docker] intel build
82+
buildx: checkbash
83+
docker buildx build -f Dockerfile --progress=plain -t ${TAG} --build-arg CHIPSET_ARCH=x86_64-linux-gnu --load .
84+
85+
# [docker] arm build w/docker-compose defaults
8086
build-clean: checkbash
8187
#!/usr/bin/env bash
8288
set -euxo pipefail
@@ -86,7 +92,7 @@ build-clean: checkbash
8692
{{docker-compose}} build --pull --no-cache --parallel
8793
fi
8894

89-
# [docker] login to registry (exit code 127 == 0)
95+
# [docker] login to registry (exit code 127 == 0)
9096
login:
9197
#!/usr/bin/env bash
9298
# set -euxo pipefail
@@ -97,24 +103,24 @@ login:
97103
exit 1
98104
fi
99105

100-
# [docker] tag image as latest
106+
# [docker] tag image as latest
101107
tag-latest:
102108
docker tag {{APP}}:latest {{IMAGE}}/{{APP}}:latest
103109

104-
# [docker] tag latest image from VERSION file
110+
# [docker] tag latest image from VERSION file
105111
tag-version:
106112
@echo "create tag {{APP}}:{{VERSION}} {{IMAGE}}/{{APP}}:{{VERSION}}"
107113
docker tag {{APP}} {{IMAGE}}/{{APP}}:{{VERSION}}
108114

109-
# [docker] push latest image
115+
# [docker] push latest image
110116
push: login
111117
docker push {{IMAGE}}/{{APP}}:{{TAG}}
112118

113-
# [docker] pull latest image
119+
# [docker] pull latest image
114120
pull: login
115121
docker pull {{IMAGE}}/{{APP}}
116122

117-
# [docker] run container
123+
# [docker] run container
118124
run: build
119125
#!/usr/bin/env bash
120126
# set -euxo pipefail
@@ -123,30 +129,25 @@ run: build
123129
--env-file .env \
124130
--entrypoint={{SHELL}} \
125131
-h ${HOST:-localhost} \
126-
-v $(pwd)/conf:/etc/duoauthproxy \
127-
-p ${PORT:-1812}:${PORT:-1812/udp} \
128-
-p ${PORT2:-18120}:${PORT2:-18120/udp} \
129-
--cap-drop=all \
130-
--cap-add=setgid \
131-
--cap-add=setuid \
132+
-v $(pwd)/app:/app \
132133
{{APP}}
133134

134-
# [docker] start docker-compose container
135+
# [docker] start docker-compose container
135136
up: build
136137
{{docker-compose}} up -d
137138

138-
# [docker] get running container logs
139+
# [docker] get running container logs
139140
logs:
140141
{{docker-compose}} logs -tf --tail="50" {{APP}}
141142

142-
# [docker] ssh into container
143+
# [docker] ssh into container
143144
exec:
144145
docker exec -it {{APP}} {{SHELL}}
145146

146-
# [docker] stop docker-compose container
147+
# [docker] stop docker-compose container
147148
stop:
148149
{{docker-compose}} stop
149150

150-
# [docker] remove docker-compose container(s) and networks
151+
# [docker] remove docker-compose container(s) and networks
151152
down: stop
152153
{{docker-compose}} down --remove-orphans

0 commit comments

Comments
 (0)