diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4adea54fba..99dbd5537d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -436,7 +436,7 @@ jobs: run: | python3 -m venv venv && source venv/bin/activate \ && pip install -r requirements.txt \ - && python main.py --noninteractive --skip-compiler-install --cmake-options="-DCMAKE_C_COMPILER=clang-16 -DCMAKE_CXX_COMPILER=clang++-16 -DSTRICT_GSL_CHECKS=AUDIT -DCMAKE_EXPORT_COMPILE_COMMANDS=ON" --minifi-options="${UBUNTU_CLANG_MINIFI_OPTIONS}" + && python main.py --noninteractive --skip-compiler-install --cmake-options="-DCMAKE_C_COMPILER=clang-16 -DCMAKE_CXX_COMPILER=clang++-16 -DSTRICT_GSL_CHECKS=AUDIT -DCMAKE_EXPORT_COMPILE_COMMANDS=ON" --minifi-options="${UBUNTU_CLANG_MINIFI_OPTIONS}" --build-directory=D:/a/nifi-minifi-cpp/b working-directory: bootstrap - id: cache_save uses: actions/cache/save@v3 diff --git a/bootstrap/main.py b/bootstrap/main.py index ac7b18f095..9688964292 100644 --- a/bootstrap/main.py +++ b/bootstrap/main.py @@ -16,6 +16,7 @@ import argparse import pathlib +import os from cli import main_menu, do_one_click_build from minifi_option import parse_minifi_options @@ -33,6 +34,8 @@ help="Skips the installation of the default compiler") parser.add_argument('--noninteractive', action="store_true", default=False, help="Initiates the one click build") + parser.add_argument('--build-directory', type=str, help="The directory to build.") + args = parser.parse_args() no_confirm = args.noconfirm or args.noninteractive @@ -49,7 +52,9 @@ minifi_options = parse_minifi_options(str(path.as_posix()), cmake_options_for_parsing, package_manager, cmake_cache_dir) minifi_options.no_confirm = no_confirm minifi_options.set_cmake_override(cmake_options_for_cmake) - + if args.build_directory: + build_dir = pathlib.Path(args.build_directory) + minifi_options.build_dir = build_dir if args.noninteractive: do_one_click_build(minifi_options, package_manager) else: