############################## # THIS FILE IS AUTOGENERATED # # DO NOT MANUALLY EDIT # ############################## name: OpenVMM PR on: workflow_dispatch: inputs: verbose: description: Run with verbose output default: false required: false type: boolean pull_request: branches: - main - release/* types: - opened - synchronize - reopened - ready_for_review concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: job0: name: quick check [fmt, clippy x64-linux] runs-on: - self-hosted - 1ES.Pool=openvmm-gh-amd-westus3 - 1ES.ImageOverride=ubuntu2404-amd64 - JobId=job0-${{ github.run_id }}-${{ github.run_number }}-${{ github.run_attempt }} permissions: contents: read id-token: write if: github.event.pull_request.draft == false steps: - run: | set -x i=0; while [ $i -lt 5 ] && ! sudo apt-get update; do let "i=i+1"; sleep 1; done; sudo apt-get -o DPkg::Lock::Timeout=60 install gcc -y curl --fail --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain=1.95.0 -y . "$HOME/.cargo/env" echo "$HOME/.cargo/bin" >> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite "$OutDirNormal/flowey" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey pipeline github --runtime $ESCAPED_AGENT_TEMPDIR/bootstrapped-flowey/pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey echo '"debug"' | flowey v 0 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 0 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 0 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 0 flowey_lib_common::git_checkout 0 flowey v 0 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey v 0 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 0 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 1 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 1 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 1 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: check if openvmm needs to be cloned run: |- flowey.exe e 1 flowey_lib_common::git_checkout 0 flowey.exe v 1 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey.exe v 1 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey.exe v 1 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 10 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 10 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 10 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-openhcl-igvm" echo "$AgentTempDirNormal/publish_artifacts/aarch64-openhcl-igvm" | flowey v 10 'artifact_publish_from_aarch64-openhcl-igvm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-openhcl-igvm-devkern" echo "$AgentTempDirNormal/publish_artifacts/aarch64-openhcl-igvm-devkern" | flowey v 10 'artifact_publish_from_aarch64-openhcl-igvm-devkern' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-openhcl-igvm-devkern-extras" echo "$AgentTempDirNormal/publish_artifacts/aarch64-openhcl-igvm-devkern-extras" | flowey v 10 'artifact_publish_from_aarch64-openhcl-igvm-devkern-extras' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-openhcl-igvm-extras" echo "$AgentTempDirNormal/publish_artifacts/aarch64-openhcl-igvm-extras" | flowey v 10 'artifact_publish_from_aarch64-openhcl-igvm-extras' --is-raw-string update shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 10 flowey_lib_common::git_checkout 0 flowey v 10 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar3 flowey v 10 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 10 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 11 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 11 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 11 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: add default cargo home to path run: flowey e 11 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey e 11 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey e 11 flowey_lib_common::install_rust 2 flowey e 11 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 11 flowey_lib_common::git_checkout 0 flowey v 11 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar2 flowey v 11 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar2 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 11 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 12 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 12 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 12 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-cvm" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-cvm" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-cvm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-cvm-extras" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-cvm-extras" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-cvm-extras' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-devkern" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-devkern" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-devkern' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-devkern-extras" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-devkern-extras" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-devkern-extras' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-extras' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-test-linux-direct" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-test-linux-direct" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-test-linux-direct' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-test-linux-direct-devkern" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-test-linux-direct-devkern" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-test-linux-direct-devkern' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-test-linux-direct-devkern-extras" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-test-linux-direct-devkern-extras" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-test-linux-direct-devkern-extras' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-test-linux-direct-extras" echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-test-linux-direct-extras" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-test-linux-direct-extras' --is-raw-string update shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 12 flowey_lib_common::git_checkout 0 flowey v 12 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar3 flowey v 12 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 12 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 13 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 13 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: add default cargo home to path run: flowey e 13 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey e 13 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey e 13 flowey_lib_common::install_rust 2 flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 13 flowey_lib_common::git_checkout 0 flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar2 flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar2 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 13 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 14 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 14 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm" echo "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm" | flowey v 14 'artifact_publish_from_x64-mi-secure-openhcl-igvm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-cvm" echo "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-cvm" | flowey v 14 'artifact_publish_from_x64-mi-secure-openhcl-igvm-cvm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-cvm-extras" echo "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-cvm-extras" | flowey v 14 'artifact_publish_from_x64-mi-secure-openhcl-igvm-cvm-extras' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-extras" echo "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-extras" | flowey v 14 'artifact_publish_from_x64-mi-secure-openhcl-igvm-extras' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-test-linux-direct" echo "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-test-linux-direct" | flowey v 14 'artifact_publish_from_x64-mi-secure-openhcl-igvm-test-linux-direct' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-test-linux-direct-extras" echo "$AgentTempDirNormal/publish_artifacts/x64-mi-secure-openhcl-igvm-test-linux-direct-extras" | flowey v 14 'artifact_publish_from_x64-mi-secure-openhcl-igvm-test-linux-direct-extras' --is-raw-string update shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 14 flowey_lib_common::git_checkout 0 flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar3 flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 14 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 15 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 15 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 15 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: add default cargo home to path run: flowey.exe e 15 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey.exe e 15 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey.exe e 15 flowey_lib_common::install_rust 2 flowey.exe e 15 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey.exe e 15 flowey_lib_common::git_checkout 0 flowey.exe v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar8 flowey.exe v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar8 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey.exe v 15 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 16 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 16 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: add default cargo home to path run: flowey e 16 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey e 16 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey e 16 flowey_lib_common::install_rust 2 flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: checking if packages need to be installed run: flowey e 16 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages run: flowey e 16 flowey_lib_common::install_dist_pkg 1 shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 16 flowey_lib_common::git_checkout 0 flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar10 flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar10 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 16 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 17 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 17 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 17 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: add default cargo home to path run: flowey e 17 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey e 17 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey e 17 flowey_lib_common::install_rust 2 flowey e 17 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 17 flowey_lib_common::git_checkout 0 flowey v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar11 flowey v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar11 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 17 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/aarch64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 18 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: add default cargo home to path run: flowey.exe e 18 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey.exe e 18 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey.exe e 18 flowey_lib_common::install_rust 2 flowey.exe e 18 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey.exe e 18 flowey_lib_common::git_checkout 0 flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar8 flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar8 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target aarch64-unknown-linux-gnu --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/aarch64-unknown-linux-gnu/flowey-ci/flowey_hvlite "$OutDirNormal/flowey" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey pipeline github --runtime $ESCAPED_AGENT_TEMPDIR/bootstrapped-flowey/pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey echo '"debug"' | flowey v 19 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 19 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 19 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: add default cargo home to path run: flowey e 19 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey e 19 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey e 19 flowey_lib_common::install_rust 2 flowey e 19 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: checking if packages need to be installed run: flowey e 19 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages run: flowey e 19 flowey_lib_common::install_dist_pkg 1 shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 19 flowey_lib_common::git_checkout 0 flowey v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar10 flowey v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar10 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 19 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 2 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 2 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 2 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-pipette" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-pipette" | flowey.exe v 2 'artifact_publish_from_aarch64-windows-pipette' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-pipette" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-pipette" | flowey.exe v 2 'artifact_publish_from_x64-windows-pipette' --is-raw-string update shell: bash - name: add default cargo home to path run: flowey.exe e 2 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey.exe e 2 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey.exe e 2 flowey_lib_common::install_rust 2 flowey.exe e 2 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey.exe e 2 flowey_lib_common::git_checkout 0 flowey.exe v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey.exe v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey.exe v 2 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target aarch64-unknown-linux-gnu --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/aarch64-unknown-linux-gnu/flowey-ci/flowey_hvlite "$OutDirNormal/flowey" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey pipeline github --runtime $ESCAPED_AGENT_TEMPDIR/bootstrapped-flowey/pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey echo '"debug"' | flowey v 20 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 20 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 20 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: create cargo-nextest cache dir run: |- flowey e 20 flowey_lib_common::cfg_cargo_common_flags 0 flowey e 20 flowey_lib_common::download_cargo_nextest 0 flowey e 20 flowey_lib_common::download_cargo_nextest 1 flowey e 20 flowey_lib_common::download_cargo_nextest 2 flowey e 20 flowey_lib_common::download_cargo_nextest 3 shell: bash - name: Pre-processing cache vars run: |- flowey e 20 flowey_lib_common::cache 0 flowey v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar7 flowey v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar8 shell: bash - id: flowey_lib_common__cache__1 uses: actions/cache@v5 with: key: ${{ env.floweyvar7 }} path: ${{ env.floweyvar8 }} name: 'Restore cache: cargo-nextest' - name: downloading cargo-nextest run: |- flowey v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__1.outputs.cache-hit <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-windows-uid-6/flowey.exe echo '"debug"' | flowey.exe v 21 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 21 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 21 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 21 'artifact_use_from_x64-guest_test_uefi' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 21 'artifact_use_from_x64-linux-musl-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-tmk_vmm" | flowey.exe v 21 'artifact_use_from_x64-linux-musl-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-tpm_guest_tests" | flowey.exe v 21 'artifact_use_from_x64-linux-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 21 'artifact_use_from_x64-openhcl-igvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm-cvm" | flowey.exe v 21 'artifact_use_from_x64-openhcl-igvm-cvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm-test-linux-direct" | flowey.exe v 21 'artifact_use_from_x64-openhcl-igvm-test-linux-direct' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-tmks" | flowey.exe v 21 'artifact_use_from_x64-tmks' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 21 'artifact_use_from_x64-windows-openvmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 21 'artifact_use_from_x64-windows-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-prep_steps" | flowey.exe v 21 'artifact_use_from_x64-windows-prep_steps' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-test_igvm_agent_rpc_server" | flowey.exe v 21 'artifact_use_from_x64-windows-test_igvm_agent_rpc_server' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tmk_vmm" | flowey.exe v 21 'artifact_use_from_x64-windows-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tpm_guest_tests" | flowey.exe v 21 'artifact_use_from_x64-windows-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool" | flowey.exe v 21 'artifact_use_from_x64-windows-vmgstool' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool-dev" | flowey.exe v 21 'artifact_use_from_x64-windows-vmgstool-dev' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 21 'artifact_use_from_x64-windows-vmm-tests-archive' --is-raw-string update shell: bash - name: create cargo-nextest cache dir run: |- flowey.exe e 21 flowey_lib_common::download_cargo_nextest 0 flowey.exe e 21 flowey_lib_common::download_cargo_nextest 1 flowey.exe e 21 flowey_lib_common::download_cargo_nextest 2 flowey.exe e 21 flowey_lib_common::download_cargo_nextest 3 shell: bash - name: Pre-processing cache vars run: |- flowey.exe e 21 flowey_lib_common::cache 0 flowey.exe v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar4 flowey.exe v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar5 shell: bash - id: flowey_lib_common__cache__1 uses: actions/cache@v5 with: key: ${{ env.floweyvar4 }} path: ${{ env.floweyvar5 }} name: 'Restore cache: cargo-nextest' - name: downloading cargo-nextest run: |- flowey.exe v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__1.outputs.cache-hit <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-windows-uid-6/flowey.exe echo '"debug"' | flowey.exe v 22 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 22 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 22 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 22 'artifact_use_from_x64-guest_test_uefi' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 22 'artifact_use_from_x64-linux-musl-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-tmk_vmm" | flowey.exe v 22 'artifact_use_from_x64-linux-musl-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-tpm_guest_tests" | flowey.exe v 22 'artifact_use_from_x64-linux-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-mi-secure-openhcl-igvm" | flowey.exe v 22 'artifact_use_from_x64-mi-secure-openhcl-igvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-mi-secure-openhcl-igvm-cvm" | flowey.exe v 22 'artifact_use_from_x64-mi-secure-openhcl-igvm-cvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-mi-secure-openhcl-igvm-test-linux-direct" | flowey.exe v 22 'artifact_use_from_x64-mi-secure-openhcl-igvm-test-linux-direct' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-tmks" | flowey.exe v 22 'artifact_use_from_x64-tmks' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 22 'artifact_use_from_x64-windows-openvmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 22 'artifact_use_from_x64-windows-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-prep_steps" | flowey.exe v 22 'artifact_use_from_x64-windows-prep_steps' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-test_igvm_agent_rpc_server" | flowey.exe v 22 'artifact_use_from_x64-windows-test_igvm_agent_rpc_server' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tmk_vmm" | flowey.exe v 22 'artifact_use_from_x64-windows-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tpm_guest_tests" | flowey.exe v 22 'artifact_use_from_x64-windows-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool" | flowey.exe v 22 'artifact_use_from_x64-windows-vmgstool' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool-dev" | flowey.exe v 22 'artifact_use_from_x64-windows-vmgstool-dev' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 22 'artifact_use_from_x64-windows-vmm-tests-archive' --is-raw-string update shell: bash - name: create cargo-nextest cache dir run: |- flowey.exe e 22 flowey_lib_common::download_cargo_nextest 0 flowey.exe e 22 flowey_lib_common::download_cargo_nextest 1 flowey.exe e 22 flowey_lib_common::download_cargo_nextest 2 flowey.exe e 22 flowey_lib_common::download_cargo_nextest 3 shell: bash - name: Pre-processing cache vars run: |- flowey.exe e 22 flowey_lib_common::cache 0 flowey.exe v 22 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar4 flowey.exe v 22 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar5 shell: bash - id: flowey_lib_common__cache__1 uses: actions/cache@v5 with: key: ${{ env.floweyvar4 }} path: ${{ env.floweyvar5 }} name: 'Restore cache: cargo-nextest' - name: downloading cargo-nextest run: |- flowey.exe v 22 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__1.outputs.cache-hit <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-windows-uid-6/flowey.exe echo '"debug"' | flowey.exe v 23 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 23 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 23 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 23 'artifact_use_from_x64-guest_test_uefi' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 23 'artifact_use_from_x64-linux-musl-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-tmk_vmm" | flowey.exe v 23 'artifact_use_from_x64-linux-musl-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-tpm_guest_tests" | flowey.exe v 23 'artifact_use_from_x64-linux-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 23 'artifact_use_from_x64-openhcl-igvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm-cvm" | flowey.exe v 23 'artifact_use_from_x64-openhcl-igvm-cvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm-test-linux-direct" | flowey.exe v 23 'artifact_use_from_x64-openhcl-igvm-test-linux-direct' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-tmks" | flowey.exe v 23 'artifact_use_from_x64-tmks' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 23 'artifact_use_from_x64-windows-openvmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 23 'artifact_use_from_x64-windows-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-prep_steps" | flowey.exe v 23 'artifact_use_from_x64-windows-prep_steps' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-test_igvm_agent_rpc_server" | flowey.exe v 23 'artifact_use_from_x64-windows-test_igvm_agent_rpc_server' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tmk_vmm" | flowey.exe v 23 'artifact_use_from_x64-windows-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tpm_guest_tests" | flowey.exe v 23 'artifact_use_from_x64-windows-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool" | flowey.exe v 23 'artifact_use_from_x64-windows-vmgstool' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool-dev" | flowey.exe v 23 'artifact_use_from_x64-windows-vmgstool-dev' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 23 'artifact_use_from_x64-windows-vmm-tests-archive' --is-raw-string update shell: bash - name: create cargo-nextest cache dir run: |- flowey.exe e 23 flowey_lib_common::download_cargo_nextest 0 flowey.exe e 23 flowey_lib_common::download_cargo_nextest 1 flowey.exe e 23 flowey_lib_common::download_cargo_nextest 2 flowey.exe e 23 flowey_lib_common::download_cargo_nextest 3 shell: bash - name: Pre-processing cache vars run: |- flowey.exe e 23 flowey_lib_common::cache 0 flowey.exe v 23 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar4 flowey.exe v 23 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar5 shell: bash - id: flowey_lib_common__cache__1 uses: actions/cache@v5 with: key: ${{ env.floweyvar4 }} path: ${{ env.floweyvar5 }} name: 'Restore cache: cargo-nextest' - name: downloading cargo-nextest run: |- flowey.exe v 23 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__1.outputs.cache-hit <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-windows-uid-6/flowey.exe echo '"debug"' | flowey.exe v 24 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 24 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 24 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 24 'artifact_use_from_x64-guest_test_uefi' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 24 'artifact_use_from_x64-linux-musl-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-tmk_vmm" | flowey.exe v 24 'artifact_use_from_x64-linux-musl-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-tpm_guest_tests" | flowey.exe v 24 'artifact_use_from_x64-linux-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 24 'artifact_use_from_x64-openhcl-igvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm-cvm" | flowey.exe v 24 'artifact_use_from_x64-openhcl-igvm-cvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm-test-linux-direct" | flowey.exe v 24 'artifact_use_from_x64-openhcl-igvm-test-linux-direct' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-tmks" | flowey.exe v 24 'artifact_use_from_x64-tmks' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 24 'artifact_use_from_x64-windows-openvmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 24 'artifact_use_from_x64-windows-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-prep_steps" | flowey.exe v 24 'artifact_use_from_x64-windows-prep_steps' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-test_igvm_agent_rpc_server" | flowey.exe v 24 'artifact_use_from_x64-windows-test_igvm_agent_rpc_server' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tmk_vmm" | flowey.exe v 24 'artifact_use_from_x64-windows-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tpm_guest_tests" | flowey.exe v 24 'artifact_use_from_x64-windows-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool" | flowey.exe v 24 'artifact_use_from_x64-windows-vmgstool' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool-dev" | flowey.exe v 24 'artifact_use_from_x64-windows-vmgstool-dev' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 24 'artifact_use_from_x64-windows-vmm-tests-archive' --is-raw-string update shell: bash - name: create cargo-nextest cache dir run: |- flowey.exe e 24 flowey_lib_common::download_cargo_nextest 0 flowey.exe e 24 flowey_lib_common::download_cargo_nextest 1 flowey.exe e 24 flowey_lib_common::download_cargo_nextest 2 flowey.exe e 24 flowey_lib_common::download_cargo_nextest 3 shell: bash - name: Pre-processing cache vars run: |- flowey.exe e 24 flowey_lib_common::cache 0 flowey.exe v 24 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar4 flowey.exe v 24 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar5 shell: bash - id: flowey_lib_common__cache__1 uses: actions/cache@v5 with: key: ${{ env.floweyvar4 }} path: ${{ env.floweyvar5 }} name: 'Restore cache: cargo-nextest' - name: downloading cargo-nextest run: |- flowey.exe v 24 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__1.outputs.cache-hit <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-windows-uid-6/flowey.exe echo '"debug"' | flowey.exe v 25 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 25 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 25 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 25 'artifact_use_from_x64-guest_test_uefi' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 25 'artifact_use_from_x64-linux-musl-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-tmk_vmm" | flowey.exe v 25 'artifact_use_from_x64-linux-musl-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-linux-tpm_guest_tests" | flowey.exe v 25 'artifact_use_from_x64-linux-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 25 'artifact_use_from_x64-openhcl-igvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm-cvm" | flowey.exe v 25 'artifact_use_from_x64-openhcl-igvm-cvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm-test-linux-direct" | flowey.exe v 25 'artifact_use_from_x64-openhcl-igvm-test-linux-direct' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-tmks" | flowey.exe v 25 'artifact_use_from_x64-tmks' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 25 'artifact_use_from_x64-windows-openvmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 25 'artifact_use_from_x64-windows-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-prep_steps" | flowey.exe v 25 'artifact_use_from_x64-windows-prep_steps' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-test_igvm_agent_rpc_server" | flowey.exe v 25 'artifact_use_from_x64-windows-test_igvm_agent_rpc_server' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tmk_vmm" | flowey.exe v 25 'artifact_use_from_x64-windows-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-tpm_guest_tests" | flowey.exe v 25 'artifact_use_from_x64-windows-tpm_guest_tests' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool" | flowey.exe v 25 'artifact_use_from_x64-windows-vmgstool' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmgstool-dev" | flowey.exe v 25 'artifact_use_from_x64-windows-vmgstool-dev' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 25 'artifact_use_from_x64-windows-vmm-tests-archive' --is-raw-string update shell: bash - name: create cargo-nextest cache dir run: |- flowey.exe e 25 flowey_lib_common::download_cargo_nextest 0 flowey.exe e 25 flowey_lib_common::download_cargo_nextest 1 flowey.exe e 25 flowey_lib_common::download_cargo_nextest 2 flowey.exe e 25 flowey_lib_common::download_cargo_nextest 3 shell: bash - name: Pre-processing cache vars run: |- flowey.exe e 25 flowey_lib_common::cache 0 flowey.exe v 25 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar4 flowey.exe v 25 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar5 shell: bash - id: flowey_lib_common__cache__1 uses: actions/cache@v5 with: key: ${{ env.floweyvar4 }} path: ${{ env.floweyvar5 }} name: 'Restore cache: cargo-nextest' - name: downloading cargo-nextest run: |- flowey.exe v 25 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__1.outputs.cache-hit <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 26 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 26 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 26 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 26 'artifact_use_from_x64-guest_test_uefi' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 26 'artifact_use_from_x64-linux-musl-pipette' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-tmk_vmm" | flowey v 26 'artifact_use_from_x64-linux-musl-tmk_vmm' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 26 'artifact_use_from_x64-linux-openvmm' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm_vhost" | flowey v 26 'artifact_use_from_x64-linux-openvmm_vhost' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-prep_steps" | flowey v 26 'artifact_use_from_x64-linux-prep_steps' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 26 'artifact_use_from_x64-linux-vmm-tests-archive' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-tmks" | flowey v 26 'artifact_use_from_x64-tmks' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 26 'artifact_use_from_x64-windows-pipette' --is-raw-string update shell: bash - name: creating new test content dir run: |- flowey e 26 flowey_core::pipeline::artifact::resolve 8 flowey e 26 flowey_core::pipeline::artifact::resolve 2 flowey e 26 flowey_core::pipeline::artifact::resolve 3 flowey e 26 flowey_core::pipeline::artifact::resolve 4 flowey e 26 flowey_core::pipeline::artifact::resolve 1 flowey e 26 flowey_core::pipeline::artifact::resolve 0 flowey e 26 flowey_core::pipeline::artifact::resolve 7 flowey e 26 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: checking if packages need to be installed run: flowey e 26 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages run: flowey e 26 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir run: flowey e 26 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars run: |- flowey e 26 flowey_lib_common::cache 8 flowey v 26 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar8 flowey v 26 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar9 shell: bash - id: flowey_lib_common__cache__9 uses: actions/cache@v5 with: key: ${{ env.floweyvar8 }} path: ${{ env.floweyvar9 }} name: 'Restore cache: gh-release-download' - name: download artifacts from github releases run: |- flowey v 26 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__9.outputs.cache-hit <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite "$OutDirNormal/flowey" working-directory: flowey_bootstrap shell: bash - name: πŸŒΌπŸ“¦ Download artifacts uses: actions/download-artifact@v8 with: pattern: '{x64-guest_test_uefi,x64-linux-musl-openvmm,x64-linux-musl-openvmm_vhost,x64-linux-musl-pipette,x64-linux-musl-tmk_vmm,x64-linux-musl-vmm-tests-archive,x64-linux-prep_steps,x64-tmks,x64-windows-pipette}' path: ${{ runner.temp }}/used_artifacts/ - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey pipeline github --runtime $ESCAPED_AGENT_TEMPDIR/bootstrapped-flowey/pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey echo '"debug"' | flowey v 27 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 27 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 27 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 27 'artifact_use_from_x64-guest_test_uefi' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-openvmm" | flowey v 27 'artifact_use_from_x64-linux-musl-openvmm' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-openvmm_vhost" | flowey v 27 'artifact_use_from_x64-linux-musl-openvmm_vhost' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 27 'artifact_use_from_x64-linux-musl-pipette' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-tmk_vmm" | flowey v 27 'artifact_use_from_x64-linux-musl-tmk_vmm' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-vmm-tests-archive" | flowey v 27 'artifact_use_from_x64-linux-musl-vmm-tests-archive' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-linux-prep_steps" | flowey v 27 'artifact_use_from_x64-linux-prep_steps' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-tmks" | flowey v 27 'artifact_use_from_x64-tmks' --is-raw-string update echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 27 'artifact_use_from_x64-windows-pipette' --is-raw-string update shell: bash - name: creating new test content dir run: |- flowey e 27 flowey_core::pipeline::artifact::resolve 8 flowey e 27 flowey_core::pipeline::artifact::resolve 4 flowey e 27 flowey_core::pipeline::artifact::resolve 1 flowey e 27 flowey_core::pipeline::artifact::resolve 2 flowey e 27 flowey_core::pipeline::artifact::resolve 3 flowey e 27 flowey_core::pipeline::artifact::resolve 0 flowey e 27 flowey_core::pipeline::artifact::resolve 7 flowey e 27 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: checking if packages need to be installed run: flowey e 27 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages run: flowey e 27 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir run: flowey e 27 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars run: |- flowey e 27 flowey_lib_common::cache 8 flowey v 27 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar8 flowey v 27 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar9 shell: bash - id: flowey_lib_common__cache__9 uses: actions/cache@v5 with: key: ${{ env.floweyvar8 }} path: ${{ env.floweyvar9 }} name: 'Restore cache: gh-release-download' - name: download artifacts from github releases run: |- flowey v 27 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__9.outputs.cache-hit <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/aarch64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - name: πŸŒΌπŸ“¦ Download artifacts uses: actions/download-artifact@v8 with: pattern: '{aarch64-guest_test_uefi,aarch64-linux-musl-pipette,aarch64-linux-musl-tmk_vmm,aarch64-openhcl-igvm,aarch64-tmks,aarch64-windows-openvmm,aarch64-windows-pipette,aarch64-windows-tmk_vmm,aarch64-windows-vmgstool,aarch64-windows-vmgstool-dev,aarch64-windows-vmm-tests-archive}' path: ${{ runner.temp }}/used_artifacts/ - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 28 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 28 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 28 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 28 'artifact_use_from_aarch64-guest_test_uefi' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 28 'artifact_use_from_aarch64-linux-musl-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-tmk_vmm" | flowey.exe v 28 'artifact_use_from_aarch64-linux-musl-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 28 'artifact_use_from_aarch64-openhcl-igvm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-tmks" | flowey.exe v 28 'artifact_use_from_aarch64-tmks' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 28 'artifact_use_from_aarch64-windows-openvmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 28 'artifact_use_from_aarch64-windows-pipette' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-tmk_vmm" | flowey.exe v 28 'artifact_use_from_aarch64-windows-tmk_vmm' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmgstool" | flowey.exe v 28 'artifact_use_from_aarch64-windows-vmgstool' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmgstool-dev" | flowey.exe v 28 'artifact_use_from_aarch64-windows-vmgstool-dev' --is-raw-string update echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 28 'artifact_use_from_aarch64-windows-vmm-tests-archive' --is-raw-string update shell: bash - name: create cargo-nextest cache dir run: |- flowey.exe e 28 flowey_lib_common::download_cargo_nextest 0 flowey.exe e 28 flowey_lib_common::download_cargo_nextest 1 flowey.exe e 28 flowey_lib_common::download_cargo_nextest 2 flowey.exe e 28 flowey_lib_common::download_cargo_nextest 3 shell: bash - name: Pre-processing cache vars run: |- flowey.exe e 28 flowey_lib_common::cache 0 flowey.exe v 28 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:407:72' --is-raw-string write-to-env github floweyvar4 flowey.exe v 28 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:406:72' --is-raw-string write-to-env github floweyvar5 shell: bash - id: flowey_lib_common__cache__1 uses: actions/cache@v5 with: key: ${{ env.floweyvar4 }} path: ${{ env.floweyvar5 }} name: 'Restore cache: cargo-nextest' - name: downloading cargo-nextest run: |- flowey.exe v 28 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:462:70' --is-raw-string update --env-source steps.flowey_lib_common__cache__1.outputs.cache-hit <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 29 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 29 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 29 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 29 flowey_lib_common::git_checkout 0 flowey v 29 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey v 29 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 29 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 3 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 3 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 3 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-guest_test_uefi" echo "$AgentTempDirNormal/publish_artifacts/aarch64-guest_test_uefi" | flowey v 3 'artifact_publish_from_aarch64-guest_test_uefi' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-musl-pipette" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-musl-pipette" | flowey v 3 'artifact_publish_from_aarch64-linux-musl-pipette' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-musl-tmk_vmm" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-musl-tmk_vmm" | flowey v 3 'artifact_publish_from_aarch64-linux-musl-tmk_vmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-tpm_guest_tests" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-tpm_guest_tests" | flowey v 3 'artifact_publish_from_aarch64-linux-tpm_guest_tests' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-tmks" echo "$AgentTempDirNormal/publish_artifacts/aarch64-tmks" | flowey v 3 'artifact_publish_from_aarch64-tmks' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-guest_test_uefi" echo "$AgentTempDirNormal/publish_artifacts/x64-guest_test_uefi" | flowey v 3 'artifact_publish_from_x64-guest_test_uefi' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 3 'artifact_publish_from_x64-linux-musl-pipette' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-tmk_vmm" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-tmk_vmm" | flowey v 3 'artifact_publish_from_x64-linux-musl-tmk_vmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-tpm_guest_tests" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-tpm_guest_tests" | flowey v 3 'artifact_publish_from_x64-linux-tpm_guest_tests' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-tmks" echo "$AgentTempDirNormal/publish_artifacts/x64-tmks" | flowey v 3 'artifact_publish_from_x64-tmks' --is-raw-string update shell: bash - name: add default cargo home to path run: flowey e 3 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey e 3 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey e 3 flowey_lib_common::install_rust 2 flowey e 3 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 3 flowey_lib_common::git_checkout 0 flowey v 3 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey v 3 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 3 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 30 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 30 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 30 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF shell: bash - name: Check if any jobs failed run: flowey e 30 flowey_lib_hvlite::_jobs::all_good_job 0 shell: bash job4: name: build artifacts (not for VMM tests) [aarch64-windows] runs-on: - self-hosted - 1ES.Pool=openvmm-gh-amd-westus3 - 1ES.ImageOverride=win-amd64 - JobId=job4-${{ github.run_id }}-${{ github.run_number }}-${{ github.run_attempt }} permissions: contents: read id-token: write needs: - job0 if: github.event.pull_request.draft == false steps: - run: | set -x i=0; while [ $i -lt 5 ] && ! sudo apt-get update; do let "i=i+1"; sleep 1; done; sudo apt-get -o DPkg::Lock::Timeout=60 install gcc -y curl --fail --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain=1.95.0 -y . "$HOME/.cargo/env" echo "$HOME/.cargo/bin" >> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 4 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 4 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 4 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-hypestv" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-hypestv" | flowey.exe v 4 'artifact_publish_from_aarch64-windows-hypestv' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-igvmfilegen" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-igvmfilegen" | flowey.exe v 4 'artifact_publish_from_aarch64-windows-igvmfilegen' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-ohcldiag-dev" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-ohcldiag-dev" | flowey.exe v 4 'artifact_publish_from_aarch64-windows-ohcldiag-dev' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-vmgs_lib" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-vmgs_lib" | flowey.exe v 4 'artifact_publish_from_aarch64-windows-vmgs_lib' --is-raw-string update shell: bash - name: add default cargo home to path run: flowey.exe e 4 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey.exe e 4 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey.exe e 4 flowey_lib_common::install_rust 2 flowey.exe e 4 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey.exe e 4 flowey_lib_common::git_checkout 0 flowey.exe v 4 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey.exe v 4 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey.exe v 4 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 5 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 5 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 5 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-openvmm" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-openvmm" | flowey.exe v 5 'artifact_publish_from_aarch64-windows-openvmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-prep_steps" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-prep_steps" | flowey.exe v 5 'artifact_publish_from_aarch64-windows-prep_steps' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-test_igvm_agent_rpc_server" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-test_igvm_agent_rpc_server" | flowey.exe v 5 'artifact_publish_from_aarch64-windows-test_igvm_agent_rpc_server' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-tmk_vmm" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-tmk_vmm" | flowey.exe v 5 'artifact_publish_from_aarch64-windows-tmk_vmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-tpm_guest_tests" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-tpm_guest_tests" | flowey.exe v 5 'artifact_publish_from_aarch64-windows-tpm_guest_tests' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-vmgstool" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-vmgstool" | flowey.exe v 5 'artifact_publish_from_aarch64-windows-vmgstool' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-vmgstool-dev" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-vmgstool-dev" | flowey.exe v 5 'artifact_publish_from_aarch64-windows-vmgstool-dev' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-windows-vmm-tests-archive" echo "${{ runner.temp }}\\publish_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 5 'artifact_publish_from_aarch64-windows-vmm-tests-archive' --is-raw-string update shell: bash - name: add default cargo home to path run: flowey.exe e 5 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey.exe e 5 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey.exe e 5 flowey_lib_common::install_rust 2 flowey.exe e 5 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey.exe e 5 flowey_lib_common::git_checkout 0 flowey.exe v 5 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey.exe v 5 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey.exe v 5 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 6 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 6 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 6 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-hypestv" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-hypestv" | flowey.exe v 6 'artifact_publish_from_x64-windows-hypestv' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-igvmfilegen" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-igvmfilegen" | flowey.exe v 6 'artifact_publish_from_x64-windows-igvmfilegen' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-ohcldiag-dev" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-ohcldiag-dev" | flowey.exe v 6 'artifact_publish_from_x64-windows-ohcldiag-dev' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-vmgs_lib" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-vmgs_lib" | flowey.exe v 6 'artifact_publish_from_x64-windows-vmgs_lib' --is-raw-string update shell: bash - name: add default cargo home to path run: flowey.exe e 6 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey.exe e 6 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey.exe e 6 flowey_lib_common::install_rust 2 flowey.exe e 6 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey.exe e 6 flowey_lib_common::git_checkout 0 flowey.exe v 6 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey.exe v 6 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey.exe v 6 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> "$GITHUB_PATH" rustup show if: runner.os == 'Linux' name: rustup (Linux) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'X64' name: rustup (Windows X64) shell: bash - run: | set -x curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init ./rustup-init.exe -y --default-toolchain=1.95.0 echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH if: runner.os == 'Windows' && runner.arch == 'ARM64' name: rustup (Windows ARM64) shell: bash - uses: actions/checkout@v6 with: path: flowey_bootstrap - name: Build flowey run: | set -x CARGO_INCREMENTAL=0 cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') mkdir -p "$OutDirNormal" mv ./.github/workflows/openvmm-pr.yaml "$OutDirNormal/pipeline.yaml" mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe "$OutDirNormal/flowey.exe" working-directory: flowey_bootstrap shell: bash - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ”Ž Self-check YAML run: |- ESCAPED_AGENT_TEMPDIR=$( cat <<'EOF' | sed 's/\\/\\\\/g' ${{ runner.temp }} EOF ) flowey.exe pipeline github --runtime $ESCAPED_AGENT_TEMPDIR\\bootstrapped-flowey\\pipeline.yaml --out .github/workflows/openvmm-pr.yaml ci checkin-gates --config=pr shell: bash - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe echo '"debug"' | flowey.exe v 7 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey.exe v 7 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey.exe v 7 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-openvmm" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-openvmm" | flowey.exe v 7 'artifact_publish_from_x64-windows-openvmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-prep_steps" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-prep_steps" | flowey.exe v 7 'artifact_publish_from_x64-windows-prep_steps' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-test_igvm_agent_rpc_server" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-test_igvm_agent_rpc_server" | flowey.exe v 7 'artifact_publish_from_x64-windows-test_igvm_agent_rpc_server' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-tmk_vmm" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-tmk_vmm" | flowey.exe v 7 'artifact_publish_from_x64-windows-tmk_vmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-tpm_guest_tests" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-tpm_guest_tests" | flowey.exe v 7 'artifact_publish_from_x64-windows-tpm_guest_tests' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-vmgstool" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-vmgstool" | flowey.exe v 7 'artifact_publish_from_x64-windows-vmgstool' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-vmgstool-dev" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-vmgstool-dev" | flowey.exe v 7 'artifact_publish_from_x64-windows-vmgstool-dev' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-windows-vmm-tests-archive" echo "${{ runner.temp }}\\publish_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 7 'artifact_publish_from_x64-windows-vmm-tests-archive' --is-raw-string update shell: bash - name: add default cargo home to path run: flowey.exe e 7 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey.exe e 7 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey.exe e 7 flowey_lib_common::install_rust 2 flowey.exe e 7 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if openvmm needs to be cloned run: |- flowey.exe e 7 flowey_lib_common::git_checkout 0 flowey.exe v 7 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey.exe v 7 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey.exe v 7 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 8 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 8 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 8 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-igvmfilegen" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-igvmfilegen" | flowey v 8 'artifact_publish_from_aarch64-linux-igvmfilegen' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-musl-openvmm" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-musl-openvmm" | flowey v 8 'artifact_publish_from_aarch64-linux-musl-openvmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-musl-openvmm_vhost" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-musl-openvmm_vhost" | flowey v 8 'artifact_publish_from_aarch64-linux-musl-openvmm_vhost' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-ohcldiag-dev" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-ohcldiag-dev" | flowey v 8 'artifact_publish_from_aarch64-linux-ohcldiag-dev' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-openvmm" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-openvmm" | flowey v 8 'artifact_publish_from_aarch64-linux-openvmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-openvmm_vhost" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-openvmm_vhost" | flowey v 8 'artifact_publish_from_aarch64-linux-openvmm_vhost' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-prep_steps" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-prep_steps" | flowey v 8 'artifact_publish_from_aarch64-linux-prep_steps' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-vmgs_lib" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-vmgs_lib" | flowey v 8 'artifact_publish_from_aarch64-linux-vmgs_lib' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-vmgstool" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-vmgstool" | flowey v 8 'artifact_publish_from_aarch64-linux-vmgstool' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/aarch64-linux-vmgstool-dev" echo "$AgentTempDirNormal/publish_artifacts/aarch64-linux-vmgstool-dev" | flowey v 8 'artifact_publish_from_aarch64-linux-vmgstool-dev' --is-raw-string update shell: bash - name: add default cargo home to path run: flowey e 8 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey e 8 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey e 8 flowey_lib_common::install_rust 2 flowey e 8 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: checking if packages need to be installed run: flowey e 8 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages run: flowey e 8 flowey_lib_common::install_dist_pkg 1 shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 8 flowey_lib_common::git_checkout 0 flowey v 8 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey v 8 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 8 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH - name: πŸŒΌπŸ›« Initialize job run: | AgentTempDirNormal="${{ runner.temp }}" AgentTempDirNormal=$(echo "$AgentTempDirNormal" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') echo "AgentTempDirNormal=$AgentTempDirNormal" >> $GITHUB_ENV chmod +x $AgentTempDirNormal/used_artifacts/_internal-flowey-bootstrap-x86_64-linux-uid-1/flowey echo '"debug"' | flowey v 9 'FLOWEY_LOG' update echo "${{ runner.temp }}/work" | flowey v 9 '_internal_WORKING_DIR' --is-raw-string update cat <<'EOF' | flowey v 9 'verbose' update ${{ inputs.verbose != '' && inputs.verbose || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-igvmfilegen" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-igvmfilegen" | flowey v 9 'artifact_publish_from_x64-linux-igvmfilegen' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-openvmm" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-openvmm" | flowey v 9 'artifact_publish_from_x64-linux-musl-openvmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-openvmm_vhost" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-openvmm_vhost" | flowey v 9 'artifact_publish_from_x64-linux-musl-openvmm_vhost' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-vmm-tests-archive" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-vmm-tests-archive" | flowey v 9 'artifact_publish_from_x64-linux-musl-vmm-tests-archive' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-ohcldiag-dev" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-ohcldiag-dev" | flowey v 9 'artifact_publish_from_x64-linux-ohcldiag-dev' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-openvmm" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-openvmm" | flowey v 9 'artifact_publish_from_x64-linux-openvmm' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-openvmm_vhost" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-openvmm_vhost" | flowey v 9 'artifact_publish_from_x64-linux-openvmm_vhost' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-prep_steps" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-prep_steps" | flowey v 9 'artifact_publish_from_x64-linux-prep_steps' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-vmgs_lib" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-vmgs_lib" | flowey v 9 'artifact_publish_from_x64-linux-vmgs_lib' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-vmgstool" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-vmgstool" | flowey v 9 'artifact_publish_from_x64-linux-vmgstool' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-vmgstool-dev" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-vmgstool-dev" | flowey v 9 'artifact_publish_from_x64-linux-vmgstool-dev' --is-raw-string update mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-vmm-tests-archive" echo "$AgentTempDirNormal/publish_artifacts/x64-linux-vmm-tests-archive" | flowey v 9 'artifact_publish_from_x64-linux-vmm-tests-archive' --is-raw-string update shell: bash - name: add default cargo home to path run: flowey e 9 flowey_lib_common::install_rust 0 shell: bash - name: install Rust run: flowey e 9 flowey_lib_common::install_rust 1 shell: bash - name: detect active toolchain run: |- flowey e 9 flowey_lib_common::install_rust 2 flowey e 9 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: checking if packages need to be installed run: flowey e 9 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages run: flowey e 9 flowey_lib_common::install_dist_pkg 1 shell: bash - name: check if openvmm needs to be cloned run: |- flowey e 9 flowey_lib_common::git_checkout 0 flowey v 9 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:489:80' --is-raw-string --condvar flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46 write-to-env github floweyvar1 flowey v 9 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:490:46' write-to-env github FLOWEY_CONDITION shell: bash - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v6 with: fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo openvmm if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report cloned repo directories run: |- flowey v 9 'flowey_lib_common::git_checkout:4:flowey_core/src/node/github_context.rs:55:41' --is-raw-string update --env-source github.workspace <