diff --git a/llama_toolchain/cli/stack/build.py b/llama_toolchain/cli/stack/build.py index 48df4908f..4de578836 100644 --- a/llama_toolchain/cli/stack/build.py +++ b/llama_toolchain/cli/stack/build.py @@ -8,8 +8,13 @@ import argparse from llama_toolchain.cli.subcommand import Subcommand from llama_toolchain.core.datatypes import * # noqa: F403 +import json +import os + import yaml from llama_toolchain.common.config_dirs import DISTRIBS_BASE_DIR +from llama_toolchain.common.serialize import EnumEncoder +from termcolor import cprint def parse_api_provider_tuples( diff --git a/llama_toolchain/cli/stack/run.py b/llama_toolchain/cli/stack/run.py index 1568ed820..8a195a3f3 100644 --- a/llama_toolchain/cli/stack/run.py +++ b/llama_toolchain/cli/stack/run.py @@ -32,7 +32,7 @@ class StackRun(Subcommand): from llama_toolchain.core.package import BuildType self.parser.add_argument( - "distribution", + "--distribution", type=str, help="Distribution whose build you want to start", ) @@ -40,7 +40,6 @@ class StackRun(Subcommand): "--name", type=str, help="Name of the build you want to start", - required=True, ) self.parser.add_argument( "--type", @@ -60,14 +59,22 @@ class StackRun(Subcommand): help="Disable IPv6 support", default=False, ) + self.parser.add_argument( + "--run-config", + type=str, + help="Path to config file to use for the run", + ) def _run_stack_run_cmd(self, args: argparse.Namespace) -> None: from llama_toolchain.common.exec import run_with_pty from llama_toolchain.core.package import BuildType - build_type = BuildType(args.type) - build_dir = BUILDS_BASE_DIR / args.distribution / build_type.descriptor() - path = build_dir / f"{args.name}.yaml" + if args.run_config: + path = args.run_config + else: + build_type = BuildType(args.type) + build_dir = BUILDS_BASE_DIR / args.distribution / build_type.descriptor() + path = build_dir / f"{args.name}.yaml" config_file = Path(path) diff --git a/llama_toolchain/core/build_conda_env.sh b/llama_toolchain/core/build_conda_env.sh index e5b1ca539..866ca3b94 100755 --- a/llama_toolchain/core/build_conda_env.sh +++ b/llama_toolchain/core/build_conda_env.sh @@ -117,4 +117,4 @@ ensure_conda_env_python310 "$env_name" "$pip_dependencies" printf "${GREEN}Successfully setup conda environment. Configuring build...${NC}\n" -$CONDA_PREFIX/bin/python3 -m llama_toolchain.cli.llama stack configure $distribution_type --name "$build_name" --type conda_env +$CONDA_PREFIX/bin/python3 -m llama_toolchain.cli.llama stack configure --distribution $distribution_type --name "$build_name" --package-type conda_env diff --git a/llama_toolchain/core/build_container.sh b/llama_toolchain/core/build_container.sh index e5349cd08..620bd719f 100755 --- a/llama_toolchain/core/build_container.sh +++ b/llama_toolchain/core/build_container.sh @@ -110,4 +110,4 @@ set +x printf "${GREEN}Succesfully setup Podman image. Configuring build...${NC}" echo "You can run it with: podman run -p 8000:8000 $image_name" -$CONDA_PREFIX/bin/python3 -m llama_toolchain.cli.llama stack configure $distribution_type --name "$build_name" --type container +$CONDA_PREFIX/bin/python3 -m llama_toolchain.cli.llama stack configure --distribution $distribution_type --name "$build_name" --package-type container