Skip to content

Commit 99e261c

Browse files
committed
feat: Refactor make tasks for reduced redundancy
1 parent ef69669 commit 99e261c

2 files changed

Lines changed: 92 additions & 6 deletions

File tree

.env

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
VERSION=1.0.4
22
REGISTRY=ghcr.io
33
REGISTRY_ORNL=savannah.ornl.gov/research-enablement
4+
HARBOR_PROJECT=env
45
GITHUB_ACTOR=jhwohlgemuth

Makefile

Lines changed: 91 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,27 @@ include .env
44
include .env.secret
55

66
prepare: convert lint check update-mamba-version
7-
images: prepare terminal-image notebook-image agentic-image gold-image
8-
push-all: push-terminal push-notebook push-agentic push-gold
7+
images: prepare
8+
@for image in $(IMAGES) ; do \
9+
$(MAKE) --no-print-directory $$image-image; \
10+
done
11+
images-ornl: prepare
12+
@for image in $(IMAGES) ; do \
13+
$(MAKE) --no-print-directory $$image-image-ornl; \
14+
done
15+
push-all:
16+
@for image in $(IMAGES) ; do \
17+
$(MAKE) IMAGE=$$image --no-print-directory push-image; \
18+
done
19+
push-all-ornl:
20+
@for image in $(IMAGES) ; do \
21+
$(MAKE) \
22+
IMAGE=$$image \
23+
BUILD_REGISTRY=${REGISTRY_ORNL} \
24+
BUILD_PROJECT=${HARBOR_PROJECT} \
25+
--no-print-directory \
26+
push-image; \
27+
done
928
changelog:
1029
@git-cliff --output CHANGELOG.md --github-token ${GITHUB_TOKEN}
1130
update-mamba-version:
@@ -49,6 +68,36 @@ notebook-image:
4968
@$(MAKE) IMAGE=notebook --no-print-directory build-image
5069
agentic-image:
5170
@$(MAKE) IMAGE=agentic DOCKER_BUILD_SECRETS="--secret id=HF_API_TOKEN,env=HF_API_TOKEN" --no-print-directory build-image
71+
gold-image-ornl:
72+
@$(MAKE) \
73+
IMAGE=gold \
74+
DOCKERFILE=./Dockerfile \
75+
BUILD_REGISTRY=${REGISTRY_ORNL} \
76+
BUILD_PROJECT=${HARBOR_PROJECT} \
77+
--no-print-directory \
78+
build-image
79+
terminal-image-ornl:
80+
@$(MAKE) \
81+
IMAGE=terminal \
82+
BUILD_REGISTRY=${REGISTRY_ORNL} \
83+
BUILD_PROJECT=${HARBOR_PROJECT} \
84+
--no-print-directory \
85+
build-image
86+
notebook-image-ornl:
87+
@$(MAKE) \
88+
IMAGE=notebook \
89+
BUILD_REGISTRY=${REGISTRY_ORNL} \
90+
BUILD_PROJECT=${HARBOR_PROJECT} \
91+
--no-print-directory \
92+
build-image
93+
agentic-image-ornl:
94+
@$(MAKE) \
95+
IMAGE=agentic \
96+
DOCKER_BUILD_SECRETS="--secret id=HF_API_TOKEN,env=HF_API_TOKEN" \
97+
BUILD_REGISTRY=${REGISTRY_ORNL} \
98+
BUILD_PROJECT=${HARBOR_PROJECT} \
99+
--no-print-directory \
100+
build-image
52101
#
53102
# Push tasks
54103
#
@@ -60,23 +109,53 @@ push-notebook:
60109
@$(MAKE) IMAGE=notebook --no-print-directory push-image
61110
push-agentic:
62111
@$(MAKE) IMAGE=agentic --no-print-directory push-image
112+
push-gold-ornl:
113+
@$(MAKE) \
114+
IMAGE=gold \
115+
BUILD_REGISTRY=${REGISTRY_ORNL} \
116+
BUILD_PROJECT=${HARBOR_PROJECT} \
117+
--no-print-directory \
118+
push-image
119+
push-terminal-ornl:
120+
@$(MAKE) \
121+
IMAGE=terminal \
122+
BUILD_REGISTRY=${REGISTRY_ORNL} \
123+
BUILD_PROJECT=${HARBOR_PROJECT} \
124+
--no-print-directory \
125+
push-image
126+
push-notebook-ornl:
127+
@$(MAKE) \
128+
IMAGE=notebook \
129+
BUILD_REGISTRY=${REGISTRY_ORNL} \
130+
BUILD_PROJECT=${HARBOR_PROJECT} \
131+
--no-print-directory \
132+
push-image
133+
push-agentic-ornl:
134+
@$(MAKE) \
135+
IMAGE=agentic \
136+
BUILD_REGISTRY=${REGISTRY_ORNL} \
137+
BUILD_PROJECT=${HARBOR_PROJECT} \
138+
--no-print-directory \
139+
push-image
63140
#
64141
# Parameterized tasks
65142
#
66143
DOCKERFILE ?= ./Dockerfile.${IMAGE}
67144
DOCKER_BUILD_SECRETS ?=
145+
BUILD_REGISTRY ?= ${REGISTRY}
146+
BUILD_PROJECT ?= ${GITHUB_ACTOR}
68147
build-image:
69148
@HF_API_TOKEN="$(HF_API_TOKEN)" docker build \
70149
--no-cache \
71150
--build-arg VERSION=$(VERSION) \
72151
--file ${DOCKERFILE} \
73152
${DOCKER_BUILD_SECRETS} \
74-
--tag ${REGISTRY}/${GITHUB_ACTOR}/${IMAGE}:$(VERSION) \
153+
--tag ${BUILD_REGISTRY}/${BUILD_PROJECT}/${IMAGE}:$(VERSION) \
75154
.
76-
@docker tag ${REGISTRY}/${GITHUB_ACTOR}/${IMAGE}:$(VERSION) ${REGISTRY}/${GITHUB_ACTOR}/${IMAGE}:latest
155+
@docker tag ${BUILD_REGISTRY}/${BUILD_PROJECT}/${IMAGE}:$(VERSION) ${BUILD_REGISTRY}/${BUILD_PROJECT}/${IMAGE}:latest
77156
push-image:
78-
@docker push "${REGISTRY}/${GITHUB_ACTOR}/${IMAGE}:${VERSION}"
79-
@docker push "${REGISTRY}/${GITHUB_ACTOR}/${IMAGE}"
157+
@docker push "${BUILD_REGISTRY}/${BUILD_PROJECT}/${IMAGE}:${VERSION}"
158+
@docker push "${BUILD_REGISTRY}/${BUILD_PROJECT}/${IMAGE}"
80159
#
81160
# Build variables
82161
#
@@ -115,6 +194,7 @@ SCRIPTS = \
115194
TARGETS = \
116195
prepare \
117196
images \
197+
images-ornl \
118198
push-all \
119199
changelog \
120200
check \
@@ -125,6 +205,11 @@ TARGETS = \
125205
gold-image \
126206
terminal-image \
127207
notebook-image \
208+
agentic-image \
209+
gold-image-ornl \
210+
terminal-image-ornl \
211+
notebook-image-ornl \
212+
agentic-image-ornl \
128213
push-gold \
129214
push-terminal \
130215
push-notebook \

0 commit comments

Comments
 (0)