mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-06-28 02:53:30 +00:00
fix: #2495 FileNotFound Err in container image
Changes: - Delay the `COPY run.yaml` into docker image step until after external provider handling - Split the check for `external_providers_dir` into “non-empty” and “directory exists"
This commit is contained in:
parent
929ac618ce
commit
c39f24fa12
1 changed files with 9 additions and 4 deletions
|
@ -163,9 +163,6 @@ EOF
|
||||||
if [ -n "$run_config" ]; then
|
if [ -n "$run_config" ]; then
|
||||||
# Copy the run config to the build context since it's an absolute path
|
# Copy the run config to the build context since it's an absolute path
|
||||||
cp "$run_config" "$BUILD_CONTEXT_DIR/run.yaml"
|
cp "$run_config" "$BUILD_CONTEXT_DIR/run.yaml"
|
||||||
add_to_container << EOF
|
|
||||||
COPY run.yaml $RUN_CONFIG_PATH
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# Parse the run.yaml configuration to identify external provider directories
|
# Parse the run.yaml configuration to identify external provider directories
|
||||||
# If external providers are specified, copy their directory to the container
|
# If external providers are specified, copy their directory to the container
|
||||||
|
@ -173,12 +170,15 @@ EOF
|
||||||
python_cmd=$(get_python_cmd)
|
python_cmd=$(get_python_cmd)
|
||||||
external_providers_dir=$($python_cmd -c "import yaml; config = yaml.safe_load(open('$run_config')); print(config.get('external_providers_dir') or '')")
|
external_providers_dir=$($python_cmd -c "import yaml; config = yaml.safe_load(open('$run_config')); print(config.get('external_providers_dir') or '')")
|
||||||
external_providers_dir=$(eval echo "$external_providers_dir")
|
external_providers_dir=$(eval echo "$external_providers_dir")
|
||||||
if [ -n "$external_providers_dir" ] && [ -d "$external_providers_dir" ]; then
|
if [ -n "$external_providers_dir" ]; then
|
||||||
|
if [ -d "$external_providers_dir" ]; then
|
||||||
echo "Copying external providers directory: $external_providers_dir"
|
echo "Copying external providers directory: $external_providers_dir"
|
||||||
cp -r "$external_providers_dir" "$BUILD_CONTEXT_DIR/providers.d"
|
cp -r "$external_providers_dir" "$BUILD_CONTEXT_DIR/providers.d"
|
||||||
add_to_container << EOF
|
add_to_container << EOF
|
||||||
COPY providers.d /.llama/providers.d
|
COPY providers.d /.llama/providers.d
|
||||||
EOF
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
# Edit the run.yaml file to change the external_providers_dir to /.llama/providers.d
|
# Edit the run.yaml file to change the external_providers_dir to /.llama/providers.d
|
||||||
if [ "$(uname)" = "Darwin" ]; then
|
if [ "$(uname)" = "Darwin" ]; then
|
||||||
sed -i.bak -e 's|external_providers_dir:.*|external_providers_dir: /.llama/providers.d|' "$BUILD_CONTEXT_DIR/run.yaml"
|
sed -i.bak -e 's|external_providers_dir:.*|external_providers_dir: /.llama/providers.d|' "$BUILD_CONTEXT_DIR/run.yaml"
|
||||||
|
@ -187,6 +187,11 @@ EOF
|
||||||
sed -i 's|external_providers_dir:.*|external_providers_dir: /.llama/providers.d|' "$BUILD_CONTEXT_DIR/run.yaml"
|
sed -i 's|external_providers_dir:.*|external_providers_dir: /.llama/providers.d|' "$BUILD_CONTEXT_DIR/run.yaml"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Copy run config into docker image
|
||||||
|
add_to_container << EOF
|
||||||
|
COPY run.yaml $RUN_CONFIG_PATH
|
||||||
|
EOF
|
||||||
fi
|
fi
|
||||||
|
|
||||||
stack_mount="/app/llama-stack-source"
|
stack_mount="/app/llama-stack-source"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue