Skip to content

Commit f96056d

Browse files
committed
fix: Local env deployment
1 parent 0b0e1c2 commit f96056d

4 files changed

Lines changed: 27 additions & 17 deletions

File tree

deploy/charts_values/values-app-dev.yaml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,51 +5,60 @@
55
observability:
66
flask_debug: "true"
77
image:
8-
repository: "datakitchen"
8+
repository: ""
99
tag: "latest"
1010

1111
observability_ui:
1212
enable: true
1313
image:
14+
name: "observability-ui"
1415
pullPolicy: Never
1516

1617
observability_api:
1718
image:
19+
name: "observability-be"
1820
pullPolicy: Never
1921
service:
2022
type: NodePort
2123
nodePort: 5000
2224

2325
event_api:
2426
image:
27+
name: "observability-be"
2528
pullPolicy: Never
2629
service:
2730
type: NodePort
2831
nodePort: 5001
2932

3033
agent_api:
3134
image:
35+
name: "observability-be"
3236
pullPolicy: Never
3337
service:
3438
type: NodePort
3539
nodePort: 5003
3640

3741
event_store:
3842
image:
43+
name: "observability-be"
3944
pullPolicy: Never
4045

4146
run_manager:
4247
image:
48+
name: "observability-be"
4349
pullPolicy: Never
4450

4551
rules_engine:
4652
image:
53+
name: "observability-be"
4754
pullPolicy: Never
4855

4956
scheduler:
5057
image:
58+
name: "observability-be"
5159
pullPolicy: Never
5260

5361
cli_hook:
5462
image:
63+
name: "observability-be"
5564
pullPolicy: Never

deploy/docker/observability-be.dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ RUN python3 -O -m pip install /tmp/dk --prefix=/dk
2121

2222
# Copy and build the actual application
2323
COPY . /tmp/dk/
24-
ENV PYTHONPATH ${PYTHONPATH}:/dk/lib/python3.12/site-packages
24+
ENV PYTHONPATH=/dk/lib/python3.12/site-packages
2525
# --no-deps: The previous pip layer will have already installed the dependencies. This
2626
# will disable doing a second dependency resolution check.
2727
# -O: Strips asserts from the code which removes some unnecessary codepaths resulting in a small
@@ -46,8 +46,8 @@ COPY --from=build-image \
4646

4747
COPY --from=build-image /tmp/dk/deploy/migrations/ /dk/lib/migrations/
4848

49-
ENV PYTHONPATH ${PYTHONPATH}:/dk/lib/python3.12/site-packages
50-
ENV PATH ${PATH}:/dk/bin
49+
ENV PYTHONPATH=/dk/lib/python3.12/site-packages
50+
ENV PATH=${PATH}:/dk/bin
5151

5252
RUN addgroup -S observability && adduser -S observability -G observability
5353

deploy/docker/observability-ui.dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ FROM ${BASE_IMAGE_URL}nginxinc/nginx-unprivileged:alpine3.22
1212

1313
WORKDIR /observability_ui
1414

15-
ENV OBSERVABILITY_API_HOSTNAME=
16-
ENV OBSERVABILITY_CSP_EXTRA=
15+
ENV OBSERVABILITY_API_HOSTNAME=""
16+
ENV OBSERVABILITY_CSP_EXTRA=""
1717
ENV NGINX_ENVSUBST_OUTPUT_DIR=/etc/nginx
1818

1919
COPY --from=build-image --chown=nginx:nginx /observability_ui/dist /observability_ui

scripts/invocations/deploy.py

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030

3131
from scripts.invocations.common import MINIKUBE_PROFILE, check_env_tools, get_docker_env, get_host_env
3232

33-
KUBE_VERSION = os.environ.get("INVOKE_KUBE_VERSION", "v1.25.7")
33+
KUBE_VERSION = os.environ.get("INVOKE_KUBE_VERSION", "v1.29")
3434
NAMESPACE = "datakitchen"
3535
HELM_SVC_FOLDER = os.path.join("deploy", "charts", "observability-services")
3636
HELM_APP_FOLDER = os.path.join("deploy", "charts", "observability-app")
@@ -273,7 +273,7 @@ def helm_services(ctx, upgrade=False, template=False, atomic=False, timeout=None
273273
("backend", "Builds only the Observability backend image"),
274274
("ui", "Builds only the Observability UI image"),
275275
("base-image-url", "Base image prefix. Useful to enable a dependency proxy"),
276-
("local", "Use the local docker instead of minikube's."),
276+
("load", "Loads the image into the current minikube profile."),
277277
)
278278
),
279279
)
@@ -284,7 +284,7 @@ def build(
284284
tag="latest",
285285
no_cache=False,
286286
base_image_url=None,
287-
local=False,
287+
load=False,
288288
):
289289
"""
290290
Build Observability's images inside the minikube instance.
@@ -296,9 +296,6 @@ def build(
296296
backend = True
297297
ui = True
298298

299-
# "minikube image build" support for build-arg is clunky, using the docker CLI instead
300-
env = {} if local else get_docker_env(ctx)
301-
302299
args_str = ""
303300
if no_cache:
304301
args_str += "--no-cache "
@@ -307,17 +304,21 @@ def build(
307304
args_str += f"--build-arg BASE_IMAGE_URL={base_image_url} "
308305

309306
if backend:
307+
be_tag = f"observability-be:{tag}"
310308
ctx.run(
311309
f"docker build . {args_str} --build-arg tag={tag} "
312-
f"-t 'observability-be:{tag}' -f ./deploy/docker/observability-be.dockerfile",
313-
env=env,
310+
f"-t '{be_tag}' -f ./deploy/docker/observability-be.dockerfile",
314311
)
312+
if load:
313+
ctx.run(f"minikube image load --daemon {be_tag}", echo=True)
315314

316315
if ui:
316+
ui_tag = f"observability-ui:{tag}"
317317
ctx.run(
318-
f"docker build . {args_str} " f"-t 'observability-ui:{tag}' -f ./deploy/docker/observability-ui.dockerfile",
319-
env=env,
318+
f"docker build . {args_str} " f"-t '{ui_tag}' -f ./deploy/docker/observability-ui.dockerfile",
320319
)
320+
if load:
321+
ctx.run(f"minikube image load --daemon {ui_tag}", echo=True)
321322

322323

323324
@task(
@@ -419,7 +420,7 @@ def local(ctx, values="", driver=None, memory=None, cpus=None, base_image_url=""
419420
Required tools: docker, helm, minikube
420421
"""
421422
minikube(ctx, driver=driver, memory=memory, cpus=cpus)
422-
build(ctx, base_image_url=base_image_url)
423+
build(ctx, base_image_url=base_image_url, load=True)
423424
helm_build(ctx)
424425
helm_services(ctx, timeout="10m")
425426
helm_app(ctx, timeout="10m")

0 commit comments

Comments
 (0)