Skip to content

Commit 9673b3f

Browse files
authored
Package update + more docs on dev setup (#500)
* Add more docs to be able to run tests properly * Pull out os.getenv from method call * Add highpri test case + fixtures/mocks for coverage * Remove README update
1 parent 10d84ca commit 9673b3f

File tree

6 files changed

+131
-81
lines changed

6 files changed

+131
-81
lines changed

model-engine/model_engine_server/infra/services/live_endpoint_builder_service.py

+6-10
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@
7878
ECR_AWS_PROFILE: str = os.getenv("ECR_READ_AWS_PROFILE", "default") # type: ignore
7979
GIT_TAG: str = os.getenv("GIT_TAG") # type: ignore
8080
ENV: str = os.getenv("DD_ENV") # type: ignore
81+
WORKSPACE_PATH = os.getenv("WORKSPACE", ".")
8182

8283
INITIAL_K8S_CACHE_TTL_SECONDS: int = 60
8384
MAX_IMAGE_TAG_LEN = 128
@@ -494,15 +495,14 @@ def get_base_image_params(
494495

495496
# The context should be whatever WORKDIR is in the container running the build app itself.
496497
inference_folder = "model-engine/model_engine_server/inference"
497-
base_path: str = os.getenv("WORKSPACE") # type: ignore
498498

499499
logger_adapter.info(f"inference_folder: {inference_folder}")
500500
logger_adapter.info(f"dockerfile: {inference_folder}/{dockerfile}")
501501
return BuildImageRequest(
502502
repo=hmi_config.user_inference_base_repository,
503503
image_tag=resulting_image_tag[:MAX_IMAGE_TAG_LEN],
504504
aws_profile=ECR_AWS_PROFILE, # type: ignore
505-
base_path=base_path,
505+
base_path=WORKSPACE_PATH,
506506
dockerfile=f"{inference_folder}/{dockerfile}",
507507
base_image=base_image,
508508
requirements_folder=None,
@@ -557,9 +557,7 @@ def _get_user_image_params(
557557

558558
# The context should be whatever WORKDIR is in the container running the build app itself.
559559
inference_folder = "model-engine/model_engine_server/inference"
560-
base_path: str = os.getenv("WORKSPACE") # type: ignore
561-
562-
requirements_folder = os.path.join(base_path, f"requirements_{requirements_hash}")
560+
requirements_folder = os.path.join(WORKSPACE_PATH, f"requirements_{requirements_hash}")
563561
try:
564562
os.mkdir(requirements_folder)
565563
except FileExistsError:
@@ -577,7 +575,7 @@ def _get_user_image_params(
577575
repo=ecr_repo,
578576
image_tag=service_image_tag[:MAX_IMAGE_TAG_LEN],
579577
aws_profile=ECR_AWS_PROFILE,
580-
base_path=base_path,
578+
base_path=WORKSPACE_PATH,
581579
dockerfile=f"{inference_folder}/{dockerfile}",
582580
base_image=base_image,
583581
requirements_folder=requirements_folder,
@@ -609,9 +607,7 @@ def _get_inject_bundle_image_params(
609607
# The context should be whatever WORKDIR is in the container running the build app itself.
610608
dockerfile = "inject_bundle.Dockerfile"
611609
inference_folder = "model-engine/model_engine_server/inference"
612-
base_path: str = os.getenv("WORKSPACE") # type: ignore
613-
614-
bundle_folder = os.path.join(base_path, f"bundle_{service_image_hash}")
610+
bundle_folder = os.path.join(WORKSPACE_PATH, f"bundle_{service_image_hash}")
615611
try:
616612
os.mkdir(bundle_folder)
617613
except FileExistsError:
@@ -635,7 +631,7 @@ def _get_inject_bundle_image_params(
635631
repo=ecr_repo,
636632
image_tag=service_image_tag[:MAX_IMAGE_TAG_LEN],
637633
aws_profile=ECR_AWS_PROFILE,
638-
base_path=base_path,
634+
base_path=WORKSPACE_PATH,
639635
dockerfile=f"{inference_folder}/{dockerfile}",
640636
base_image=base_image,
641637
requirements_folder=bundle_folder,

model-engine/requirements.in

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ azure-storage-blob~=12.19.0
1212
boto3-stubs[essential]~=1.26.67
1313
boto3~=1.21
1414
botocore~=1.24
15-
build==0.8.0
15+
build~=1.0.3
1616
celery[redis,sqs,tblib]~=5.3.6
1717
click~=8.1
1818
cloudpickle==2.1.0
@@ -37,7 +37,7 @@ protobuf~=3.20
3737
psycopg2-binary==2.9.3
3838
py-xid==0.3.0
3939
pycurl~=7.44 # For celery[sqs]
40-
pydantic~=1.10.11
40+
pydantic==1.10.14
4141
python-multipart~=0.0.7
4242
quart==0.18.3
4343
requests-auth-aws-sigv4~=0.7

0 commit comments

Comments
 (0)