From d5e1b232b671cfec5f4bf18db892a40e54e24444 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Thu, 12 Dec 2024 15:05:52 -0800 Subject: [PATCH 01/42] first pass at adding job to verify gh binary size --- .../src/pipelines/checkin_gates.rs | 21 +++ .../src/_jobs/check_openvmm_hcl_size.rs | 123 ++++++++++++++++++ flowey/flowey_lib_hvlite/src/_jobs/mod.rs | 1 + 3 files changed, 145 insertions(+) create mode 100644 flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index 6967c5a6e..ac444821a 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -1008,6 +1008,27 @@ impl IntoPipeline for CheckinGatesCli { all_jobs.push(job); } + { + // emit openvmm_hcl verify-size job + let job = pipeline + .new_job( + FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), + FlowArch::X86_64, + "verify openvmm_hcl size [x64-linux]", + ) + .gh_set_pool(crate::pipelines_shared::gh_pools::default_gh_hosted( + FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), + )) + .dep_on( + |ctx| flowey_lib_hvlite::_jobs::check_openvmm_hcl_size::Request { + openvmm_hcl_target: CommonTriple::X86_64_LINUX_GNU, + xtask_target: CommonTriple::X86_64_LINUX_GNU, + done: ctx.new_done_handle(), + }, + ); + all_jobs.push(job.finish()); + } + if matches!(config, PipelineConfig::Pr) { // Add a job that depends on all others as a workaround for // https://github.com/orgs/community/discussions/12395. diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs new file mode 100644 index 000000000..4dfbddd1f --- /dev/null +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -0,0 +1,123 @@ +// Copyright (C) Microsoft Corporation. All rights reserved. + +//! Verify that the msft-internal OpenHCL hasn't unexpectedly grown / shrank too +//! much in size. + +use crate::run_cargo_build::common::CommonTriple; +use flowey::node::prelude::*; + +flowey_request! { + pub struct Request { + pub openvmm_hcl_target: CommonTriple, + pub xtask_target: CommonTriple, + pub done: WriteVar, + } +} + +new_simple_flow_node!(struct Node); + +impl SimpleFlowNode for Node { + type Request = Request; + + fn imports(ctx: &mut ImportCtx<'_>) { + ctx.import::(); + ctx.import::(); + ctx.import::(); + ctx.import::(); + } + + fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { + let Request { + openvmm_hcl_target, + xtask_target, + done, + } = request; + + let hvlite_repo_path = ctx.reqv(crate::git_checkout_openvmm_repo::req::GetRepoDir); + + let xtask = ctx.reqv(|v| crate::build_xtask::Request { + target: xtask_target, + xtask: v, + }); + + let openhcl_vmm = ctx.reqv(|v| crate::build_openvmm_hcl::Request { + build_params: crate::build_openvmm_hcl::OpenvmmHclBuildParams { + target: openvmm_hcl_target, + profile: crate::build_openvmm_hcl::OpenvmmHclBuildProfile::OpenvmmHclShip, + features: [crate::build_openvmm_hcl::OpenvmmHclFeature::Tpm].into(), + no_split_dbg_info: false, + }, + openvmm_hcl_output: v, + }); + + let did_verify_usermode_size = + ctx.emit_rust_step("verify openhcl_vmm usermode bin size", |ctx| { + let xtask = xtask.clone().claim(ctx); + let hvlite_repo_path = hvlite_repo_path.clone().claim(ctx); + let openhcl_vmm = openhcl_vmm.claim(ctx); + |rt| { + let xtask = match rt.read(xtask) { + crate::build_xtask::XtaskOutput::LinuxBin { bin, .. } => bin, + crate::build_xtask::XtaskOutput::WindowsBin { exe, .. } => exe, + }; + + let openhcl_vmm = rt.read(openhcl_vmm).bin; + + let sh = xshell::Shell::new()?; + sh.change_dir(rt.read(hvlite_repo_path)); + xshell::cmd!( + sh, + "{xtask} verify-size + -t underhill-x86_64-unknown-linux-musl-release + -p {openhcl_vmm} + " + ) + .run()?; + + Ok(()) + } + }); + + let openhcl_kernel = + ctx.reqv( + |v| crate::download_openhcl_kernel_package::Request::GetPackage { + kind: crate::download_openhcl_kernel_package::OpenhclKernelPackageKind::Main, + arch: crate::download_openhcl_kernel_package::OpenhclKernelPackageArch::X86_64, + pkg: v, + }, + ); + + let did_verify_kernel_size = ctx.emit_rust_step("verify OpenHCL kernel size", |ctx| { + let xtask = xtask.claim(ctx); + let hvlite_repo_path = hvlite_repo_path.claim(ctx); + let openhcl_kernel = openhcl_kernel.claim(ctx); + |rt| { + let xtask = match rt.read(xtask) { + crate::build_xtask::XtaskOutput::LinuxBin { bin, .. } => bin, + crate::build_xtask::XtaskOutput::WindowsBin { exe, .. } => exe, + }; + + let vmlinux = rt + .read(openhcl_kernel) + .join("build/native/bin/x64/vmlinux.dbg"); + + let sh = xshell::Shell::new()?; + sh.change_dir(rt.read(hvlite_repo_path)); + xshell::cmd!( + sh, + "{xtask} verify-size + -t hcl-kernel-ship + -p {vmlinux} + " + ) + .run()?; + + Ok(()) + } + }); + + ctx.emit_side_effect_step([did_verify_usermode_size, did_verify_kernel_size], [done]); + + Ok(()) + } +} diff --git a/flowey/flowey_lib_hvlite/src/_jobs/mod.rs b/flowey/flowey_lib_hvlite/src/_jobs/mod.rs index e896d733f..f1f271910 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/mod.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/mod.rs @@ -26,6 +26,7 @@ pub mod cfg_gh_azure_login; pub mod cfg_hvlite_reposource; pub mod cfg_versions; pub mod check_clippy; +pub mod check_openvmm_hcl_size; pub mod check_xtask_fmt; pub mod consolidate_and_publish_gh_pages; pub mod consume_and_test_nextest_unit_tests_archive; From 99e745bf42c1c14fffc4c2046a8f0b034ef62c27 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Thu, 2 Jan 2025 10:11:24 -0800 Subject: [PATCH 02/42] comparison of binaries --- Cargo.lock | 1 + .../src/pipelines/checkin_gates.rs | 8 +- .../src/download_gh_artifact.rs | 233 ++++++++++++++++++ flowey/flowey_lib_common/src/lib.rs | 1 + .../src/_jobs/check_openvmm_hcl_size.rs | 105 +------- xtask/Cargo.toml | 1 + xtask/src/main.rs | 2 + xtask/src/tasks/mod.rs | 2 + xtask/src/tasks/verify_size.rs | 91 +++++++ 9 files changed, 342 insertions(+), 102 deletions(-) create mode 100644 flowey/flowey_lib_common/src/download_gh_artifact.rs create mode 100644 xtask/src/tasks/verify_size.rs diff --git a/Cargo.lock b/Cargo.lock index 1fcf4db82..486f804d7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9069,6 +9069,7 @@ dependencies = [ "ignore", "log", "mbrman", + "object", "rayon", "serde", "serde_json", diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index ac444821a..a0ea9335b 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -1009,12 +1009,12 @@ impl IntoPipeline for CheckinGatesCli { } { - // emit openvmm_hcl verify-size job + // emit openvmm verify-size job let job = pipeline .new_job( FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), FlowArch::X86_64, - "verify openvmm_hcl size [x64-linux]", + "verify openvmm binary size [x64-linux]", ) .gh_set_pool(crate::pipelines_shared::gh_pools::default_gh_hosted( FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), @@ -1025,8 +1025,8 @@ impl IntoPipeline for CheckinGatesCli { xtask_target: CommonTriple::X86_64_LINUX_GNU, done: ctx.new_done_handle(), }, - ); - all_jobs.push(job.finish()); + ).finish(); + all_jobs.push(job); } if matches!(config, PipelineConfig::Pr) { diff --git a/flowey/flowey_lib_common/src/download_gh_artifact.rs b/flowey/flowey_lib_common/src/download_gh_artifact.rs new file mode 100644 index 000000000..0e2d153b1 --- /dev/null +++ b/flowey/flowey_lib_common/src/download_gh_artifact.rs @@ -0,0 +1,233 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +//! Download a github release artifact + +use flowey::node::prelude::*; +use std::collections::BTreeMap; + +flowey_request! { + pub struct Request { + /// First component of a github repo path + /// + /// e.g: the "foo" in "github.com/foo/bar" + pub repo_owner: String, + /// Second component of a github repo path + /// + /// e.g: the "bar" in "github.com/foo/bar" + pub repo_name: String, + /// Specific artifact to download. + pub file_name: String, + /// Path to downloaded artifact. + pub path: WriteVar, + } +} + +new_flow_node!(struct Node); + +impl FlowNode for Node { + type Request = Request; + + fn imports(ctx: &mut ImportCtx<'_>) { + ctx.import::(); + ctx.import::(); + } + + fn emit(requests: Vec, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { + let mut download_reqs: BTreeMap< + (String, String), + BTreeMap>>, + > = BTreeMap::new(); + for req in requests { + let Request { + repo_owner, + repo_name, + file_name, + path, + } = req; + + // if any package needs auth, we might as well download every + // package using the GH cli. + download_reqs + .entry((repo_owner, repo_name)) + .or_default() + .entry(file_name) + .or_default() + .push(path) + } + + if download_reqs.is_empty() { + return Ok(()); + } + + let gh_cli = ctx.reqv(crate::use_gh_cli::Request::Get); + + match ctx.persistent_dir() { + Some(dir) => Self::with_local_cache(ctx, dir, download_reqs, gh_cli), + None => Self::with_ci_cache(ctx, download_reqs, gh_cli), + } + + Ok(()) + } +} + +impl Node { + // Have a single folder which caches downloaded artifacts + fn with_local_cache( + ctx: &mut NodeCtx<'_>, + persistent_dir: ReadVar, + download_reqs: BTreeMap<(String, String), BTreeMap>>>, + gh_cli: ReadVar, + ) { + ctx.emit_rust_step("download artifacts from github actions run", |ctx| { + let gh_cli = gh_cli.claim(ctx); + let persistent_dir = persistent_dir.claim(ctx); + let download_reqs = download_reqs.claim(ctx); + move |rt| { + let persistent_dir = rt.read(persistent_dir); + + // first - check what reqs are already present in the local cache + let mut remaining_download_reqs: BTreeMap< + (String, String), + BTreeMap>>, + > = BTreeMap::new(); + for ((repo_owner, repo_name), files) in download_reqs { + for (file, vars) in files { + let cached_file = + persistent_dir.join(format!("{repo_owner}/{repo_name}/{file}")); + + if cached_file.exists() { + for var in vars { + rt.write(var, &cached_file) + } + } else { + let existing = remaining_download_reqs + .entry((repo_owner.clone(), repo_name.clone())) + .or_default() + .insert(file, vars); + assert!(existing.is_none()); + } + } + } + + if remaining_download_reqs.is_empty() { + log::info!("100% local cache hit!"); + return Ok(()); + } + + download_all_reqs(rt, &remaining_download_reqs, &persistent_dir, gh_cli)?; + + for ((repo_owner, repo_name), files) in remaining_download_reqs { + for (file, vars) in files { + let file = + persistent_dir.join(format!("{repo_owner}/{repo_name}/{file}")); + assert!(file.exists()); + for var in vars { + rt.write(var, &file) + } + } + } + + Ok(()) + } + }); + } + + // Instead of having a cache directory per-repo (and spamming the + // workflow with a whole bunch of cache task requests), have a single + // cache directory for each flow's request-set. + fn with_ci_cache( + ctx: &mut NodeCtx<'_>, + download_reqs: BTreeMap<(String, String), BTreeMap>>>, + gh_cli: ReadVar, + ) { + let cache_dir = ctx.emit_rust_stepv("create gh-artifact-download cache dir", |_| { + |_| Ok(std::env::current_dir()?.absolute()?) + }); + + let request_set_hash = { + let hasher = &mut rustc_hash::FxHasher::default(); + for ((repo_owner, repo_name), files) in &download_reqs { + std::hash::Hash::hash(repo_owner, hasher); + std::hash::Hash::hash(repo_name, hasher); + for file in files.keys() { + std::hash::Hash::hash(&file, hasher); + } + } + let hash = std::hash::Hasher::finish(hasher); + format!("{:08x?}", hash) + }; + + let cache_key = ReadVar::from_static(format!("gh-release-download-{request_set_hash}")); + let hitvar = ctx.reqv(|v| { + crate::cache::Request { + label: "gh-release-download".into(), + dir: cache_dir.clone(), + key: cache_key, + restore_keys: None, // OK if not exact - better than nothing + hitvar: crate::cache::CacheResult::HitVar(v), + } + }); + + ctx.emit_rust_step("download artifacts from github releases", |ctx| { + let cache_dir = cache_dir.claim(ctx); + let hitvar = hitvar.claim(ctx); + let gh_cli = gh_cli.claim(ctx); + let download_reqs = download_reqs.claim(ctx); + move |rt| { + let cache_dir = rt.read(cache_dir); + let hitvar = rt.read(hitvar); + + if !matches!(hitvar, crate::cache::CacheHit::Hit) { + download_all_reqs(rt, &download_reqs, &cache_dir, gh_cli)?; + } + + for ((repo_owner, repo_name), files) in download_reqs { + for (file, vars) in files { + let file = cache_dir.join(format!("{repo_owner}/{repo_name}/{file}")); + assert!(file.exists()); + for var in vars { + rt.write(var, &file) + } + } + } + + Ok(()) + } + }); + } +} + +fn download_all_reqs( + rt: &mut RustRuntimeServices<'_>, + download_reqs: &BTreeMap< + (String, String), + BTreeMap>>, + >, + cache_dir: &Path, + gh_cli: ReadVar, +) -> anyhow::Result<()> { + let sh = xshell::Shell::new()?; + let gh_cli = rt.read(gh_cli); + + for ((repo_owner, repo_name), files) in download_reqs { + let repo = format!("{repo_owner}/{repo_name}"); + + let out_dir = cache_dir.join(format!("{repo_owner}/{repo_name}")); + fs_err::create_dir_all(&out_dir)?; + sh.change_dir(&out_dir); + + // FUTURE: while the gh cli takes care of doing simultaneous downloads in + // the context of a single (repo, tag), we might want to have flowey spawn + // multiple processes to saturate the network connection in cases where + // multiple (repo, tag) pairs are being pulled at the same time. + let patterns = files.keys().flat_map(|k| ["--pattern".into(), k.clone()]); + xshell::cmd!( + sh, + "{gh_cli} run download -R {repo} {patterns...} --skip-existing" + ) + .run()?; + } + + Ok(()) +} diff --git a/flowey/flowey_lib_common/src/lib.rs b/flowey/flowey_lib_common/src/lib.rs index 612d5a7aa..7d070e00b 100644 --- a/flowey/flowey_lib_common/src/lib.rs +++ b/flowey/flowey_lib_common/src/lib.rs @@ -23,6 +23,7 @@ pub mod copy_to_artifact_dir; pub mod download_azcopy; pub mod download_cargo_fuzz; pub mod download_cargo_nextest; +pub mod download_gh_artifact; pub mod download_gh_cli; pub mod download_gh_release; pub mod download_mdbook; diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 4dfbddd1f..ba54fa2ad 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -1,16 +1,12 @@ // Copyright (C) Microsoft Corporation. All rights reserved. -//! Verify that the msft-internal OpenHCL hasn't unexpectedly grown / shrank too -//! much in size. - -use crate::run_cargo_build::common::CommonTriple; use flowey::node::prelude::*; +use crate::build_openvmm::OpenvmmOutput; flowey_request! { pub struct Request { - pub openvmm_hcl_target: CommonTriple, - pub xtask_target: CommonTriple, - pub done: WriteVar, + pub old_openvmm: ReadVar, + pub new_openvmm: ReadVar, } } @@ -20,103 +16,16 @@ impl SimpleFlowNode for Node { type Request = Request; fn imports(ctx: &mut ImportCtx<'_>) { - ctx.import::(); - ctx.import::(); - ctx.import::(); - ctx.import::(); } fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { let Request { - openvmm_hcl_target, - xtask_target, - done, + old_openvmm, + new_openvmm, } = request; - let hvlite_repo_path = ctx.reqv(crate::git_checkout_openvmm_repo::req::GetRepoDir); - - let xtask = ctx.reqv(|v| crate::build_xtask::Request { - target: xtask_target, - xtask: v, - }); - - let openhcl_vmm = ctx.reqv(|v| crate::build_openvmm_hcl::Request { - build_params: crate::build_openvmm_hcl::OpenvmmHclBuildParams { - target: openvmm_hcl_target, - profile: crate::build_openvmm_hcl::OpenvmmHclBuildProfile::OpenvmmHclShip, - features: [crate::build_openvmm_hcl::OpenvmmHclFeature::Tpm].into(), - no_split_dbg_info: false, - }, - openvmm_hcl_output: v, - }); - - let did_verify_usermode_size = - ctx.emit_rust_step("verify openhcl_vmm usermode bin size", |ctx| { - let xtask = xtask.clone().claim(ctx); - let hvlite_repo_path = hvlite_repo_path.clone().claim(ctx); - let openhcl_vmm = openhcl_vmm.claim(ctx); - |rt| { - let xtask = match rt.read(xtask) { - crate::build_xtask::XtaskOutput::LinuxBin { bin, .. } => bin, - crate::build_xtask::XtaskOutput::WindowsBin { exe, .. } => exe, - }; - - let openhcl_vmm = rt.read(openhcl_vmm).bin; - - let sh = xshell::Shell::new()?; - sh.change_dir(rt.read(hvlite_repo_path)); - xshell::cmd!( - sh, - "{xtask} verify-size - -t underhill-x86_64-unknown-linux-musl-release - -p {openhcl_vmm} - " - ) - .run()?; - - Ok(()) - } - }); - - let openhcl_kernel = - ctx.reqv( - |v| crate::download_openhcl_kernel_package::Request::GetPackage { - kind: crate::download_openhcl_kernel_package::OpenhclKernelPackageKind::Main, - arch: crate::download_openhcl_kernel_package::OpenhclKernelPackageArch::X86_64, - pkg: v, - }, - ); - - let did_verify_kernel_size = ctx.emit_rust_step("verify OpenHCL kernel size", |ctx| { - let xtask = xtask.claim(ctx); - let hvlite_repo_path = hvlite_repo_path.claim(ctx); - let openhcl_kernel = openhcl_kernel.claim(ctx); - |rt| { - let xtask = match rt.read(xtask) { - crate::build_xtask::XtaskOutput::LinuxBin { bin, .. } => bin, - crate::build_xtask::XtaskOutput::WindowsBin { exe, .. } => exe, - }; - - let vmlinux = rt - .read(openhcl_kernel) - .join("build/native/bin/x64/vmlinux.dbg"); - - let sh = xshell::Shell::new()?; - sh.change_dir(rt.read(hvlite_repo_path)); - xshell::cmd!( - sh, - "{xtask} verify-size - -t hcl-kernel-ship - -p {vmlinux} - " - ) - .run()?; - - Ok(()) - } - }); - - ctx.emit_side_effect_step([did_verify_usermode_size, did_verify_kernel_size], [done]); + let old_openvmm = old_openvmm.claim(ctx); + let new_openvmm = new_openvmm.claim(ctx); Ok(()) } diff --git a/xtask/Cargo.toml b/xtask/Cargo.toml index 24e6d8df2..8f2880c60 100644 --- a/xtask/Cargo.toml +++ b/xtask/Cargo.toml @@ -21,6 +21,7 @@ grep-regex.workspace = true grep-searcher.workspace = true ignore.workspace = true log.workspace = true +object = { workspace = true, features = ["read_core", "elf"] } mbrman.workspace = true rayon.workspace = true serde_json.workspace = true diff --git a/xtask/src/main.rs b/xtask/src/main.rs index c7dc51213..43aac6b74 100644 --- a/xtask/src/main.rs +++ b/xtask/src/main.rs @@ -78,6 +78,7 @@ enum Commands { Fuzz(tasks::Fuzz), GuestTest(tasks::GuestTest), InstallGitHooks(tasks::InstallGitHooks), + VerifySize(tasks::VerifySize) } fn main() { @@ -140,5 +141,6 @@ fn try_main() -> anyhow::Result<()> { Commands::Fuzz(task) => task.run(ctx), Commands::GuestTest(task) => task.run(ctx), Commands::InstallGitHooks(task) => task.run(ctx), + Commands::VerifySize(task) => task.run(ctx), } } diff --git a/xtask/src/tasks/mod.rs b/xtask/src/tasks/mod.rs index 35c7450db..5b5e8dcda 100644 --- a/xtask/src/tasks/mod.rs +++ b/xtask/src/tasks/mod.rs @@ -8,6 +8,7 @@ mod fmt; mod fuzz; mod git_hooks; mod guest_test; +mod verify_size; pub use git_hooks::update_hooks; @@ -17,6 +18,7 @@ pub use self::fuzz::Fuzz; pub use self::git_hooks::InstallGitHooks; pub use self::git_hooks::RunGitHook; pub use self::guest_test::GuestTest; +pub use self::verify_size::VerifySize; /// CLI completion functions for variious Xtasks pub mod cli_completions { diff --git a/xtask/src/tasks/verify_size.rs b/xtask/src/tasks/verify_size.rs new file mode 100644 index 000000000..57f4e6e3a --- /dev/null +++ b/xtask/src/tasks/verify_size.rs @@ -0,0 +1,91 @@ +// Copyright (C) Microsoft Corporation. All rights reserved. + +use crate::Xtask; +use object::read::Object; +use object::read::ObjectSection; +use std::collections::HashMap; + +#[derive(Debug, clap::Parser)] +#[clap(about = "Verify the size of a binary hasn't changed more than allowed.")] +pub struct VerifySize { + /// Old binary path + #[clap(short, long, required(true))] + original: std::path::PathBuf, + + /// New binary path + #[clap(short, long, required(true))] + new: std::path::PathBuf, +} + +fn verify_sections_size( + new: &object::File<'_>, + original: &object::File<'_>, +) -> anyhow::Result { + println!( + "{:20} {:>15} {:>15} {:>16}", + "Section", "New Size (KiB)", "Old Size (KiB)", "Difference (KiB)" + ); + + let mut total_diff: u64 = 0; + let mut total_size: u64 = 0; + + let expected_sections: HashMap<_, _> = original + .sections() + .filter_map(|s| s.name().ok().map(|name| (name.to_string(), (s.size() as i64) / 1024))) + .filter(|(_, size)| *size > 0) + .collect(); + + for section in new.sections() { + let name = section.name().unwrap(); + let size = (section.size() / 1024) as i64; + let expected_size = *expected_sections + .get(name) + .unwrap_or(&0); + let diff = (size as i64) - (expected_size as i64); + total_diff += diff.unsigned_abs(); + total_size += size as u64; + + // Print any non-zero sections in the newer binary and any sections that differ in size from the original. + if size != 0 || diff != 0 { + println!("{name:20} {size:15} {expected_size:15} {diff:16}"); + } + } + + println!("Total Size: {total_size} KiB."); + + Ok(total_diff) +} + +impl Xtask for VerifySize { + fn run(self, _ctx: crate::XtaskCtx) -> anyhow::Result<()> { + let original = fs_err::read(&self.original)?; + let new = fs_err::read(&self.new)?; + + let original_elf = object::File::parse(&*original).or_else(|e| { + anyhow::bail!( + r#"Unable to parse target file "{}". Error: "{}""#, + &self.original.display(), + e + ) + })?; + + let new_elf = object::File::parse(&*new).or_else(|e| { + anyhow::bail!( + r#"Unable to parse target file "{}". Error: "{}""#, + &self.new.display(), + e + ) + })?; + + println!("Verifying size for {}:", (&self.new.display())); + let total_diff = verify_sections_size(&new_elf, &original_elf)?; + + println!("Total difference: {total_diff} KiB."); + + if total_diff > 100 { + anyhow::bail!("{} size verification failed: The total difference ({} KiB) is greater than the allowed difference ({} KiB).", self.new.display(), total_diff, 100); + } + + Ok(()) + } +} From 207280e124ac1772c710fbad4565fc99450fcb62 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Thu, 2 Jan 2025 13:35:20 -0800 Subject: [PATCH 03/42] try comparing two of what should be the same binary --- .../src/pipelines/checkin_gates.rs | 46 +++++++------- .../src/_jobs/check_openvmm_hcl_size.rs | 62 ++++++++++++++++--- 2 files changed, 78 insertions(+), 30 deletions(-) diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index a0ea9335b..00bd7a627 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -631,7 +631,7 @@ impl IntoPipeline for CheckinGatesCli { let (pub_openhcl_igvm, use_openhcl_igvm) = pipeline.new_artifact(format!("{arch_tag}-openhcl-igvm")); - let (pub_openhcl_igvm_extras, _use_openhcl_igvm_extras) = + let (pub_openhcl_igvm_extras, use_openhcl_igvm_extras) = pipeline.new_artifact(format!("{arch_tag}-openhcl-igvm-extras")); // also build pipette musl on this job, as until we land the // refactor that allows building musl without the full openhcl @@ -713,6 +713,29 @@ impl IntoPipeline for CheckinGatesCli { ); all_jobs.push(job.finish()); + + // emit openvmm verify-size job + let job = pipeline + .new_job( + FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), + FlowArch::X86_64, + format!("verify openhcl binary size [{}]", arch_tag), + ) + .gh_set_pool(crate::pipelines_shared::gh_pools::default_x86_pool( + FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), + )) + .dep_on( + |ctx| flowey_lib_hvlite::_jobs::check_openvmm_hcl_size::Request { + target: CommonTriple::Common { + arch, + platform: CommonPlatform::LinuxMusl, + }, + old_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), + new_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), + }, + ) + .finish(); + all_jobs.push(job); } // Emit clippy + unit-test jobs @@ -1008,27 +1031,6 @@ impl IntoPipeline for CheckinGatesCli { all_jobs.push(job); } - { - // emit openvmm verify-size job - let job = pipeline - .new_job( - FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), - FlowArch::X86_64, - "verify openvmm binary size [x64-linux]", - ) - .gh_set_pool(crate::pipelines_shared::gh_pools::default_gh_hosted( - FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), - )) - .dep_on( - |ctx| flowey_lib_hvlite::_jobs::check_openvmm_hcl_size::Request { - openvmm_hcl_target: CommonTriple::X86_64_LINUX_GNU, - xtask_target: CommonTriple::X86_64_LINUX_GNU, - done: ctx.new_done_handle(), - }, - ).finish(); - all_jobs.push(job); - } - if matches!(config, PipelineConfig::Pr) { // Add a job that depends on all others as a workaround for // https://github.com/orgs/community/discussions/12395. diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index ba54fa2ad..bad64c20f 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -1,12 +1,16 @@ -// Copyright (C) Microsoft Corporation. All rights reserved. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +//! Run a pre-built cargo-nextest based VMM tests archive. + +use crate::run_cargo_build::common::{CommonArch, CommonTriple}; use flowey::node::prelude::*; -use crate::build_openvmm::OpenvmmOutput; flowey_request! { pub struct Request { - pub old_openvmm: ReadVar, - pub new_openvmm: ReadVar, + pub target: CommonTriple, + pub old_openhcl: ReadVar, + pub new_openhcl: ReadVar, } } @@ -16,16 +20,58 @@ impl SimpleFlowNode for Node { type Request = Request; fn imports(ctx: &mut ImportCtx<'_>) { + ctx.import::(); + ctx.import::(); } fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { let Request { - old_openvmm, - new_openvmm, + target, + old_openhcl, + new_openhcl, } = request; - let old_openvmm = old_openvmm.claim(ctx); - let new_openvmm = new_openvmm.claim(ctx); + let xtask = ctx.reqv(|v| crate::build_xtask::Request { target: target.clone(), xtask: v }); + let openvmm_repo_path = ctx.reqv(crate::git_checkout_openvmm_repo::req::GetRepoDir); + + ctx.emit_rust_step("binary size comparison", |ctx| { + let xtask = xtask.claim(ctx); + let openvmm_repo_path = openvmm_repo_path.claim(ctx); + let old_openhcl = old_openhcl.claim(ctx); + let new_openhcl = new_openhcl.claim(ctx); + + move |rt| { + let xtask = match rt.read(xtask) { + crate::build_xtask::XtaskOutput::LinuxBin { bin, .. } => bin, + crate::build_xtask::XtaskOutput::WindowsBin { exe, .. } => exe, + }; + + let old_openhcl = rt.read(old_openhcl); + let new_openhcl = rt.read(new_openhcl); + + let arch = target.common_arch().unwrap(); + + let old_path = match arch { + CommonArch::X86_64 => old_openhcl.join("openhcl/openhcl"), + CommonArch::Aarch64 => old_openhcl.join("openhcl-aarch64/openhcl"), + }; + + let new_path = match arch { + CommonArch::X86_64 => new_openhcl.join("openhcl/openhcl"), + CommonArch::Aarch64 => new_openhcl.join("openhcl-aarch64/openhcl"), + }; + + let sh = xshell::Shell::new()?; + sh.change_dir(rt.read(openvmm_repo_path)); + xshell::cmd!( + sh, + "{xtask} verify-size --old {old_path} --new {new_path}" + ) + .run()?; + + Ok(()) + } + }); Ok(()) } From 40aa92111bd82570d0c2b3c23ff849d6401a4377 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Thu, 2 Jan 2025 14:18:37 -0800 Subject: [PATCH 04/42] add done handle, run regen --- .github/workflows/openvmm-ci.yaml | 2652 +++++++++------- .github/workflows/openvmm-pr.yaml | 2672 +++++++++-------- .../src/pipelines/checkin_gates.rs | 1 + .../src/_jobs/check_openvmm_hcl_size.rs | 5 +- 4 files changed, 2989 insertions(+), 2341 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index b343c3a60..713561fba 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -1606,7 +1606,172 @@ jobs: with: name: aarch64-openhcl-igvm-extras path: ${{ runner.temp }}/publish_artifacts/aarch64-openhcl-igvm-extras/ + - name: 🌼🧼 Redact bootstrap var db + run: rm $AgentTempDirNormal/bootstrapped-flowey/job12.json + shell: bash + - name: 🌼πŸ₯Ύ Publish bootstrapped flowey + uses: actions/upload-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-linux-uid-7 + path: ${{ runner.temp }}/bootstrapped-flowey job13: + name: verify openhcl binary size [aarch64] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB + permissions: + contents: read + id-token: write + needs: + - job12 + if: github.event.pull_request.draft == false + steps: + - name: 🌼πŸ₯Ύ Download bootstrapped flowey + uses: actions/download-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-linux-uid-7 + path: ${{ runner.temp }}/bootstrapped-flowey + - name: πŸŒΌπŸ“¦ Download aarch64-openhcl-igvm-extras + uses: actions/download-artifact@v4 + with: + name: aarch64-openhcl-igvm-extras + path: ${{ runner.temp }}/used_artifacts/aarch64-openhcl-igvm-extras/ + - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $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/bootstrapped-flowey/flowey + + echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 13 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + echo "$AgentTempDirNormal/used_artifacts/aarch64-openhcl-igvm-extras" | flowey v 13 'artifact_use_from_aarch64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + shell: bash + - name: install Rust + run: flowey e 13 flowey_lib_common::install_rust 0 + shell: bash + - name: detect active toolchain + run: flowey e 13 flowey_lib_common::install_rust 1 + shell: bash + - name: report common cargo flags + run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 13 flowey_lib_common::git_checkout 0 + shell: bash + - run: | + flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '1' + path: repo0 + persist-credentials: ${{ env.floweyvar1 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 13 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 13 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 13 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 13 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github releases + run: flowey e 13 flowey_lib_common::download_gh_release 1 + shell: bash + - name: checking if packages need to be installed + run: flowey e 13 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 13 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: unpack protoc + run: flowey e 13 flowey_lib_common::download_protoc 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: symlink protoc + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: unpack openvmm-deps archive + run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 + shell: bash + - name: extract Aarch64 sysroot.tar.gz + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + shell: bash + - name: inject cross env + run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 + shell: bash + - name: cargo build xtask + run: flowey e 13 flowey_lib_common::run_cargo_build 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 + shell: bash + - name: split debug symbols + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 + shell: bash + - name: reporting split debug info + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 + shell: bash + - name: report built xtask + run: flowey e 13 flowey_lib_hvlite::build_xtask 0 + shell: bash + - name: binary size comparison + run: flowey e 13 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 13 flowey_lib_common::cache 3 + shell: bash + job14: name: build openhcl [x64-linux] runs-on: - self-hosted @@ -1692,37 +1857,37 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 14 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 13 'param0' --update-from-stdin + cat <<'EOF' | flowey v 14 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 13 'artifact_publish_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 14 'artifact_publish_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" - echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 14 'artifact_publish_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" - echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" | flowey v 14 'artifact_publish_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string shell: bash - name: checking if packages need to be installed - run: flowey e 13 flowey_lib_common::install_dist_pkg 0 + run: flowey e 14 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 13 flowey_lib_common::install_dist_pkg 1 + run: flowey e 14 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 13 flowey_lib_common::download_gh_release 0 + run: flowey e 14 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 0 + run: flowey e 14 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' - run: | - flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - id: flowey_lib_common__cache__1 @@ -1732,35 +1897,35 @@ jobs: path: ${{ env.floweyvar2 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 2 + run: flowey e 14 flowey_lib_common::cache 2 shell: bash - name: download artifacts from github releases - run: flowey e 13 flowey_lib_common::download_gh_release 1 + run: flowey e 14 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 13 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 14 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: install Rust - run: flowey e 13 flowey_lib_common::install_rust 0 + run: flowey e 14 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 13 flowey_lib_common::install_rust 1 + run: flowey e 14 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 14 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 13 flowey_lib_common::git_checkout 0 + run: flowey e 14 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -1773,403 +1938,403 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 13 flowey_lib_common::git_checkout 3 + run: flowey e 14 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 13 flowey_lib_common::download_protoc 0 + run: flowey e 14 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 14 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: cargo build openhcl_boot - run: flowey e 13 flowey_lib_common::run_cargo_build 1 + run: flowey e 14 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 5 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 5 shell: bash - name: reporting split debug info - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built openhcl_boot - run: flowey e 13 flowey_lib_hvlite::build_openhcl_boot 0 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_boot 0 shell: bash - name: unpack Microsoft.OHCL.Kernel.Dev.6.6.63.1-x64.tar.gz - run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 2 + run: flowey e 14 flowey_lib_hvlite::download_openhcl_kernel_package 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 shell: bash - name: unpack openvmm-deps archive - run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 14 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 14 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build openvmm_hcl - run: flowey e 13 flowey_lib_common::run_cargo_build 2 + run: flowey e 14 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: report built openvmm_hcl - run: flowey e 13 flowey_lib_hvlite::build_openvmm_hcl 0 + run: flowey e 14 flowey_lib_hvlite::build_openvmm_hcl 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 4 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 4 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 shell: bash - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 14 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo build igvmfilegen - run: flowey e 13 flowey_lib_common::run_cargo_build 0 + run: flowey e 14 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 7 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 7 shell: bash - name: reporting split debug info - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built igvmfilegen - run: flowey e 13 flowey_lib_hvlite::build_igvmfilegen 0 + run: flowey e 14 flowey_lib_hvlite::build_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 4 + run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 4 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 shell: bash - name: unpack Microsoft.OHCL.Kernel.6.6.63.1-x64.tar.gz - run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 0 + run: flowey e 14 flowey_lib_hvlite::download_openhcl_kernel_package 0 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 0 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 0 + run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 1 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 1 + run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 4 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 4 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 2 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 2 + run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 shell: bash - name: unpack Microsoft.OHCL.Kernel.6.6.63.1-cvm-x64.tar.gz - run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 1 + run: flowey e 14 flowey_lib_hvlite::download_openhcl_kernel_package 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 3 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 3 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 3 + run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 3 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 shell: bash - name: describe OpenHCL igvm artifact - run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 + run: flowey e 14 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 shell: bash - name: copying OpenHCL igvm files to artifact dir - run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 1 + run: flowey e 14 flowey_lib_common::copy_to_artifact_dir 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 + run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 + run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 shell: bash - name: describe OpenHCL igvm extras artifact - run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 + run: flowey e 14 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 shell: bash - name: copying OpenHCL igvm extras to artifact dir - run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 0 + run: flowey e 14 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 14 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build pipette - run: flowey e 13 flowey_lib_common::run_cargo_build 3 + run: flowey e 14 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 6 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 6 shell: bash - name: reporting split debug info - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 8 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 8 shell: bash - name: report built pipette - run: flowey e 13 flowey_lib_hvlite::build_pipette 0 + run: flowey e 14 flowey_lib_hvlite::build_pipette 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::artifact_pipette::publish 0 + run: flowey e 14 flowey_lib_hvlite::artifact_pipette::publish 0 shell: bash - name: copying pipette to artifact dir - run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 2 + run: flowey e 14 flowey_lib_common::copy_to_artifact_dir 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 13 flowey_lib_common::cache 3 + run: flowey e 14 flowey_lib_common::cache 3 shell: bash - name: πŸŒΌπŸ“¦ Publish x64-linux-musl-pipette uses: actions/upload-artifact@v4 @@ -2187,54 +2352,211 @@ jobs: name: x64-openhcl-igvm-extras path: ${{ runner.temp }}/publish_artifacts/x64-openhcl-igvm-extras/ - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job13.json + run: rm $AgentTempDirNormal/bootstrapped-flowey/job14.json shell: bash - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: name: _internal-flowey-bootstrap-x86_64-linux-uid-6 path: ${{ runner.temp }}/bootstrapped-flowey - job14: - name: clippy [windows], unit tests [x64-windows] + job15: + name: verify openhcl binary size [x64] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB permissions: contents: read id-token: write + needs: + - job14 if: github.event.pull_request.draft == false steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey + - name: 🌼πŸ₯Ύ Download bootstrapped flowey + uses: actions/download-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + path: ${{ runner.temp }}/bootstrapped-flowey + - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm-extras + uses: actions/download-artifact@v4 + with: + name: x64-openhcl-igvm-extras + path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm-extras/ + - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash - - 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.82.0 -y - . "$HOME/.cargo/env" - echo "$HOME/.cargo/bin" >> "$GITHUB_PATH" - rustup show - if: runner.os == 'Linux' - name: rustup (Linux) + 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/bootstrapped-flowey/flowey + + echo '"debug"' | flowey v 15 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 15 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras" | flowey v 15 'artifact_use_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + shell: bash + - name: install Rust + run: flowey e 15 flowey_lib_common::install_rust 0 + shell: bash + - name: detect active toolchain + run: flowey e 15 flowey_lib_common::install_rust 1 + shell: bash + - name: report common cargo flags + run: flowey e 15 flowey_lib_common::cfg_cargo_common_flags 0 + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 15 flowey_lib_common::git_checkout 0 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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'X64' - name: rustup (Windows X64) + flowey v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - set -x - curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init - ./rustup-init.exe -y --default-toolchain=1.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) + flowey v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash - - uses: actions/checkout@v4 + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '1' + path: repo0 + persist-credentials: ${{ env.floweyvar1 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 15 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 15 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 15 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 15 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github releases + run: flowey e 15 flowey_lib_common::download_gh_release 1 + shell: bash + - name: checking if packages need to be installed + run: flowey e 15 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 15 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: unpack protoc + run: flowey e 15 flowey_lib_common::download_protoc 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: symlink protoc + run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: unpack openvmm-deps archive + run: flowey e 15 flowey_lib_hvlite::download_openvmm_deps 0 + shell: bash + - name: extract X64 sysroot.tar.gz + run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + shell: bash + - name: inject cross env + run: flowey e 15 flowey_lib_hvlite::init_cross_build 0 + shell: bash + - name: cargo build xtask + run: flowey e 15 flowey_lib_common::run_cargo_build 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 0 + shell: bash + - name: split debug symbols + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 0 + shell: bash + - name: reporting split debug info + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 1 + shell: bash + - name: report built xtask + run: flowey e 15 flowey_lib_hvlite::build_xtask 0 + shell: bash + - name: binary size comparison + run: flowey e 15 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 15 flowey_lib_common::cache 3 + shell: bash + job16: + name: clippy [windows], unit tests [x64-windows] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 + permissions: + contents: read + id-token: write + if: github.event.pull_request.draft == false + steps: + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 with: path: flowey_bootstrap - name: Build flowey @@ -2279,31 +2601,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 14 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 16 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 14 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 16 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey.exe e 14 flowey_lib_common::install_rust 0 + run: flowey.exe e 16 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 14 flowey_lib_common::install_rust 1 + run: flowey.exe e 16 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey.exe e 14 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 16 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 14 flowey_lib_common::git_checkout 0 + run: flowey.exe e 16 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2316,29 +2638,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 14 flowey_lib_common::git_checkout 3 + run: flowey.exe e 16 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 14 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 16 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 14 flowey_lib_common::cache 4 + run: flowey.exe e 16 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2348,86 +2670,86 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 14 flowey_lib_common::cache 6 + run: flowey.exe e 16 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 14 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 16 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 14 flowey_lib_common::download_protoc 0 + run: flowey.exe e 16 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 3 + run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey.exe e 14 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 16 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 16 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey.exe e 16 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey.exe e 14 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 16 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 14 flowey_lib_hvlite::download_lxutil 1 + run: flowey.exe e 16 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: cargo clippy - run: flowey.exe e 14 flowey_lib_common::run_cargo_clippy 0 + run: flowey.exe e 16 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 4 + run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey.exe e 14 flowey_lib_common::run_cargo_build 1 + run: flowey.exe e 16 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 1 + run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 1 + run: flowey.exe e 16 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey.exe e 16 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey.exe e 14 flowey_lib_common::run_cargo_clippy 1 + run: flowey.exe e 16 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 14 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 16 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 14 flowey_lib_common::cache 0 + run: flowey.exe e 16 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2437,65 +2759,65 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 14 flowey_lib_common::cache 2 + run: flowey.exe e 16 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 14 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 14 flowey_lib_common::install_rust 2 + run: flowey.exe e 16 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 14 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 16 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 5 + run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey.exe e 14 flowey_lib_common::run_cargo_build 2 + run: flowey.exe e 16 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 2 + run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: report built xtask - run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 2 + run: flowey.exe e 16 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey.exe e 14 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 2 + run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 14 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 16 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 14 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 16 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 16 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 16 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 16 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 14 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 14 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2507,18 +2829,18 @@ jobs: name: 'publish test results: x64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-pc-windows-msvc - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 14 flowey_lib_common::cache 3 + run: flowey.exe e 16 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 14 flowey_lib_common::cache 7 + run: flowey.exe e 16 flowey_lib_common::cache 7 shell: bash - job15: + job17: name: clippy [linux, macos], unit tests [x64-linux] runs-on: - self-hosted @@ -2604,40 +2926,40 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 15 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 17 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 15 'param0' --update-from-stdin + cat <<'EOF' | flowey v 17 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 15 flowey_lib_common::install_rust 0 + run: flowey e 17 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 15 flowey_lib_common::install_rust 1 + run: flowey e 17 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 15 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 17 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: checking if packages need to be installed - run: flowey e 15 flowey_lib_common::install_dist_pkg 0 + run: flowey e 17 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 15 flowey_lib_common::install_dist_pkg 1 + run: flowey e 17 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 15 flowey_lib_common::download_gh_release 0 + run: flowey e 17 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 4 + run: flowey e 17 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2647,29 +2969,29 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 6 + run: flowey e 17 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 15 flowey_lib_common::download_gh_release 1 + run: flowey e 17 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 15 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 17 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 15 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 17 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 15 flowey_lib_common::git_checkout 0 + run: flowey e 17 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2682,119 +3004,119 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 15 flowey_lib_common::git_checkout 3 + run: flowey e 17 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 15 flowey_lib_common::download_protoc 0 + run: flowey e 17 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 6 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 6 shell: bash - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 3 + run: flowey e 17 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 1 + run: flowey e 17 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 2 + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 2 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 2 + run: flowey e 17 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 0 + run: flowey e 17 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 0 + run: flowey e 17 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 2 + run: flowey e 17 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine clippy exclusions - run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: create cargo-nextest cache dir - run: flowey e 15 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 17 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 0 + run: flowey e 17 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2804,71 +3126,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 2 + run: flowey e 17 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 15 flowey_lib_common::install_rust 2 + run: flowey e 17 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 15 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 17 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 1 + run: flowey e 17 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 3 + run: flowey e 17 flowey_lib_hvlite::build_xtask 3 shell: bash - name: determine unit test exclusions - run: flowey e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 0 + run: flowey e 17 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 1 + run: flowey e 17 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 2 + run: flowey e 17 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2880,18 +3202,18 @@ jobs: name: 'publish test results: x64-linux-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-gnu - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 15 flowey_lib_common::cache 3 + run: flowey e 17 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 15 flowey_lib_common::cache 7 + run: flowey e 17 flowey_lib_common::cache 7 shell: bash - job16: + job18: name: clippy [linux-musl, misc nostd], unit tests [x64-linux-musl] runs-on: - self-hosted @@ -2977,31 +3299,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 18 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 16 'param0' --update-from-stdin + cat <<'EOF' | flowey v 18 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 16 flowey_lib_common::install_rust 0 + run: flowey e 18 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 16 flowey_lib_common::install_rust 1 + run: flowey e 18 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 18 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 16 flowey_lib_common::git_checkout 0 + run: flowey e 18 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3014,35 +3336,35 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 16 flowey_lib_common::git_checkout 3 + run: flowey e 18 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: checking if packages need to be installed - run: flowey e 16 flowey_lib_common::install_dist_pkg 0 + run: flowey e 18 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 16 flowey_lib_common::install_dist_pkg 1 + run: flowey e 18 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 16 flowey_lib_common::download_gh_release 0 + run: flowey e 18 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 16 flowey_lib_common::cache 4 + run: flowey e 18 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3052,119 +3374,119 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 16 flowey_lib_common::cache 6 + run: flowey e 18 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 16 flowey_lib_common::download_gh_release 1 + run: flowey e 18 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack openvmm-deps archive - run: flowey e 16 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 18 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 + run: flowey e 18 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 18 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 18 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 18 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 18 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 16 flowey_lib_common::download_protoc 0 + run: flowey e 18 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 18 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 18 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 18 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 1 + run: flowey e 18 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 18 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 18 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 18 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 0 + run: flowey e 18 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 18 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 18 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 18 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 18 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: extract Aarch64 sysroot.tar.gz - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 18 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 18 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 4 + run: flowey e 18 flowey_lib_common::run_cargo_clippy 4 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 18 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 2 + run: flowey e 18 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 18 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 18 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 18 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 1 + run: flowey e 18 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 18 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 3 + run: flowey e 18 flowey_lib_common::run_cargo_clippy 3 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 5 + run: flowey e 18 flowey_lib_common::run_cargo_clippy 5 shell: bash - name: create cargo-nextest cache dir - run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 18 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 16 flowey_lib_common::cache 0 + run: flowey e 18 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3174,71 +3496,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 16 flowey_lib_common::cache 2 + run: flowey e 18 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 18 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 16 flowey_lib_common::install_rust 2 + run: flowey e 18 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 18 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 18 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 0 + run: flowey e 18 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 18 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 18 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 18 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 2 + run: flowey e 18 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 18 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 18 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 18 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 18 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 0 + run: flowey e 18 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 1 + run: flowey e 18 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 2 + run: flowey e 18 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3250,18 +3572,18 @@ jobs: name: 'publish test results: x64-linux-musl-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-musl - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 18 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 16 flowey_lib_common::cache 3 + run: flowey e 18 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 16 flowey_lib_common::cache 7 + run: flowey e 18 flowey_lib_common::cache 7 shell: bash - job17: + job19: name: unit tests [aarch64-windows] runs-on: - self-hosted @@ -3348,28 +3670,28 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 17 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 17 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: report common cargo flags - run: flowey.exe e 17 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 19 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 17 flowey_lib_common::cache 0 + run: flowey.exe e 19 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3379,35 +3701,35 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 17 flowey_lib_common::cache 2 + run: flowey.exe e 19 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 19 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: install Rust - run: flowey.exe e 17 flowey_lib_common::install_rust 0 + run: flowey.exe e 19 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 17 flowey_lib_common::install_rust 1 + run: flowey.exe e 19 flowey_lib_common::install_rust 1 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 17 flowey_lib_common::install_rust 2 + run: flowey.exe e 19 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 17 flowey_lib_common::git_checkout 0 + run: flowey.exe e 19 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3420,29 +3742,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 17 flowey_lib_common::git_checkout 3 + run: flowey.exe e 19 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 17 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 17 flowey_lib_common::cache 4 + run: flowey.exe e 19 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3452,74 +3774,74 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 17 flowey_lib_common::cache 6 + run: flowey.exe e 19 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 17 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 17 flowey_lib_common::download_protoc 0 + run: flowey.exe e 19 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 17 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 19 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey.exe e 17 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 19 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 17 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 19 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine unit test exclusions - run: flowey.exe e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 19 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 17 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: inject cross env - run: flowey.exe e 17 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3531,388 +3853,246 @@ jobs: name: 'publish test results: aarch64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for aarch64-pc-windows-msvc - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 17 flowey_lib_common::cache 3 + run: flowey.exe e 19 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 17 flowey_lib_common::cache 7 + run: flowey.exe e 19 flowey_lib_common::cache 7 shell: bash - job18: - name: run vmm-tests [x64-windows-intel] + job2: + name: build and check docs [x64-linux] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Win-Pool-Intel-WestUS3 - - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB permissions: contents: read id-token: write - needs: - - job13 - - job13 - - job11 - - job9 - - job9 - - job9 if: github.event.pull_request.draft == false steps: - - name: 🌼πŸ₯Ύ Download bootstrapped flowey - uses: actions/download-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-windows-uid-10 - path: ${{ runner.temp }}/bootstrapped-flowey - - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi - uses: actions/download-artifact@v4 - with: - name: x64-guest_test_uefi - path: ${{ runner.temp }}/used_artifacts/x64-guest_test_uefi/ - - name: πŸŒΌπŸ“¦ Download x64-linux-musl-pipette - uses: actions/download-artifact@v4 - with: - name: x64-linux-musl-pipette - path: ${{ runner.temp }}/used_artifacts/x64-linux-musl-pipette/ - - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm - uses: actions/download-artifact@v4 - with: - name: x64-openhcl-igvm - path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm/ - - name: πŸŒΌπŸ“¦ Download x64-windows-openvmm - uses: actions/download-artifact@v4 - with: - name: x64-windows-openvmm - path: ${{ runner.temp }}/used_artifacts/x64-windows-openvmm/ - - name: πŸŒΌπŸ“¦ Download x64-windows-pipette - uses: actions/download-artifact@v4 - with: - name: x64-windows-pipette - path: ${{ runner.temp }}/used_artifacts/x64-windows-pipette/ - - name: πŸŒΌπŸ“¦ Download x64-windows-vmm-tests-archive - uses: actions/download-artifact@v4 - with: - name: x64-windows-vmm-tests-archive - path: ${{ runner.temp }}/used_artifacts/x64-windows-vmm-tests-archive/ - - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey 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/bootstrapped-flowey/flowey.exe - - echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 18 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 18 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 18 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 18 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 18 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 18 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string - shell: bash - - name: create cargo-nextest cache dir - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 - shell: bash - - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 4 + - 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.82.0 -y + . "$HOME/.cargo/env" + echo "$HOME/.cargo/bin" >> "$GITHUB_PATH" + rustup show + if: runner.os == 'Linux' + name: rustup (Linux) shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + set -x + curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/x86_64 --output rustup-init + ./rustup-init.exe -y --default-toolchain=1.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'X64' + name: rustup (Windows X64) shell: bash - name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + set -x + curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init + ./rustup-init.exe -y --default-toolchain=1.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) shell: bash - name: 🌼 Write to 'floweyvar9' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 + - uses: actions/checkout@v4 with: - key: ${{ env.floweyvar8 }} - path: ${{ env.floweyvar9 }} - name: 'Restore cache: cargo-nextest' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 6 - shell: bash - - name: installing cargo-nextest - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 - shell: bash - - name: create gh-release-download cache dir - run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci + working-directory: flowey_bootstrap shell: bash - - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 8 + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-ci.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey + working-directory: flowey_bootstrap shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap shell: bash - name: 🌼 Write to 'floweyvar10' - - run: | - flowey.exe v 18 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + working-directory: flowey_bootstrap shell: bash - name: 🌼 Write to 'floweyvar11' - - id: flowey_lib_common__cache__9 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar10 }} - path: ${{ env.floweyvar11 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 10 + - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash - - name: download artifacts from github releases - run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 + 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-ci.yaml ci checkin-gates --config=ci shell: bash - - name: unpack mu_msvm package (x64) - run: flowey.exe e 18 flowey_lib_hvlite::download_uefi_mu_msvm 0 + - 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 2 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 2 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 18 flowey_lib_common::git_checkout 0 + run: flowey e 2 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar5' + name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: fetch-depth: '1' path: repo0 - persist-credentials: ${{ env.floweyvar5 }} + persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 18 flowey_lib_common::git_checkout 3 + run: flowey e 2 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: move MSVM.fd into its magic folder - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 - shell: bash - - name: creating new test content dir - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 - shell: bash - - name: resolve openvmm artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_openvmm::resolve 0 - shell: bash - - name: resolve pipette artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 1 - shell: bash - - name: resolve pipette artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 0 - shell: bash - - name: resolve guest_test_uefi artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - - name: resolve OpenHCL igvm artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - - name: create azcopy cache dir - run: flowey.exe e 18 flowey_lib_common::download_azcopy 0 + - name: create gh-release-download cache dir + run: flowey e 2 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 0 + run: flowey e 2 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar1' - run: | - flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar7' + name: 🌼 Write to 'floweyvar2' - id: flowey_lib_common__cache__1 uses: actions/cache@v4 with: - key: ${{ env.floweyvar6 }} - path: ${{ env.floweyvar7 }} - name: 'Restore cache: azcopy' + key: ${{ env.floweyvar1 }} + path: ${{ env.floweyvar2 }} + name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 2 - shell: bash - - name: installing azcopy - run: flowey.exe e 18 flowey_lib_common::download_azcopy 1 - shell: bash - - name: calculating required VMM tests disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey e 2 flowey_lib_common::cache 2 shell: bash - - name: downloading VMM test disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + - name: download artifacts from github releases + run: flowey e 2 flowey_lib_common::download_gh_release 1 shell: bash - - name: report downloaded VMM test disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + - name: checking if packages need to be installed + run: flowey e 2 flowey_lib_common::install_dist_pkg 0 shell: bash - - name: unpack openvmm-deps archive - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_deps 0 + - name: installing packages + run: flowey e 2 flowey_lib_common::install_dist_pkg 1 shell: bash - - name: setting up vmm_tests env - run: flowey.exe e 18 flowey_lib_hvlite::init_vmm_tests_env 0 + - name: unpack protoc + run: flowey e 2 flowey_lib_common::download_protoc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 1 + - name: report openvmm magicpath dir + run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - - name: resolve vmm tests archive artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + - name: symlink protoc + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + - name: install Rust + run: flowey e 2 flowey_lib_common::install_rust 0 shell: bash - - name: run 'vmm_tests' nextest tests - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 shell: bash - - name: write results - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 + - name: move lxutil.dll into its magic folder + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 4 + - name: detect active toolchain + run: flowey e 2 flowey_lib_common::install_rust 1 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 5 + - name: report common cargo flags + run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: construct cargo doc command + run: flowey e 2 flowey_lib_common::run_cargo_doc 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + - name: document repo for target x86_64-unknown-linux-gnu + run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 shell: bash - name: 🌼 Write to 'floweyvar2' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__6 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-intel-vmm-tests-crash-dumps - path: ${{ env.floweyvar2 }} - name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 7 + - name: archive rustdoc dir + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 8 + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: copying rustdoc to artifact dir + run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + - name: 'validate cache entry: gh-release-download' + run: flowey e 2 flowey_lib_common::cache 3 shell: bash - name: 🌼 Write to 'floweyvar3' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__9 + - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc uses: actions/upload-artifact@v4 with: - name: x64-windows-intel-vmm-tests-logs - path: ${{ env.floweyvar3 }} - name: 'publish test results: logs (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 10 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 11 - shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + name: x64-linux-rustdoc + path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ + - name: 🌼🧼 Redact bootstrap var db + run: rm $AgentTempDirNormal/bootstrapped-flowey/job2.json shell: bash - name: 🌼 Write to 'floweyvar4' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__12 + - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: - name: x64-windows-intel-vmm-tests-openhcl-dumps - path: ${{ env.floweyvar4 }} - name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 - shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__3 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-intel-vmm-tests-junit-xml - path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: report test results to overall pipeline status - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 18 flowey_lib_common::cache 11 - shell: bash - - name: 'validate cache entry: azcopy' - run: flowey.exe e 18 flowey_lib_common::cache 3 - shell: bash - - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 18 flowey_lib_common::cache 7 - shell: bash - job19: - name: run vmm-tests [x64-windows-amd] + name: _internal-flowey-bootstrap-x86_64-linux-uid-16 + path: ${{ runner.temp }}/bootstrapped-flowey + job20: + name: run vmm-tests [x64-windows-intel] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 + - 1ES.Pool=OpenVMM-GitHub-Win-Pool-Intel-WestUS3 - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB permissions: contents: read id-token: write needs: - - job13 - - job13 + - job14 + - job14 - job11 - job9 - job9 @@ -3965,31 +4145,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 20 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 20 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 20 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 20 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 20 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 4 + run: flowey.exe e 20 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -3999,26 +4179,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 6 + run: flowey.exe e 20 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 20 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 8 + run: flowey.exe e 20 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4028,26 +4208,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 10 + run: flowey.exe e 20 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 20 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 19 flowey_lib_common::git_checkout 0 + run: flowey.exe e 20 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4060,53 +4240,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 19 flowey_lib_common::git_checkout 3 + run: flowey.exe e 20 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 20 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 0 + run: flowey.exe e 20 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4116,368 +4296,510 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 2 + run: flowey.exe e 20 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 20 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 20 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__publish_test_results__6 uses: actions/upload-artifact@v4 with: - name: x64-windows-amd-vmm-tests-crash-dumps + name: x64-windows-intel-vmm-tests-crash-dumps path: ${{ env.floweyvar2 }} - name: 'publish test results: crash-dumps (x64-windows-amd-vmm-tests)' + name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__publish_test_results__9 uses: actions/upload-artifact@v4 with: - name: x64-windows-amd-vmm-tests-logs + name: x64-windows-intel-vmm-tests-logs path: ${{ env.floweyvar3 }} - name: 'publish test results: logs (x64-windows-amd-vmm-tests)' + name: 'publish test results: logs (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__publish_test_results__12 uses: actions/upload-artifact@v4 with: - name: x64-windows-amd-vmm-tests-openhcl-dumps + name: x64-windows-intel-vmm-tests-openhcl-dumps path: ${{ env.floweyvar4 }} - name: 'publish test results: openhcl-dumps (x64-windows-amd-vmm-tests)' + name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__publish_test_results__3 uses: actions/upload-artifact@v4 with: - name: x64-windows-amd-vmm-tests-junit-xml + name: x64-windows-intel-vmm-tests-junit-xml path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-windows-amd-vmm-tests (JUnit XML)' + name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 19 flowey_lib_common::cache 11 + run: flowey.exe e 20 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 19 flowey_lib_common::cache 3 + run: flowey.exe e 20 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 19 flowey_lib_common::cache 7 + run: flowey.exe e 20 flowey_lib_common::cache 7 shell: bash - job2: - name: build and check docs [x64-linux] + job21: + name: run vmm-tests [x64-windows-amd] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB + - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 + - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB permissions: contents: read id-token: write + needs: + - job14 + - job14 + - job11 + - job9 + - job9 + - job9 if: github.event.pull_request.draft == false steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey - shell: bash - - 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.82.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.82.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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) - shell: bash - - uses: actions/checkout@v4 + - name: 🌼πŸ₯Ύ Download bootstrapped flowey + uses: actions/download-artifact@v4 with: - path: flowey_bootstrap - - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci - working-directory: flowey_bootstrap - shell: bash - - name: Stage flowey artifact - run: | - mkdir ./flowey_bootstrap_temp - mv ./.github/workflows/openvmm-ci.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey - working-directory: flowey_bootstrap - shell: bash - - name: Copy flowey artifact - run: | - OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') - mkdir -p $OutDirNormal - cp -r ./flowey_bootstrap_temp/* $OutDirNormal - working-directory: flowey_bootstrap - shell: bash - - name: Cleanup staged flowey artifact - run: rm -rf ./flowey_bootstrap_temp - working-directory: flowey_bootstrap - shell: bash + name: _internal-flowey-bootstrap-x86_64-windows-uid-10 + path: ${{ runner.temp }}/bootstrapped-flowey + - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi + uses: actions/download-artifact@v4 + with: + name: x64-guest_test_uefi + path: ${{ runner.temp }}/used_artifacts/x64-guest_test_uefi/ + - name: πŸŒΌπŸ“¦ Download x64-linux-musl-pipette + uses: actions/download-artifact@v4 + with: + name: x64-linux-musl-pipette + path: ${{ runner.temp }}/used_artifacts/x64-linux-musl-pipette/ + - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm + uses: actions/download-artifact@v4 + with: + name: x64-openhcl-igvm + path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm/ + - name: πŸŒΌπŸ“¦ Download x64-windows-openvmm + uses: actions/download-artifact@v4 + with: + name: x64-windows-openvmm + path: ${{ runner.temp }}/used_artifacts/x64-windows-openvmm/ + - name: πŸŒΌπŸ“¦ Download x64-windows-pipette + uses: actions/download-artifact@v4 + with: + name: x64-windows-pipette + path: ${{ runner.temp }}/used_artifacts/x64-windows-pipette/ + - name: πŸŒΌπŸ“¦ Download x64-windows-vmm-tests-archive + uses: actions/download-artifact@v4 + with: + name: x64-windows-vmm-tests-archive + path: ${{ runner.temp }}/used_artifacts/x64-windows-vmm-tests-archive/ - 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-ci.yaml ci checkin-gates --config=ci - 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 + chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey v 2 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 21 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 2 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 21 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 21 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 21 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 21 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 21 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 21 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 21 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + shell: bash + - name: create cargo-nextest cache dir + run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 21 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey.exe v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar8' + - run: | + flowey.exe v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar9' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar8 }} + path: ${{ env.floweyvar9 }} + name: 'Restore cache: cargo-nextest' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey.exe v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 21 flowey_lib_common::cache 6 + shell: bash + - name: installing cargo-nextest + run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 1 + shell: bash + - name: create gh-release-download cache dir + run: flowey.exe e 21 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 21 flowey_lib_common::cache 8 + shell: bash + - run: | + flowey.exe v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar10' + - run: | + flowey.exe v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar11' + - id: flowey_lib_common__cache__9 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar10 }} + path: ${{ env.floweyvar11 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} + shell: flowey.exe v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 21 flowey_lib_common::cache 10 + shell: bash + - name: download artifacts from github releases + run: flowey.exe e 21 flowey_lib_common::download_gh_release 1 + shell: bash + - name: unpack mu_msvm package (x64) + run: flowey.exe e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 2 flowey_lib_common::git_checkout 0 + run: flowey.exe e 21 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar3' + name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: fetch-depth: '1' path: repo0 - persist-credentials: ${{ env.floweyvar3 }} + persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 2 flowey_lib_common::git_checkout 3 + run: flowey.exe e 21 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey.exe e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey.exe e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: move MSVM.fd into its magic folder + run: flowey.exe e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 + shell: bash + - name: creating new test content dir + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + shell: bash + - name: resolve openvmm artifact + run: flowey.exe e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 + shell: bash + - name: resolve pipette artifact + run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 + shell: bash + - name: resolve pipette artifact + run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 + shell: bash + - name: resolve guest_test_uefi artifact + run: flowey.exe e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + shell: bash + - name: resolve OpenHCL igvm artifact + run: flowey.exe e 21 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + shell: bash + - name: create azcopy cache dir + run: flowey.exe e 21 flowey_lib_common::download_azcopy 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 21 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey.exe v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar6' + - run: | + flowey.exe v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar7' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar6 }} + path: ${{ env.floweyvar7 }} + name: 'Restore cache: azcopy' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey.exe v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 21 flowey_lib_common::cache 2 + shell: bash + - name: installing azcopy + run: flowey.exe e 21 flowey_lib_common::download_azcopy 1 + shell: bash + - name: calculating required VMM tests disk images + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + shell: bash + - name: downloading VMM test disk images + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + shell: bash + - name: report downloaded VMM test disk images + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + shell: bash + - name: unpack openvmm-deps archive + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + - name: setting up vmm_tests env + run: flowey.exe e 21 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - - name: create gh-release-download cache dir - run: flowey e 2 flowey_lib_common::download_gh_release 0 + - name: resolve vmm tests archive artifact + run: flowey.exe e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - - name: Pre-processing cache vars - run: flowey e 2 flowey_lib_common::cache 0 + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + shell: bash + - name: run 'vmm_tests' nextest tests + run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 0 + shell: bash + - name: write results + run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_common::publish_test_results 4 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash - name: 🌼 Write to 'floweyvar1' + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__6 + uses: actions/upload-artifact@v4 with: - key: ${{ env.floweyvar1 }} + name: x64-windows-amd-vmm-tests-crash-dumps path: ${{ env.floweyvar2 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 2 flowey_lib_common::cache 2 - shell: bash - - name: download artifacts from github releases - run: flowey e 2 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 2 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 2 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 2 flowey_lib_common::download_protoc 0 + name: 'publish test results: crash-dumps (x64-windows-amd-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_common::publish_test_results 7 shell: bash - - name: report openvmm magicpath dir - run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_common::publish_test_results 8 shell: bash - - name: symlink protoc - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + - run: | + flowey.exe v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash - - name: install Rust - run: flowey e 2 flowey_lib_common::install_rust 0 + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 + name: 🌼 Write to 'floweyvar3' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__9 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-amd-vmm-tests-logs + path: ${{ env.floweyvar3 }} + name: 'publish test results: logs (x64-windows-amd-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_common::publish_test_results 10 shell: bash - - name: move lxutil.dll into its magic folder - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_common::publish_test_results 11 shell: bash - - name: detect active toolchain - run: flowey e 2 flowey_lib_common::install_rust 1 + - run: | + flowey.exe v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash - - name: report common cargo flags - run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash - - name: construct cargo doc command - run: flowey e 2 flowey_lib_common::run_cargo_doc 0 + name: 🌼 Write to 'floweyvar4' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__12 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-amd-vmm-tests-openhcl-dumps + path: ${{ env.floweyvar4 }} + name: 'publish test results: openhcl-dumps (x64-windows-amd-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - - name: document repo for target x86_64-unknown-linux-gnu - run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_common::publish_test_results 0 shell: bash - - name: archive rustdoc dir - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 + - name: 🌼 write_into Var + run: flowey.exe e 21 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 2 shell: bash - - name: copying rustdoc to artifact dir - run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 + - run: | + flowey.exe v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 2 flowey_lib_common::cache 3 + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash - - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__3 uses: actions/upload-artifact@v4 with: - name: x64-linux-rustdoc - path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ - - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job2.json + name: x64-windows-amd-vmm-tests-junit-xml + path: ${{ env.floweyvar1 }} + name: 'publish test results: x64-windows-amd-vmm-tests (JUnit XML)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: report test results to overall pipeline status + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - - name: 🌼πŸ₯Ύ Publish bootstrapped flowey - uses: actions/upload-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-16 - path: ${{ runner.temp }}/bootstrapped-flowey - job20: + - name: 'validate cache entry: gh-release-download' + run: flowey.exe e 21 flowey_lib_common::cache 11 + shell: bash + - name: 'validate cache entry: azcopy' + run: flowey.exe e 21 flowey_lib_common::cache 3 + shell: bash + - name: 'validate cache entry: cargo-nextest' + run: flowey.exe e 21 flowey_lib_common::cache 7 + shell: bash + job22: name: run vmm-tests [x64-linux] runs-on: - self-hosted @@ -4487,7 +4809,7 @@ jobs: contents: read id-token: write needs: - - job13 + - job14 - job11 - job11 - job9 @@ -4535,33 +4857,33 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 20 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 22 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 20 'param0' --update-from-stdin + cat <<'EOF' | flowey v 22 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 20 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 20 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 22 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 22 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 22 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 22 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 22 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string shell: bash - name: ensure /dev/kvm is accessible - run: flowey e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: create cargo-nextest cache dir - run: flowey e 20 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 22 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 20 flowey_lib_common::cache 4 + run: flowey e 22 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey v 22 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey v 22 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4571,32 +4893,32 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 22 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 20 flowey_lib_common::cache 6 + run: flowey e 22 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey e 20 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 22 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: checking if packages need to be installed - run: flowey e 20 flowey_lib_common::install_dist_pkg 0 + run: flowey e 22 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 20 flowey_lib_common::install_dist_pkg 1 + run: flowey e 22 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 20 flowey_lib_common::download_gh_release 0 + run: flowey e 22 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 20 flowey_lib_common::cache 8 + run: flowey e 22 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey v 22 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey v 22 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4606,26 +4928,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 22 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 20 flowey_lib_common::cache 10 + run: flowey e 22 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey e 20 flowey_lib_common::download_gh_release 1 + run: flowey e 22 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 22 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 20 flowey_lib_common::git_checkout 0 + run: flowey e 22 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4638,50 +4960,50 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 20 flowey_lib_common::git_checkout 3 + run: flowey e 22 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 22 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey e 22 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 22 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey e 22 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey e 22 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey e 22 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey e 22 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey e 20 flowey_lib_common::download_azcopy 0 + run: flowey e 22 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey e 20 flowey_lib_common::cache 0 + run: flowey e 22 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 22 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 22 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4691,56 +5013,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 22 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 20 flowey_lib_common::cache 2 + run: flowey e 22 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey e 20 flowey_lib_common::download_azcopy 1 + run: flowey e 22 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey e 20 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 22 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey e 20 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey e 22 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey e 22 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey e 22 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 + run: flowey e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey e 20 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 22 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 20 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 22 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 4 + run: flowey e 22 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 5 + run: flowey e 22 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 22 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 22 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4752,17 +5074,17 @@ jobs: name: 'publish test results: crash-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 7 + run: flowey e 22 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 8 + run: flowey e 22 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 22 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 22 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4774,17 +5096,17 @@ jobs: name: 'publish test results: logs (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 10 + run: flowey e 22 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 11 + run: flowey e 22 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 22 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 22 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4796,23 +5118,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 0 + run: flowey e 22 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 1 + run: flowey e 22 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 2 + run: flowey e 22 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 22 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 22 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4824,18 +5146,18 @@ jobs: name: 'publish test results: x64-linux-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 20 flowey_lib_common::cache 11 + run: flowey e 22 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey e 20 flowey_lib_common::cache 3 + run: flowey e 22 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 20 flowey_lib_common::cache 7 + run: flowey e 22 flowey_lib_common::cache 7 shell: bash - job21: + job23: name: run vmm-tests [aarch64-windows] runs-on: - self-hosted @@ -4900,31 +5222,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 21 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 23 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 21 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 23 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 21 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 21 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 21 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 21 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 21 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 21 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 23 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 23 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 23 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 23 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 23 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 23 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 23 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 4 + run: flowey.exe e 23 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 23 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 23 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4934,26 +5256,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 23 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 6 + run: flowey.exe e 23 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 23 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 21 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 23 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 8 + run: flowey.exe e 23 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 23 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 23 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4963,26 +5285,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 23 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 10 + run: flowey.exe e 23 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 21 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 23 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (aarch64) - run: flowey.exe e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 23 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 21 flowey_lib_common::git_checkout 0 + run: flowey.exe e 23 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 23 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 23 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4995,53 +5317,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 23 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 21 flowey_lib_common::git_checkout 3 + run: flowey.exe e 23 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 23 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 23 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 23 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 23 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 23 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 23 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 23 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 23 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 23 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 23 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 21 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 23 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 0 + run: flowey.exe e 23 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 23 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 23 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -5051,56 +5373,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 23 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 2 + run: flowey.exe e 23 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 21 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 23 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 23 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 23 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 23 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 23 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 21 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 23 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 23 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 23 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 23 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 23 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 23 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 23 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 23 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5112,17 +5434,17 @@ jobs: name: 'publish test results: crash-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 23 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 23 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5134,17 +5456,17 @@ jobs: name: 'publish test results: logs (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 23 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 23 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5156,23 +5478,23 @@ jobs: name: 'publish test results: openhcl-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 23 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 23 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 23 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 23 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5184,18 +5506,18 @@ jobs: name: 'publish test results: aarch64-windows-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 23 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 21 flowey_lib_common::cache 11 + run: flowey.exe e 23 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 21 flowey_lib_common::cache 3 + run: flowey.exe e 23 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 21 flowey_lib_common::cache 7 + run: flowey.exe e 23 flowey_lib_common::cache 7 shell: bash - job22: + job24: name: test flowey local backend runs-on: - self-hosted @@ -5281,22 +5603,22 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 22 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 24 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 24 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 22 'param0' --update-from-stdin + cat <<'EOF' | flowey v 24 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: check if hvlite needs to be cloned - run: flowey e 22 flowey_lib_common::git_checkout 0 + run: flowey e 24 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 24 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 24 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5309,22 +5631,22 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 24 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 22 flowey_lib_common::git_checkout 3 + run: flowey e 24 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 24 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: install Rust - run: flowey e 22 flowey_lib_common::install_rust 0 + run: flowey e 24 flowey_lib_common::install_rust 0 shell: bash - run: ${{ github.token }} - shell: flowey v 22 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 24 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: test cargo xflowey build-igvm x64 --install-missing-deps - run: flowey e 22 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 + run: flowey e 24 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 shell: bash job3: name: publish openvmm.dev diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 0993b25b2..7a4f6cfdb 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -1253,7 +1253,172 @@ jobs: with: name: aarch64-openhcl-igvm-extras path: ${{ runner.temp }}/publish_artifacts/aarch64-openhcl-igvm-extras/ + - name: 🌼🧼 Redact bootstrap var db + run: rm $AgentTempDirNormal/bootstrapped-flowey/job11.json + shell: bash + - name: 🌼πŸ₯Ύ Publish bootstrapped flowey + uses: actions/upload-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-linux-uid-7 + path: ${{ runner.temp }}/bootstrapped-flowey job12: + name: verify openhcl binary size [aarch64] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB + permissions: + contents: read + id-token: write + needs: + - job11 + if: github.event.pull_request.draft == false + steps: + - name: 🌼πŸ₯Ύ Download bootstrapped flowey + uses: actions/download-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-linux-uid-7 + path: ${{ runner.temp }}/bootstrapped-flowey + - name: πŸŒΌπŸ“¦ Download aarch64-openhcl-igvm-extras + uses: actions/download-artifact@v4 + with: + name: aarch64-openhcl-igvm-extras + path: ${{ runner.temp }}/used_artifacts/aarch64-openhcl-igvm-extras/ + - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $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/bootstrapped-flowey/flowey + + echo '"debug"' | flowey v 12 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 12 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 12 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + echo "$AgentTempDirNormal/used_artifacts/aarch64-openhcl-igvm-extras" | flowey v 12 'artifact_use_from_aarch64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + shell: bash + - name: install Rust + run: flowey e 12 flowey_lib_common::install_rust 0 + shell: bash + - name: detect active toolchain + run: flowey e 12 flowey_lib_common::install_rust 1 + shell: bash + - name: report common cargo flags + run: flowey e 12 flowey_lib_common::cfg_cargo_common_flags 0 + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 12 flowey_lib_common::git_checkout 0 + shell: bash + - run: | + flowey v 12 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 12 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '1' + path: repo0 + persist-credentials: ${{ env.floweyvar1 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 12 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 12 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey e 12 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 12 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 12 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 12 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 12 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 12 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 12 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 12 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github releases + run: flowey e 12 flowey_lib_common::download_gh_release 1 + shell: bash + - name: checking if packages need to be installed + run: flowey e 12 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 12 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: unpack protoc + run: flowey e 12 flowey_lib_common::download_protoc 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey e 12 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: symlink protoc + run: flowey e 12 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: unpack openvmm-deps archive + run: flowey e 12 flowey_lib_hvlite::download_openvmm_deps 0 + shell: bash + - name: extract Aarch64 sysroot.tar.gz + run: flowey e 12 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + shell: bash + - name: inject cross env + run: flowey e 12 flowey_lib_hvlite::init_cross_build 0 + shell: bash + - name: cargo build xtask + run: flowey e 12 flowey_lib_common::run_cargo_build 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 0 + shell: bash + - name: split debug symbols + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 0 + shell: bash + - name: reporting split debug info + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 1 + shell: bash + - name: report built xtask + run: flowey e 12 flowey_lib_hvlite::build_xtask 0 + shell: bash + - name: binary size comparison + run: flowey e 12 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 12 flowey_lib_common::cache 3 + shell: bash + job13: name: build openhcl [x64-linux] runs-on: - self-hosted @@ -1339,37 +1504,37 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 12 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 12 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 12 'param0' --update-from-stdin + cat <<'EOF' | flowey v 13 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 12 'artifact_publish_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 13 'artifact_publish_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" - echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string 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' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string shell: bash - name: checking if packages need to be installed - run: flowey e 12 flowey_lib_common::install_dist_pkg 0 + run: flowey e 13 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 12 flowey_lib_common::install_dist_pkg 1 + run: flowey e 13 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 12 flowey_lib_common::download_gh_release 0 + run: flowey e 13 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 12 flowey_lib_common::cache 0 + run: flowey e 13 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 12 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' - run: | - flowey v 12 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - id: flowey_lib_common__cache__1 @@ -1379,35 +1544,35 @@ jobs: path: ${{ env.floweyvar2 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 12 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 12 flowey_lib_common::cache 2 + run: flowey e 13 flowey_lib_common::cache 2 shell: bash - name: download artifacts from github releases - run: flowey e 12 flowey_lib_common::download_gh_release 1 + run: flowey e 13 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 12 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 13 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: install Rust - run: flowey e 12 flowey_lib_common::install_rust 0 + run: flowey e 13 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 12 flowey_lib_common::install_rust 1 + run: flowey e 13 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 12 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 12 flowey_lib_common::git_checkout 0 + run: flowey e 13 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 12 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 12 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -1420,403 +1585,403 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 12 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 12 flowey_lib_common::git_checkout 3 + run: flowey e 13 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 12 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 12 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 12 flowey_lib_common::download_protoc 0 + run: flowey e 13 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 12 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey e 12 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 12 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: cargo build openhcl_boot - run: flowey e 12 flowey_lib_common::run_cargo_build 1 + run: flowey e 13 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 5 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 5 shell: bash - name: reporting split debug info - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built openhcl_boot - run: flowey e 12 flowey_lib_hvlite::build_openhcl_boot 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_boot 0 shell: bash - name: unpack Microsoft.OHCL.Kernel.Dev.6.6.63.1-x64.tar.gz - run: flowey e 12 flowey_lib_hvlite::download_openhcl_kernel_package 2 + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 2 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 shell: bash - name: unpack openvmm-deps archive - run: flowey e 12 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 12 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 12 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build openvmm_hcl - run: flowey e 12 flowey_lib_common::run_cargo_build 2 + run: flowey e 13 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: report built openvmm_hcl - run: flowey e 12 flowey_lib_hvlite::build_openvmm_hcl 0 + run: flowey e 13 flowey_lib_hvlite::build_openvmm_hcl 0 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 shell: bash - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 shell: bash - name: building openhcl initrd - run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 4 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 4 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 shell: bash - name: enumerate igvm resources - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 shell: bash - name: inject cross env - run: flowey e 12 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo build igvmfilegen - run: flowey e 12 flowey_lib_common::run_cargo_build 0 + run: flowey e 13 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 7 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 7 shell: bash - name: reporting split debug info - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built igvmfilegen - run: flowey e 12 flowey_lib_hvlite::build_igvmfilegen 0 + run: flowey e 13 flowey_lib_hvlite::build_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 shell: bash - name: building igvm file - run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 4 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 4 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 shell: bash - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 shell: bash - name: unpack Microsoft.OHCL.Kernel.6.6.63.1-x64.tar.gz - run: flowey e 12 flowey_lib_hvlite::download_openhcl_kernel_package 0 + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 0 shell: bash - name: building openhcl initrd - run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 0 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 shell: bash - name: enumerate igvm resources - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 shell: bash - name: building igvm file - run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 0 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 shell: bash - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 shell: bash - name: building openhcl initrd - run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 1 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 1 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 shell: bash - name: enumerate igvm resources - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 shell: bash - name: building igvm file - run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 1 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 1 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 shell: bash - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 4 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 4 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 shell: bash - name: building openhcl initrd - run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 2 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 2 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 shell: bash - name: enumerate igvm resources - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 shell: bash - name: building igvm file - run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 2 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 2 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 shell: bash - name: unpack Microsoft.OHCL.Kernel.6.6.63.1-cvm-x64.tar.gz - run: flowey e 12 flowey_lib_hvlite::download_openhcl_kernel_package 1 + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 1 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 shell: bash - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 shell: bash - name: building openhcl initrd - run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 3 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 3 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 shell: bash - name: enumerate igvm resources - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 shell: bash - name: building igvm file - run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 3 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 3 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 shell: bash - name: describe OpenHCL igvm artifact - run: flowey e 12 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 + run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 shell: bash - name: copying OpenHCL igvm files to artifact dir - run: flowey e 12 flowey_lib_common::copy_to_artifact_dir 1 + run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 1 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 shell: bash - name: 🌼 Zip Vars - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 shell: bash - name: describe OpenHCL igvm extras artifact - run: flowey e 12 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 + run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 shell: bash - name: copying OpenHCL igvm extras to artifact dir - run: flowey e 12 flowey_lib_common::copy_to_artifact_dir 0 + run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: inject cross env - run: flowey e 12 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build pipette - run: flowey e 12 flowey_lib_common::run_cargo_build 3 + run: flowey e 13 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 6 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 6 shell: bash - name: reporting split debug info - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 8 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 8 shell: bash - name: report built pipette - run: flowey e 12 flowey_lib_hvlite::build_pipette 0 + run: flowey e 13 flowey_lib_hvlite::build_pipette 0 shell: bash - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::artifact_pipette::publish 0 + run: flowey e 13 flowey_lib_hvlite::artifact_pipette::publish 0 shell: bash - name: copying pipette to artifact dir - run: flowey e 12 flowey_lib_common::copy_to_artifact_dir 2 + run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 12 flowey_lib_common::cache 3 + run: flowey e 13 flowey_lib_common::cache 3 shell: bash - name: πŸŒΌπŸ“¦ Publish x64-linux-musl-pipette uses: actions/upload-artifact@v4 @@ -1834,57 +1999,214 @@ jobs: name: x64-openhcl-igvm-extras path: ${{ runner.temp }}/publish_artifacts/x64-openhcl-igvm-extras/ - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job12.json + run: rm $AgentTempDirNormal/bootstrapped-flowey/job13.json shell: bash - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: name: _internal-flowey-bootstrap-x86_64-linux-uid-6 path: ${{ runner.temp }}/bootstrapped-flowey - job13: - name: clippy [windows], unit tests [x64-windows] + job14: + name: verify openhcl binary size [x64] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB permissions: contents: read id-token: write + needs: + - job13 if: github.event.pull_request.draft == false steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey + - name: 🌼πŸ₯Ύ Download bootstrapped flowey + uses: actions/download-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + path: ${{ runner.temp }}/bootstrapped-flowey + - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm-extras + uses: actions/download-artifact@v4 + with: + name: x64-openhcl-igvm-extras + path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm-extras/ + - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash - - 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.82.0 -y - . "$HOME/.cargo/env" - echo "$HOME/.cargo/bin" >> "$GITHUB_PATH" - rustup show - if: runner.os == 'Linux' - name: rustup (Linux) + 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/bootstrapped-flowey/flowey + + echo '"debug"' | flowey v 14 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 14 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras" | flowey v 14 'artifact_use_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + shell: bash + - name: install Rust + run: flowey e 14 flowey_lib_common::install_rust 0 + shell: bash + - name: detect active toolchain + run: flowey e 14 flowey_lib_common::install_rust 1 + shell: bash + - name: report common cargo flags + run: flowey e 14 flowey_lib_common::cfg_cargo_common_flags 0 + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 14 flowey_lib_common::git_checkout 0 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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'X64' - name: rustup (Windows X64) + flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - set -x - curl --fail -sSfLo rustup-init.exe https://win.rustup.rs/aarch64 --output rustup-init - ./rustup-init.exe -y --default-toolchain=1.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) + flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash - - uses: actions/checkout@v4 - with: - path: flowey_bootstrap - - name: Build flowey + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '1' + path: repo0 + persist-credentials: ${{ env.floweyvar1 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 14 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 14 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 14 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 14 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github releases + run: flowey e 14 flowey_lib_common::download_gh_release 1 + shell: bash + - name: checking if packages need to be installed + run: flowey e 14 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 14 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: unpack protoc + run: flowey e 14 flowey_lib_common::download_protoc 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: symlink protoc + run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: unpack openvmm-deps archive + run: flowey e 14 flowey_lib_hvlite::download_openvmm_deps 0 + shell: bash + - name: extract X64 sysroot.tar.gz + run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + shell: bash + - name: inject cross env + run: flowey e 14 flowey_lib_hvlite::init_cross_build 0 + shell: bash + - name: cargo build xtask + run: flowey e 14 flowey_lib_common::run_cargo_build 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 0 + shell: bash + - name: split debug symbols + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 0 + shell: bash + - name: reporting split debug info + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 1 + shell: bash + - name: report built xtask + run: flowey e 14 flowey_lib_hvlite::build_xtask 0 + shell: bash + - name: binary size comparison + run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 14 flowey_lib_common::cache 3 + shell: bash + job15: + name: clippy [windows], unit tests [x64-windows] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 + permissions: + contents: read + id-token: write + if: github.event.pull_request.draft == false + steps: + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 + with: + path: flowey_bootstrap + - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci working-directory: flowey_bootstrap shell: bash @@ -1926,31 +2248,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 13 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 15 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 13 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 15 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey.exe e 13 flowey_lib_common::install_rust 0 + run: flowey.exe e 15 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 13 flowey_lib_common::install_rust 1 + run: flowey.exe e 15 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey.exe e 13 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 15 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 13 flowey_lib_common::git_checkout 0 + run: flowey.exe e 15 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -1963,29 +2285,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 13 flowey_lib_common::git_checkout 3 + run: flowey.exe e 15 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 13 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 15 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 13 flowey_lib_common::cache 4 + run: flowey.exe e 15 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 13 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 13 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -1995,86 +2317,86 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 13 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 13 flowey_lib_common::cache 6 + run: flowey.exe e 15 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 13 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 15 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 13 flowey_lib_common::download_protoc 0 + run: flowey.exe e 15 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 13 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey.exe e 13 flowey_lib_hvlite::init_cross_build 3 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey.exe e 13 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 13 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 13 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey.exe e 13 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey.exe e 13 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 13 flowey_lib_hvlite::download_lxutil 1 + run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 13 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: cargo clippy - run: flowey.exe e 13 flowey_lib_common::run_cargo_clippy 0 + run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey.exe e 13 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey.exe e 13 flowey_lib_hvlite::init_cross_build 4 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey.exe e 13 flowey_lib_common::run_cargo_build 1 + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 13 flowey_lib_hvlite::run_cargo_build 1 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey.exe e 13 flowey_lib_hvlite::build_xtask 1 + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey.exe e 13 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey.exe e 13 flowey_lib_common::run_cargo_clippy 1 + run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 13 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 13 flowey_lib_common::cache 0 + run: flowey.exe e 15 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2084,65 +2406,65 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 13 flowey_lib_common::cache 2 + run: flowey.exe e 15 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 13 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 13 flowey_lib_common::install_rust 2 + run: flowey.exe e 15 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 13 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey.exe e 13 flowey_lib_hvlite::init_cross_build 5 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey.exe e 13 flowey_lib_common::run_cargo_build 2 + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 13 flowey_lib_hvlite::run_cargo_build 2 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: report built xtask - run: flowey.exe e 13 flowey_lib_hvlite::build_xtask 2 + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey.exe e 13 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey.exe e 13 flowey_lib_hvlite::init_cross_build 2 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 13 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 13 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 13 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 13 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 13 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 15 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 13 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 15 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 13 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 15 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 13 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 13 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2154,18 +2476,18 @@ jobs: name: 'publish test results: x64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 13 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-pc-windows-msvc - run: flowey.exe e 13 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 13 flowey_lib_common::cache 3 + run: flowey.exe e 15 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 13 flowey_lib_common::cache 7 + run: flowey.exe e 15 flowey_lib_common::cache 7 shell: bash - job14: + job16: name: clippy [linux, macos], unit tests [x64-linux] runs-on: - self-hosted @@ -2251,40 +2573,40 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 14 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 14 'param0' --update-from-stdin + cat <<'EOF' | flowey v 16 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 14 flowey_lib_common::install_rust 0 + run: flowey e 16 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 14 flowey_lib_common::install_rust 1 + run: flowey e 16 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 14 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: checking if packages need to be installed - run: flowey e 14 flowey_lib_common::install_dist_pkg 0 + run: flowey e 16 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 14 flowey_lib_common::install_dist_pkg 1 + run: flowey e 16 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 14 flowey_lib_common::download_gh_release 0 + run: flowey e 16 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 4 + run: flowey e 16 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2294,29 +2616,29 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 6 + run: flowey e 16 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 14 flowey_lib_common::download_gh_release 1 + run: flowey e 16 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 14 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 14 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 14 flowey_lib_common::git_checkout 0 + run: flowey e 16 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2329,119 +2651,119 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 14 flowey_lib_common::git_checkout 3 + run: flowey e 16 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 14 flowey_lib_common::download_protoc 0 + run: flowey e 16 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 6 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 6 shell: bash - name: cargo build xtask - run: flowey e 14 flowey_lib_common::run_cargo_build 3 + run: flowey e 16 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 14 flowey_lib_hvlite::build_xtask 1 + run: flowey e 16 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 14 flowey_lib_hvlite::_jobs::check_clippy 2 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 2 shell: bash - name: cargo clippy - run: flowey e 14 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey e 14 flowey_lib_common::run_cargo_build 2 + run: flowey e 16 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 14 flowey_lib_hvlite::build_xtask 0 + run: flowey e 16 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 14 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 14 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 14 flowey_lib_common::run_cargo_build 0 + run: flowey e 16 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 14 flowey_lib_hvlite::build_xtask 2 + run: flowey e 16 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine clippy exclusions - run: flowey e 14 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 14 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: create cargo-nextest cache dir - run: flowey e 14 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 0 + run: flowey e 16 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2451,71 +2773,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 2 + run: flowey e 16 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 14 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 14 flowey_lib_common::install_rust 2 + run: flowey e 16 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 14 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey e 14 flowey_lib_common::run_cargo_build 1 + run: flowey e 16 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: report built xtask - run: flowey e 14 flowey_lib_hvlite::build_xtask 3 + run: flowey e 16 flowey_lib_hvlite::build_xtask 3 shell: bash - name: determine unit test exclusions - run: flowey e 14 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 14 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 14 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_common::publish_test_results 0 + run: flowey e 16 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_common::publish_test_results 1 + run: flowey e 16 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_common::publish_test_results 2 + run: flowey e 16 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 14 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 14 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2527,18 +2849,18 @@ jobs: name: 'publish test results: x64-linux-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-gnu - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 14 flowey_lib_common::cache 3 + run: flowey e 16 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 14 flowey_lib_common::cache 7 + run: flowey e 16 flowey_lib_common::cache 7 shell: bash - job15: + job17: name: clippy [linux-musl, misc nostd], unit tests [x64-linux-musl] runs-on: - self-hosted @@ -2624,31 +2946,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 15 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 17 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 15 'param0' --update-from-stdin + cat <<'EOF' | flowey v 17 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 15 flowey_lib_common::install_rust 0 + run: flowey e 17 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 15 flowey_lib_common::install_rust 1 + run: flowey e 17 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 15 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 17 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 15 flowey_lib_common::git_checkout 0 + run: flowey e 17 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2661,35 +2983,35 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 15 flowey_lib_common::git_checkout 3 + run: flowey e 17 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: checking if packages need to be installed - run: flowey e 15 flowey_lib_common::install_dist_pkg 0 + run: flowey e 17 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 15 flowey_lib_common::install_dist_pkg 1 + run: flowey e 17 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 15 flowey_lib_common::download_gh_release 0 + run: flowey e 17 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 4 + run: flowey e 17 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2699,119 +3021,119 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 6 + run: flowey e 17 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 15 flowey_lib_common::download_gh_release 1 + run: flowey e 17 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack openvmm-deps archive - run: flowey e 15 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 17 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 15 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 17 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 15 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 17 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 15 flowey_lib_common::download_protoc 0 + run: flowey e 17 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 1 + run: flowey e 17 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 0 + run: flowey e 17 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: extract Aarch64 sysroot.tar.gz - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 4 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 4 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 2 + run: flowey e 17 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 1 + run: flowey e 17 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 3 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 3 shell: bash - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 5 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 5 shell: bash - name: create cargo-nextest cache dir - run: flowey e 15 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 17 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 0 + run: flowey e 17 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2821,71 +3143,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 2 + run: flowey e 17 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 15 flowey_lib_common::install_rust 2 + run: flowey e 17 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 15 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 17 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 0 + run: flowey e 17 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 2 + run: flowey e 17 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 0 + run: flowey e 17 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 1 + run: flowey e 17 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 2 + run: flowey e 17 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2897,18 +3219,18 @@ jobs: name: 'publish test results: x64-linux-musl-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-musl - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 15 flowey_lib_common::cache 3 + run: flowey e 17 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 15 flowey_lib_common::cache 7 + run: flowey e 17 flowey_lib_common::cache 7 shell: bash - job16: + job18: name: unit tests [aarch64-windows] runs-on: - self-hosted @@ -2995,28 +3317,28 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 16 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 16 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: report common cargo flags - run: flowey.exe e 16 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 18 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 16 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 16 flowey_lib_common::cache 0 + run: flowey.exe e 18 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3026,35 +3348,35 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 16 flowey_lib_common::cache 2 + run: flowey.exe e 18 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 18 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: install Rust - run: flowey.exe e 16 flowey_lib_common::install_rust 0 + run: flowey.exe e 18 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 16 flowey_lib_common::install_rust 1 + run: flowey.exe e 18 flowey_lib_common::install_rust 1 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 16 flowey_lib_common::install_rust 2 + run: flowey.exe e 18 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 16 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 16 flowey_lib_common::git_checkout 0 + run: flowey.exe e 18 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3067,29 +3389,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 16 flowey_lib_common::git_checkout 3 + run: flowey.exe e 18 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 16 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 16 flowey_lib_common::cache 4 + run: flowey.exe e 18 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3099,74 +3421,74 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 16 flowey_lib_common::cache 6 + run: flowey.exe e 18 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 16 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 16 flowey_lib_common::download_protoc 0 + run: flowey.exe e 18 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey.exe e 16 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 18 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 16 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 18 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine unit test exclusions - run: flowey.exe e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 18 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 16 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 18 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: inject cross env - run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 16 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 16 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3178,18 +3500,18 @@ jobs: name: 'publish test results: aarch64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for aarch64-pc-windows-msvc - run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 16 flowey_lib_common::cache 3 + run: flowey.exe e 18 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 16 flowey_lib_common::cache 7 + run: flowey.exe e 18 flowey_lib_common::cache 7 shell: bash - job17: + job19: name: run vmm-tests [x64-windows-intel] runs-on: - self-hosted @@ -3199,8 +3521,8 @@ jobs: contents: read id-token: write needs: - - job12 - - job12 + - job13 + - job13 - job10 - job8 - job8 @@ -3253,31 +3575,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 17 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 17 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 17 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 17 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 17 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 17 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 17 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 17 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 17 flowey_lib_common::cache 4 + run: flowey.exe e 19 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -3287,26 +3609,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 17 flowey_lib_common::cache 6 + run: flowey.exe e 19 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 17 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 17 flowey_lib_common::cache 8 + run: flowey.exe e 19 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 17 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -3316,26 +3638,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 17 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 17 flowey_lib_common::cache 10 + run: flowey.exe e 19 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 17 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 17 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 17 flowey_lib_common::git_checkout 0 + run: flowey.exe e 19 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3348,53 +3670,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 17 flowey_lib_common::git_checkout 3 + run: flowey.exe e 19 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 17 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 17 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 17 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 17 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 17 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 17 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 17 flowey_lib_common::cache 0 + run: flowey.exe e 19 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -3404,56 +3726,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 17 flowey_lib_common::cache 2 + run: flowey.exe e 19 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 17 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 17 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 17 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 17 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 17 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 17 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 17 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3465,17 +3787,17 @@ jobs: name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3487,17 +3809,17 @@ jobs: name: 'publish test results: logs (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3509,23 +3831,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3537,397 +3859,248 @@ jobs: name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 17 flowey_lib_common::cache 11 + run: flowey.exe e 19 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 17 flowey_lib_common::cache 3 + run: flowey.exe e 19 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 17 flowey_lib_common::cache 7 + run: flowey.exe e 19 flowey_lib_common::cache 7 shell: bash - job18: - name: run vmm-tests [x64-windows-amd] + job2: + name: build and check docs [x64-linux] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 - - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB permissions: contents: read id-token: write - needs: - - job12 - - job12 - - job10 - - job8 - - job8 - - job8 if: github.event.pull_request.draft == false steps: - - name: 🌼πŸ₯Ύ Download bootstrapped flowey - uses: actions/download-artifact@v4 + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 with: - name: _internal-flowey-bootstrap-x86_64-windows-uid-10 - path: ${{ runner.temp }}/bootstrapped-flowey - - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi - uses: actions/download-artifact@v4 - with: - name: x64-guest_test_uefi - path: ${{ runner.temp }}/used_artifacts/x64-guest_test_uefi/ - - name: πŸŒΌπŸ“¦ Download x64-linux-musl-pipette - uses: actions/download-artifact@v4 - with: - name: x64-linux-musl-pipette - path: ${{ runner.temp }}/used_artifacts/x64-linux-musl-pipette/ - - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm - uses: actions/download-artifact@v4 - with: - name: x64-openhcl-igvm - path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm/ - - name: πŸŒΌπŸ“¦ Download x64-windows-openvmm - uses: actions/download-artifact@v4 - with: - name: x64-windows-openvmm - path: ${{ runner.temp }}/used_artifacts/x64-windows-openvmm/ - - name: πŸŒΌπŸ“¦ Download x64-windows-pipette - uses: actions/download-artifact@v4 - with: - name: x64-windows-pipette - path: ${{ runner.temp }}/used_artifacts/x64-windows-pipette/ - - name: πŸŒΌπŸ“¦ Download x64-windows-vmm-tests-archive - uses: actions/download-artifact@v4 - with: - name: x64-windows-vmm-tests-archive - path: ${{ runner.temp }}/used_artifacts/x64-windows-vmm-tests-archive/ + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci + working-directory: flowey_bootstrap + shell: bash + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey + working-directory: flowey_bootstrap + shell: bash + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap + shell: bash + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + 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.exe + chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 2 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin + cat <<'EOF' | flowey v 2 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 18 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 18 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 18 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 18 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 18 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 18 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string - shell: bash - - name: create cargo-nextest cache dir - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 - shell: bash - - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar8' - - run: | - flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar9' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar8 }} - path: ${{ env.floweyvar9 }} - name: 'Restore cache: cargo-nextest' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 6 - shell: bash - - name: installing cargo-nextest - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 - shell: bash - - name: create gh-release-download cache dir - run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 8 - shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar10' - - run: | - flowey.exe v 18 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar11' - - id: flowey_lib_common__cache__9 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar10 }} - path: ${{ env.floweyvar11 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 10 - shell: bash - - name: download artifacts from github releases - run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 - shell: bash - - name: unpack mu_msvm package (x64) - run: flowey.exe e 18 flowey_lib_hvlite::download_uefi_mu_msvm 0 + mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 18 flowey_lib_common::git_checkout 0 + run: flowey e 2 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar5' + name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: fetch-depth: '1' path: repo0 - persist-credentials: ${{ env.floweyvar5 }} + persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 18 flowey_lib_common::git_checkout 3 + run: flowey e 2 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: move MSVM.fd into its magic folder - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 - shell: bash - - name: creating new test content dir - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 - shell: bash - - name: resolve openvmm artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_openvmm::resolve 0 - shell: bash - - name: resolve pipette artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 1 - shell: bash - - name: resolve pipette artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 0 - shell: bash - - name: resolve guest_test_uefi artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - - name: resolve OpenHCL igvm artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - - name: create azcopy cache dir - run: flowey.exe e 18 flowey_lib_common::download_azcopy 0 + - name: create gh-release-download cache dir + run: flowey e 2 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 0 + run: flowey e 2 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar1' - run: | - flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar7' + name: 🌼 Write to 'floweyvar2' - id: flowey_lib_common__cache__1 uses: actions/cache@v4 with: - key: ${{ env.floweyvar6 }} - path: ${{ env.floweyvar7 }} - name: 'Restore cache: azcopy' + key: ${{ env.floweyvar1 }} + path: ${{ env.floweyvar2 }} + name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 2 - shell: bash - - name: installing azcopy - run: flowey.exe e 18 flowey_lib_common::download_azcopy 1 - shell: bash - - name: calculating required VMM tests disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 - shell: bash - - name: downloading VMM test disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 - shell: bash - - name: report downloaded VMM test disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 - shell: bash - - name: unpack openvmm-deps archive - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_deps 0 - shell: bash - - name: setting up vmm_tests env - run: flowey.exe e 18 flowey_lib_hvlite::init_vmm_tests_env 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 1 - shell: bash - - name: resolve vmm tests archive artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 - shell: bash - - name: run 'vmm_tests' nextest tests - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 - shell: bash - - name: write results - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 4 + run: flowey e 2 flowey_lib_common::cache 2 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 5 + - name: download artifacts from github releases + run: flowey e 2 flowey_lib_common::download_gh_release 1 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: checking if packages need to be installed + run: flowey e 2 flowey_lib_common::install_dist_pkg 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + - name: installing packages + run: flowey e 2 flowey_lib_common::install_dist_pkg 1 shell: bash - name: 🌼 Write to 'floweyvar2' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__6 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-amd-vmm-tests-crash-dumps - path: ${{ env.floweyvar2 }} - name: 'publish test results: crash-dumps (x64-windows-amd-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 7 + - name: unpack protoc + run: flowey e 2 flowey_lib_common::download_protoc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 8 + - name: report openvmm magicpath dir + run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: symlink protoc + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + - name: install Rust + run: flowey e 2 flowey_lib_common::install_rust 0 shell: bash - name: 🌼 Write to 'floweyvar3' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__9 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-amd-vmm-tests-logs - path: ${{ env.floweyvar3 }} - name: 'publish test results: logs (x64-windows-amd-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 10 + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 11 + - name: move lxutil.dll into its magic folder + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: detect active toolchain + run: flowey e 2 flowey_lib_common::install_rust 1 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + - name: report common cargo flags + run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: 🌼 Write to 'floweyvar4' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__12 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-amd-vmm-tests-openhcl-dumps - path: ${{ env.floweyvar4 }} - name: 'publish test results: openhcl-dumps (x64-windows-amd-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + - name: construct cargo doc command + run: flowey e 2 flowey_lib_common::run_cargo_doc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 + - name: document repo for target x86_64-unknown-linux-gnu + run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 + - name: archive rustdoc dir + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + - name: copying rustdoc to artifact dir + run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + - name: 'validate cache entry: gh-release-download' + run: flowey e 2 flowey_lib_common::cache 3 shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__3 + - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc uses: actions/upload-artifact@v4 with: - name: x64-windows-amd-vmm-tests-junit-xml - path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-windows-amd-vmm-tests (JUnit XML)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: report test results to overall pipeline status - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 18 flowey_lib_common::cache 11 - shell: bash - - name: 'validate cache entry: azcopy' - run: flowey.exe e 18 flowey_lib_common::cache 3 - shell: bash - - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 18 flowey_lib_common::cache 7 - shell: bash - job19: - name: run vmm-tests [x64-linux] + name: x64-linux-rustdoc + path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ + job20: + name: run vmm-tests [x64-windows-amd] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB + - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 + - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB permissions: contents: read id-token: write needs: - - job12 - - job10 + - job13 + - job13 - job10 - job8 - - job10 + - job8 + - job8 if: github.event.pull_request.draft == false steps: - name: 🌼πŸ₯Ύ Download bootstrapped flowey uses: actions/download-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + name: _internal-flowey-bootstrap-x86_64-windows-uid-10 path: ${{ runner.temp }}/bootstrapped-flowey - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi uses: actions/download-artifact@v4 @@ -3939,21 +4112,26 @@ jobs: with: name: x64-linux-musl-pipette path: ${{ runner.temp }}/used_artifacts/x64-linux-musl-pipette/ - - name: πŸŒΌπŸ“¦ Download x64-linux-openvmm + - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm uses: actions/download-artifact@v4 with: - name: x64-linux-openvmm - path: ${{ runner.temp }}/used_artifacts/x64-linux-openvmm/ - - name: πŸŒΌπŸ“¦ Download x64-linux-vmm-tests-archive + name: x64-openhcl-igvm + path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm/ + - name: πŸŒΌπŸ“¦ Download x64-windows-openvmm uses: actions/download-artifact@v4 with: - name: x64-linux-vmm-tests-archive - path: ${{ runner.temp }}/used_artifacts/x64-linux-vmm-tests-archive/ + name: x64-windows-openvmm + path: ${{ runner.temp }}/used_artifacts/x64-windows-openvmm/ - name: πŸŒΌπŸ“¦ Download x64-windows-pipette uses: actions/download-artifact@v4 with: name: x64-windows-pipette path: ${{ runner.temp }}/used_artifacts/x64-windows-pipette/ + - name: πŸŒΌπŸ“¦ Download x64-windows-vmm-tests-archive + uses: actions/download-artifact@v4 + with: + name: x64-windows-vmm-tests-archive + path: ${{ runner.temp }}/used_artifacts/x64-windows-vmm-tests-archive/ - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash name: πŸŒΌπŸ“¦ Add flowey to PATH @@ -3963,35 +4141,33 @@ jobs: 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 + chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey v 19 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 20 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 19 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 20 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 19 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 19 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - shell: bash - - name: ensure /dev/kvm is accessible - run: flowey e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 20 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 20 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 20 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey e 19 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 19 flowey_lib_common::cache 4 + run: flowey.exe e 20 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4001,32 +4177,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 19 flowey_lib_common::cache 6 + run: flowey.exe e 20 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey e 19 flowey_lib_common::download_cargo_nextest 1 - 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 + run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 19 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 20 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 19 flowey_lib_common::cache 8 + run: flowey.exe e 20 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4036,26 +4206,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 19 flowey_lib_common::cache 10 + run: flowey.exe e 20 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey e 19 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 20 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 19 flowey_lib_common::git_checkout 0 + run: flowey.exe e 20 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4068,50 +4238,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 19 flowey_lib_common::git_checkout 3 + run: flowey.exe e 20 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + shell: bash + - name: resolve OpenHCL igvm artifact + run: flowey.exe e 20 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey e 19 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 20 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey e 19 flowey_lib_common::cache 0 + run: flowey.exe e 20 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4121,152 +4294,152 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 19 flowey_lib_common::cache 2 + run: flowey.exe e 20 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey e 19 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 20 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey e 19 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey e 19 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 20 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 + run: flowey.exe e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey e 19 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 19 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__publish_test_results__6 uses: actions/upload-artifact@v4 with: - name: x64-linux-vmm-tests-crash-dumps + name: x64-windows-amd-vmm-tests-crash-dumps path: ${{ env.floweyvar2 }} - name: 'publish test results: crash-dumps (x64-linux-vmm-tests)' + name: 'publish test results: crash-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__publish_test_results__9 uses: actions/upload-artifact@v4 with: - name: x64-linux-vmm-tests-logs + name: x64-windows-amd-vmm-tests-logs path: ${{ env.floweyvar3 }} - name: 'publish test results: logs (x64-linux-vmm-tests)' + name: 'publish test results: logs (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__publish_test_results__12 uses: actions/upload-artifact@v4 with: - name: x64-linux-vmm-tests-openhcl-dumps + name: x64-windows-amd-vmm-tests-openhcl-dumps path: ${{ env.floweyvar4 }} - name: 'publish test results: openhcl-dumps (x64-linux-vmm-tests)' + name: 'publish test results: openhcl-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 19 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__publish_test_results__3 uses: actions/upload-artifact@v4 with: - name: x64-linux-vmm-tests-junit-xml + name: x64-windows-amd-vmm-tests-junit-xml path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-linux-vmm-tests (JUnit XML)' + name: 'publish test results: x64-windows-amd-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 19 flowey_lib_common::cache 11 + run: flowey.exe e 20 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey e 19 flowey_lib_common::cache 3 + run: flowey.exe e 20 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 19 flowey_lib_common::cache 7 + run: flowey.exe e 20 flowey_lib_common::cache 7 shell: bash - job2: - name: build and check docs [x64-linux] + job21: + name: run vmm-tests [x64-linux] runs-on: - self-hosted - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 @@ -4274,75 +4447,47 @@ jobs: permissions: contents: read id-token: write + needs: + - job13 + - job10 + - job10 + - job8 + - job10 if: github.event.pull_request.draft == false steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey - shell: bash - - 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.82.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.82.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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) - shell: bash - - uses: actions/checkout@v4 + - name: 🌼πŸ₯Ύ Download bootstrapped flowey + uses: actions/download-artifact@v4 with: - path: flowey_bootstrap - - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci - working-directory: flowey_bootstrap - shell: bash - - name: Stage flowey artifact - run: | - mkdir ./flowey_bootstrap_temp - mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey - working-directory: flowey_bootstrap - shell: bash - - name: Copy flowey artifact - run: | - OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') - mkdir -p $OutDirNormal - cp -r ./flowey_bootstrap_temp/* $OutDirNormal - working-directory: flowey_bootstrap - shell: bash - - name: Cleanup staged flowey artifact - run: rm -rf ./flowey_bootstrap_temp - working-directory: flowey_bootstrap - shell: bash + name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + path: ${{ runner.temp }}/bootstrapped-flowey + - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi + uses: actions/download-artifact@v4 + with: + name: x64-guest_test_uefi + path: ${{ runner.temp }}/used_artifacts/x64-guest_test_uefi/ + - name: πŸŒΌπŸ“¦ Download x64-linux-musl-pipette + uses: actions/download-artifact@v4 + with: + name: x64-linux-musl-pipette + path: ${{ runner.temp }}/used_artifacts/x64-linux-musl-pipette/ + - name: πŸŒΌπŸ“¦ Download x64-linux-openvmm + uses: actions/download-artifact@v4 + with: + name: x64-linux-openvmm + path: ${{ runner.temp }}/used_artifacts/x64-linux-openvmm/ + - name: πŸŒΌπŸ“¦ Download x64-linux-vmm-tests-archive + uses: actions/download-artifact@v4 + with: + name: x64-linux-vmm-tests-archive + path: ${{ runner.temp }}/used_artifacts/x64-linux-vmm-tests-archive/ + - name: πŸŒΌπŸ“¦ Download x64-windows-pipette + uses: actions/download-artifact@v4 + with: + name: x64-windows-pipette + path: ${{ runner.temp }}/used_artifacts/x64-windows-pipette/ - 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 }}" @@ -4351,130 +4496,307 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 2 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 21 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 2 'param0' --update-from-stdin + cat <<'EOF' | flowey v 21 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 21 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 21 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 21 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 21 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 21 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + shell: bash + - name: ensure /dev/kvm is accessible + run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + shell: bash + - name: create cargo-nextest cache dir + run: flowey e 21 flowey_lib_common::download_cargo_nextest 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 21 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar8' + - run: | + flowey v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar9' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar8 }} + path: ${{ env.floweyvar9 }} + name: 'Restore cache: cargo-nextest' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 21 flowey_lib_common::cache 6 + shell: bash + - name: installing cargo-nextest + run: flowey e 21 flowey_lib_common::download_cargo_nextest 1 + shell: bash + - name: checking if packages need to be installed + run: flowey e 21 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 21 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 21 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 21 flowey_lib_common::cache 8 + shell: bash + - run: | + flowey v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar10' + - run: | + flowey v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar11' + - id: flowey_lib_common__cache__9 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar10 }} + path: ${{ env.floweyvar11 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} + shell: flowey v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 21 flowey_lib_common::cache 10 + shell: bash + - name: download artifacts from github releases + run: flowey e 21 flowey_lib_common::download_gh_release 1 + shell: bash + - name: unpack mu_msvm package (x64) + run: flowey e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 2 flowey_lib_common::git_checkout 0 + run: flowey e 21 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar3' + name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: fetch-depth: '1' path: repo0 - persist-credentials: ${{ env.floweyvar3 }} + persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 2 flowey_lib_common::git_checkout 3 + run: flowey e 21 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + - name: report openvmm magicpath dir + run: flowey e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - - name: create gh-release-download cache dir - run: flowey e 2 flowey_lib_common::download_gh_release 0 + - name: move MSVM.fd into its magic folder + run: flowey e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 + shell: bash + - name: creating new test content dir + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + shell: bash + - name: resolve openvmm artifact + run: flowey e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 + shell: bash + - name: resolve pipette artifact + run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 + shell: bash + - name: resolve pipette artifact + run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 + shell: bash + - name: resolve guest_test_uefi artifact + run: flowey e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + shell: bash + - name: create azcopy cache dir + run: flowey e 21 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey e 2 flowey_lib_common::cache 0 + run: flowey e 21 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar1' + name: 🌼 Write to 'floweyvar6' - run: | - flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar2' + name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 uses: actions/cache@v4 with: - key: ${{ env.floweyvar1 }} - path: ${{ env.floweyvar2 }} - name: 'Restore cache: gh-release-download' + key: ${{ env.floweyvar6 }} + path: ${{ env.floweyvar7 }} + name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 2 flowey_lib_common::cache 2 + run: flowey e 21 flowey_lib_common::cache 2 shell: bash - - name: download artifacts from github releases - run: flowey e 2 flowey_lib_common::download_gh_release 1 + - name: installing azcopy + run: flowey e 21 flowey_lib_common::download_azcopy 1 shell: bash - - name: checking if packages need to be installed - run: flowey e 2 flowey_lib_common::install_dist_pkg 0 + - name: calculating required VMM tests disk images + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - - name: installing packages - run: flowey e 2 flowey_lib_common::install_dist_pkg 1 + - name: downloading VMM test disk images + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - - name: unpack protoc - run: flowey e 2 flowey_lib_common::download_protoc 0 + - name: report downloaded VMM test disk images + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - - name: report openvmm magicpath dir - run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + - name: unpack openvmm-deps archive + run: flowey e 21 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - - name: symlink protoc - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + - name: setting up vmm_tests env + run: flowey e 21 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - - name: install Rust - run: flowey e 2 flowey_lib_common::install_rust 0 + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 + - name: resolve vmm tests archive artifact + run: flowey e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - - name: move lxutil.dll into its magic folder - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 shell: bash - - name: detect active toolchain - run: flowey e 2 flowey_lib_common::install_rust 1 + - name: run 'vmm_tests' nextest tests + run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - - name: report common cargo flags - run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 + - name: write results + run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - - name: construct cargo doc command - run: flowey e 2 flowey_lib_common::run_cargo_doc 0 + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_common::publish_test_results 4 shell: bash - - name: document repo for target x86_64-unknown-linux-gnu - run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_common::publish_test_results 5 shell: bash - - name: archive rustdoc dir - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 + - run: | + flowey v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__6 + uses: actions/upload-artifact@v4 + with: + name: x64-linux-vmm-tests-crash-dumps + path: ${{ env.floweyvar2 }} + name: 'publish test results: crash-dumps (x64-linux-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 + run: flowey e 21 flowey_lib_common::publish_test_results 8 shell: bash - - name: copying rustdoc to artifact dir - run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 + - run: | + flowey v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 2 flowey_lib_common::cache 3 + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash - - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc + name: 🌼 Write to 'floweyvar3' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__9 uses: actions/upload-artifact@v4 with: - name: x64-linux-rustdoc - path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ - job20: + name: x64-linux-vmm-tests-logs + path: ${{ env.floweyvar3 }} + name: 'publish test results: logs (x64-linux-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_common::publish_test_results 10 + shell: bash + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_common::publish_test_results 11 + shell: bash + - run: | + flowey v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__12 + uses: actions/upload-artifact@v4 + with: + name: x64-linux-vmm-tests-openhcl-dumps + path: ${{ env.floweyvar4 }} + name: 'publish test results: openhcl-dumps (x64-linux-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + shell: bash + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_common::publish_test_results 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_common::publish_test_results 1 + shell: bash + - name: 🌼 write_into Var + run: flowey e 21 flowey_lib_common::publish_test_results 2 + shell: bash + - run: | + flowey v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__3 + uses: actions/upload-artifact@v4 + with: + name: x64-linux-vmm-tests-junit-xml + path: ${{ env.floweyvar1 }} + name: 'publish test results: x64-linux-vmm-tests (JUnit XML)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: report test results to overall pipeline status + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 21 flowey_lib_common::cache 11 + shell: bash + - name: 'validate cache entry: azcopy' + run: flowey e 21 flowey_lib_common::cache 3 + shell: bash + - name: 'validate cache entry: cargo-nextest' + run: flowey e 21 flowey_lib_common::cache 7 + shell: bash + job22: name: run vmm-tests [aarch64-windows] runs-on: - self-hosted @@ -4539,31 +4861,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 20 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 22 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 20 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 22 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 20 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 20 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 20 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 20 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 20 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 20 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 22 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 22 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 22 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 22 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 4 + run: flowey.exe e 22 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4573,26 +4895,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 6 + run: flowey.exe e 22 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 20 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 22 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 8 + run: flowey.exe e 22 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4602,26 +4924,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 10 + run: flowey.exe e 22 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 20 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 22 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (aarch64) - run: flowey.exe e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 20 flowey_lib_common::git_checkout 0 + run: flowey.exe e 22 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4634,53 +4956,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 20 flowey_lib_common::git_checkout 3 + run: flowey.exe e 22 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 22 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 22 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 20 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 22 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 0 + run: flowey.exe e 22 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4690,56 +5012,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 2 + run: flowey.exe e 22 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 20 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 22 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 20 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 22 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4751,17 +5073,17 @@ jobs: name: 'publish test results: crash-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4773,17 +5095,17 @@ jobs: name: 'publish test results: logs (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4795,23 +5117,23 @@ jobs: name: 'publish test results: openhcl-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4823,18 +5145,18 @@ jobs: name: 'publish test results: aarch64-windows-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 20 flowey_lib_common::cache 11 + run: flowey.exe e 22 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 20 flowey_lib_common::cache 3 + run: flowey.exe e 22 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 20 flowey_lib_common::cache 7 + run: flowey.exe e 22 flowey_lib_common::cache 7 shell: bash - job21: + job23: name: test flowey local backend runs-on: - self-hosted @@ -4920,22 +5242,22 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 21 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 23 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 21 'param0' --update-from-stdin + cat <<'EOF' | flowey v 23 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: check if hvlite needs to be cloned - run: flowey e 21 flowey_lib_common::git_checkout 0 + run: flowey e 23 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 23 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 23 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4948,30 +5270,32 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 23 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 21 flowey_lib_common::git_checkout 3 + run: flowey e 23 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 23 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: install Rust - run: flowey e 21 flowey_lib_common::install_rust 0 + run: flowey e 23 flowey_lib_common::install_rust 0 shell: bash - run: ${{ github.token }} - shell: flowey v 21 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 23 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: test cargo xflowey build-igvm x64 --install-missing-deps - run: flowey e 21 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 + run: flowey e 23 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 shell: bash - job22: + job24: name: openvmm checkin gates runs-on: ubuntu-latest permissions: contents: read id-token: write needs: + - job23 + - job22 - job21 - job20 - job19 @@ -5001,7 +5325,7 @@ jobs: - name: 🌼πŸ₯Ύ Download bootstrapped flowey uses: actions/download-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + name: _internal-flowey-bootstrap-x86_64-linux-uid-7 path: ${{ runner.temp }}/bootstrapped-flowey - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash @@ -5014,15 +5338,15 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 22 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 24 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 24 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 22 'param0' --update-from-stdin + cat <<'EOF' | flowey v 24 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: Check if any jobs failed - run: flowey e 22 flowey_lib_hvlite::_jobs::all_good_job 0 + run: flowey e 24 flowey_lib_hvlite::_jobs::all_good_job 0 shell: bash job3: name: xtask fmt (windows) diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index 00bd7a627..2db9f0af6 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -732,6 +732,7 @@ impl IntoPipeline for CheckinGatesCli { }, old_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), new_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), + done: ctx.new_done_handle(), }, ) .finish(); diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index bad64c20f..550003c30 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -1,8 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -//! Run a pre-built cargo-nextest based VMM tests archive. - use crate::run_cargo_build::common::{CommonArch, CommonTriple}; use flowey::node::prelude::*; @@ -11,6 +9,7 @@ flowey_request! { pub target: CommonTriple, pub old_openhcl: ReadVar, pub new_openhcl: ReadVar, + pub done: WriteVar, } } @@ -29,12 +28,14 @@ impl SimpleFlowNode for Node { target, old_openhcl, new_openhcl, + done, } = request; let xtask = ctx.reqv(|v| crate::build_xtask::Request { target: target.clone(), xtask: v }); let openvmm_repo_path = ctx.reqv(crate::git_checkout_openvmm_repo::req::GetRepoDir); ctx.emit_rust_step("binary size comparison", |ctx| { + done.claim(ctx); let xtask = xtask.claim(ctx); let openvmm_repo_path = openvmm_repo_path.claim(ctx); let old_openhcl = old_openhcl.claim(ctx); From f7ffdcb1fe4d231f8b080997123ee0d3f1d7042f Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Thu, 2 Jan 2025 14:37:22 -0800 Subject: [PATCH 05/42] fmt so that ci will actually run --- .../src/download_gh_artifact.rs | 23 +++++++++---------- .../src/_jobs/check_openvmm_hcl_size.rs | 11 ++++----- xtask/src/main.rs | 2 +- xtask/src/tasks/verify_size.rs | 14 +++++++---- 4 files changed, 27 insertions(+), 23 deletions(-) diff --git a/flowey/flowey_lib_common/src/download_gh_artifact.rs b/flowey/flowey_lib_common/src/download_gh_artifact.rs index 0e2d153b1..13741940e 100644 --- a/flowey/flowey_lib_common/src/download_gh_artifact.rs +++ b/flowey/flowey_lib_common/src/download_gh_artifact.rs @@ -119,8 +119,7 @@ impl Node { for ((repo_owner, repo_name), files) in remaining_download_reqs { for (file, vars) in files { - let file = - persistent_dir.join(format!("{repo_owner}/{repo_name}/{file}")); + let file = persistent_dir.join(format!("{repo_owner}/{repo_name}/{file}")); assert!(file.exists()); for var in vars { rt.write(var, &file) @@ -217,16 +216,16 @@ fn download_all_reqs( fs_err::create_dir_all(&out_dir)?; sh.change_dir(&out_dir); - // FUTURE: while the gh cli takes care of doing simultaneous downloads in - // the context of a single (repo, tag), we might want to have flowey spawn - // multiple processes to saturate the network connection in cases where - // multiple (repo, tag) pairs are being pulled at the same time. - let patterns = files.keys().flat_map(|k| ["--pattern".into(), k.clone()]); - xshell::cmd!( - sh, - "{gh_cli} run download -R {repo} {patterns...} --skip-existing" - ) - .run()?; + // FUTURE: while the gh cli takes care of doing simultaneous downloads in + // the context of a single (repo, tag), we might want to have flowey spawn + // multiple processes to saturate the network connection in cases where + // multiple (repo, tag) pairs are being pulled at the same time. + let patterns = files.keys().flat_map(|k| ["--pattern".into(), k.clone()]); + xshell::cmd!( + sh, + "{gh_cli} run download -R {repo} {patterns...} --skip-existing" + ) + .run()?; } Ok(()) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 550003c30..d51e728ac 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -31,7 +31,10 @@ impl SimpleFlowNode for Node { done, } = request; - let xtask = ctx.reqv(|v| crate::build_xtask::Request { target: target.clone(), xtask: v }); + let xtask = ctx.reqv(|v| crate::build_xtask::Request { + target: target.clone(), + xtask: v, + }); let openvmm_repo_path = ctx.reqv(crate::git_checkout_openvmm_repo::req::GetRepoDir); ctx.emit_rust_step("binary size comparison", |ctx| { @@ -64,11 +67,7 @@ impl SimpleFlowNode for Node { let sh = xshell::Shell::new()?; sh.change_dir(rt.read(openvmm_repo_path)); - xshell::cmd!( - sh, - "{xtask} verify-size --old {old_path} --new {new_path}" - ) - .run()?; + xshell::cmd!(sh, "{xtask} verify-size --old {old_path} --new {new_path}").run()?; Ok(()) } diff --git a/xtask/src/main.rs b/xtask/src/main.rs index 43aac6b74..bbbf78dd2 100644 --- a/xtask/src/main.rs +++ b/xtask/src/main.rs @@ -78,7 +78,7 @@ enum Commands { Fuzz(tasks::Fuzz), GuestTest(tasks::GuestTest), InstallGitHooks(tasks::InstallGitHooks), - VerifySize(tasks::VerifySize) + VerifySize(tasks::VerifySize), } fn main() { diff --git a/xtask/src/tasks/verify_size.rs b/xtask/src/tasks/verify_size.rs index 57f4e6e3a..dd0ea3e6c 100644 --- a/xtask/src/tasks/verify_size.rs +++ b/xtask/src/tasks/verify_size.rs @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + // Copyright (C) Microsoft Corporation. All rights reserved. use crate::Xtask; @@ -5,6 +8,7 @@ use object::read::Object; use object::read::ObjectSection; use std::collections::HashMap; +/// Runs a size comparison and outputs a diff of two given binaries #[derive(Debug, clap::Parser)] #[clap(about = "Verify the size of a binary hasn't changed more than allowed.")] pub struct VerifySize { @@ -31,16 +35,18 @@ fn verify_sections_size( let expected_sections: HashMap<_, _> = original .sections() - .filter_map(|s| s.name().ok().map(|name| (name.to_string(), (s.size() as i64) / 1024))) + .filter_map(|s| { + s.name() + .ok() + .map(|name| (name.to_string(), (s.size() as i64) / 1024)) + }) .filter(|(_, size)| *size > 0) .collect(); for section in new.sections() { let name = section.name().unwrap(); let size = (section.size() / 1024) as i64; - let expected_size = *expected_sections - .get(name) - .unwrap_or(&0); + let expected_size = *expected_sections.get(name).unwrap_or(&0); let diff = (size as i64) - (expected_size as i64); total_diff += diff.unsigned_abs(); total_size += size as u64; From 9853a1676a4193a6ea089a678da0188821812af6 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Thu, 2 Jan 2025 14:51:53 -0800 Subject: [PATCH 06/42] clippy --- xtask/src/tasks/verify_size.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xtask/src/tasks/verify_size.rs b/xtask/src/tasks/verify_size.rs index dd0ea3e6c..3870aecd6 100644 --- a/xtask/src/tasks/verify_size.rs +++ b/xtask/src/tasks/verify_size.rs @@ -47,7 +47,7 @@ fn verify_sections_size( let name = section.name().unwrap(); let size = (section.size() / 1024) as i64; let expected_size = *expected_sections.get(name).unwrap_or(&0); - let diff = (size as i64) - (expected_size as i64); + let diff = size - expected_size; total_diff += diff.unsigned_abs(); total_size += size as u64; From e9854fa7349cc7b67bd5e719d191aa7b2bff0fce Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Thu, 2 Jan 2025 15:07:50 -0800 Subject: [PATCH 07/42] fix command line argument --- flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index d51e728ac..75195967e 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -67,7 +67,7 @@ impl SimpleFlowNode for Node { let sh = xshell::Shell::new()?; sh.change_dir(rt.read(openvmm_repo_path)); - xshell::cmd!(sh, "{xtask} verify-size --old {old_path} --new {new_path}").run()?; + xshell::cmd!(sh, "{xtask} verify-size --original {old_path} --new {new_path}").run()?; Ok(()) } From 12c39aafe5333c96d3027e22f5c2b95a8f9ea218 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Fri, 3 Jan 2025 10:04:22 -0800 Subject: [PATCH 08/42] swap old and new position --- .../flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs | 6 +++++- xtask/src/tasks/verify_size.rs | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 75195967e..c7e82941b 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -67,7 +67,11 @@ impl SimpleFlowNode for Node { let sh = xshell::Shell::new()?; sh.change_dir(rt.read(openvmm_repo_path)); - xshell::cmd!(sh, "{xtask} verify-size --original {old_path} --new {new_path}").run()?; + xshell::cmd!( + sh, + "{xtask} verify-size --original {old_path} --new {new_path}" + ) + .run()?; Ok(()) } diff --git a/xtask/src/tasks/verify_size.rs b/xtask/src/tasks/verify_size.rs index 3870aecd6..010b4811c 100644 --- a/xtask/src/tasks/verify_size.rs +++ b/xtask/src/tasks/verify_size.rs @@ -27,7 +27,7 @@ fn verify_sections_size( ) -> anyhow::Result { println!( "{:20} {:>15} {:>15} {:>16}", - "Section", "New Size (KiB)", "Old Size (KiB)", "Difference (KiB)" + "Section", "Old Size (KiB)", "New Size (KiB)", "Difference (KiB)" ); let mut total_diff: u64 = 0; @@ -53,7 +53,7 @@ fn verify_sections_size( // Print any non-zero sections in the newer binary and any sections that differ in size from the original. if size != 0 || diff != 0 { - println!("{name:20} {size:15} {expected_size:15} {diff:16}"); + println!("{name:20} {expected_size:15} {size:15} {diff:16}"); } } From 7fe1ab717b7d7ba484f501715dcf1345cdf31287 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Fri, 3 Jan 2025 11:45:56 -0800 Subject: [PATCH 09/42] try to download hardcoded artifact --- .github/workflows/openvmm-ci.yaml | 192 +++++++++++++++--- .github/workflows/openvmm-pr.yaml | 192 +++++++++++++++--- .../src/pipelines/checkin_gates.rs | 1 - .../src/download_gh_artifact.rs | 54 +++-- .../src/_jobs/check_openvmm_hcl_size.rs | 19 +- 5 files changed, 380 insertions(+), 78 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index 713561fba..1ac0fc477 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -1701,27 +1701,27 @@ jobs: run: flowey e 13 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 0 + run: flowey e 13 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 13 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar2' + name: 🌼 Write to 'floweyvar6' - run: | - flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 13 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 + name: 🌼 Write to 'floweyvar7' + - id: flowey_lib_common__cache__9 uses: actions/cache@v4 with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} + key: ${{ env.floweyvar6 }} + path: ${{ env.floweyvar7 }} name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} + shell: flowey v 13 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 2 + run: flowey e 13 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases run: flowey e 13 flowey_lib_common::download_gh_release 1 @@ -1765,12 +1765,82 @@ jobs: - name: report built xtask run: flowey e 13 flowey_lib_hvlite::build_xtask 0 shell: bash + - run: ${{ github.token }} + shell: flowey v 13 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:66:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' + - name: create gh cache dir + run: flowey e 13 flowey_lib_common::download_gh_cli 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 13 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey v 13 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + - run: | + flowey v 13 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} + name: 'Restore cache: gh-cli' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 13 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 13 flowey_lib_common::cache 6 + shell: bash + - name: installing gh + run: flowey e 13 flowey_lib_common::download_gh_cli 1 + shell: bash + - name: setup gh cli + run: flowey e 13 flowey_lib_common::use_gh_cli 0 + shell: bash + - name: create gh-artifact-download cache dir + run: flowey e 13 flowey_lib_common::download_gh_artifact 1 + shell: bash + - name: Pre-processing cache vars + run: flowey e 13 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: gh-artifact-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 13 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github + run: flowey e 13 flowey_lib_common::download_gh_artifact 2 + shell: bash - name: binary size comparison run: flowey e 13 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: gh-release-download' + - name: 'validate cache entry: gh-artifact-download' run: flowey e 13 flowey_lib_common::cache 3 shell: bash + - name: 'validate cache entry: gh-cli' + run: flowey e 13 flowey_lib_common::cache 7 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 13 flowey_lib_common::cache 11 + shell: bash job14: name: build openhcl [x64-linux] runs-on: @@ -2446,27 +2516,27 @@ jobs: run: flowey e 15 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 0 + run: flowey e 15 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 15 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar2' + name: 🌼 Write to 'floweyvar6' - run: | - flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 15 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 + name: 🌼 Write to 'floweyvar7' + - id: flowey_lib_common__cache__9 uses: actions/cache@v4 with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} + key: ${{ env.floweyvar6 }} + path: ${{ env.floweyvar7 }} name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} + shell: flowey v 15 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 2 + run: flowey e 15 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases run: flowey e 15 flowey_lib_common::download_gh_release 1 @@ -2510,12 +2580,82 @@ jobs: - name: report built xtask run: flowey e 15 flowey_lib_hvlite::build_xtask 0 shell: bash + - run: ${{ github.token }} + shell: flowey v 15 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:66:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' + - name: create gh cache dir + run: flowey e 15 flowey_lib_common::download_gh_cli 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 15 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + - run: | + flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} + name: 'Restore cache: gh-cli' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 15 flowey_lib_common::cache 6 + shell: bash + - name: installing gh + run: flowey e 15 flowey_lib_common::download_gh_cli 1 + shell: bash + - name: setup gh cli + run: flowey e 15 flowey_lib_common::use_gh_cli 0 + shell: bash + - name: create gh-artifact-download cache dir + run: flowey e 15 flowey_lib_common::download_gh_artifact 1 + shell: bash + - name: Pre-processing cache vars + run: flowey e 15 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: gh-artifact-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 15 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github + run: flowey e 15 flowey_lib_common::download_gh_artifact 2 + shell: bash - name: binary size comparison run: flowey e 15 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: gh-release-download' + - name: 'validate cache entry: gh-artifact-download' run: flowey e 15 flowey_lib_common::cache 3 shell: bash + - name: 'validate cache entry: gh-cli' + run: flowey e 15 flowey_lib_common::cache 7 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 15 flowey_lib_common::cache 11 + shell: bash job16: name: clippy [windows], unit tests [x64-windows] runs-on: diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 7a4f6cfdb..d202076fe 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -1348,27 +1348,27 @@ jobs: run: flowey e 12 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 12 flowey_lib_common::cache 0 + run: flowey e 12 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 12 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 12 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar2' + name: 🌼 Write to 'floweyvar6' - run: | - flowey v 12 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 12 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 + name: 🌼 Write to 'floweyvar7' + - id: flowey_lib_common__cache__9 uses: actions/cache@v4 with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} + key: ${{ env.floweyvar6 }} + path: ${{ env.floweyvar7 }} name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 12 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} + shell: flowey v 12 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 12 flowey_lib_common::cache 2 + run: flowey e 12 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases run: flowey e 12 flowey_lib_common::download_gh_release 1 @@ -1412,12 +1412,82 @@ jobs: - name: report built xtask run: flowey e 12 flowey_lib_hvlite::build_xtask 0 shell: bash + - run: ${{ github.token }} + shell: flowey v 12 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:66:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' + - name: create gh cache dir + run: flowey e 12 flowey_lib_common::download_gh_cli 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 12 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey v 12 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + - run: | + flowey v 12 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} + name: 'Restore cache: gh-cli' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 12 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 12 flowey_lib_common::cache 6 + shell: bash + - name: installing gh + run: flowey e 12 flowey_lib_common::download_gh_cli 1 + shell: bash + - name: setup gh cli + run: flowey e 12 flowey_lib_common::use_gh_cli 0 + shell: bash + - name: create gh-artifact-download cache dir + run: flowey e 12 flowey_lib_common::download_gh_artifact 1 + shell: bash + - name: Pre-processing cache vars + run: flowey e 12 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 12 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 12 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: gh-artifact-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 12 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 12 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github + run: flowey e 12 flowey_lib_common::download_gh_artifact 2 + shell: bash - name: binary size comparison run: flowey e 12 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: gh-release-download' + - name: 'validate cache entry: gh-artifact-download' run: flowey e 12 flowey_lib_common::cache 3 shell: bash + - name: 'validate cache entry: gh-cli' + run: flowey e 12 flowey_lib_common::cache 7 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 12 flowey_lib_common::cache 11 + shell: bash job13: name: build openhcl [x64-linux] runs-on: @@ -2093,27 +2163,27 @@ jobs: run: flowey e 14 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 0 + run: flowey e 14 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 14 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar2' + name: 🌼 Write to 'floweyvar6' - run: | - flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 14 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 + name: 🌼 Write to 'floweyvar7' + - id: flowey_lib_common__cache__9 uses: actions/cache@v4 with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} + key: ${{ env.floweyvar6 }} + path: ${{ env.floweyvar7 }} name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} + shell: flowey v 14 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 2 + run: flowey e 14 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases run: flowey e 14 flowey_lib_common::download_gh_release 1 @@ -2157,12 +2227,82 @@ jobs: - name: report built xtask run: flowey e 14 flowey_lib_hvlite::build_xtask 0 shell: bash + - run: ${{ github.token }} + shell: flowey v 14 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:66:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' + - name: create gh cache dir + run: flowey e 14 flowey_lib_common::download_gh_cli 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 14 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + - run: | + flowey v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} + name: 'Restore cache: gh-cli' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 14 flowey_lib_common::cache 6 + shell: bash + - name: installing gh + run: flowey e 14 flowey_lib_common::download_gh_cli 1 + shell: bash + - name: setup gh cli + run: flowey e 14 flowey_lib_common::use_gh_cli 0 + shell: bash + - name: create gh-artifact-download cache dir + run: flowey e 14 flowey_lib_common::download_gh_artifact 1 + shell: bash + - name: Pre-processing cache vars + run: flowey e 14 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: gh-artifact-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 14 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github + run: flowey e 14 flowey_lib_common::download_gh_artifact 2 + shell: bash - name: binary size comparison run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: gh-release-download' + - name: 'validate cache entry: gh-artifact-download' run: flowey e 14 flowey_lib_common::cache 3 shell: bash + - name: 'validate cache entry: gh-cli' + run: flowey e 14 flowey_lib_common::cache 7 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 14 flowey_lib_common::cache 11 + shell: bash job15: name: clippy [windows], unit tests [x64-windows] runs-on: diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index 2db9f0af6..67c071ab9 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -730,7 +730,6 @@ impl IntoPipeline for CheckinGatesCli { arch, platform: CommonPlatform::LinuxMusl, }, - old_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), new_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), done: ctx.new_done_handle(), }, diff --git a/flowey/flowey_lib_common/src/download_gh_artifact.rs b/flowey/flowey_lib_common/src/download_gh_artifact.rs index 13741940e..e021f5a25 100644 --- a/flowey/flowey_lib_common/src/download_gh_artifact.rs +++ b/flowey/flowey_lib_common/src/download_gh_artifact.rs @@ -20,6 +20,8 @@ flowey_request! { pub file_name: String, /// Path to downloaded artifact. pub path: WriteVar, + /// The Github actions run id to download artifacts from + pub run_id: String } } @@ -35,7 +37,7 @@ impl FlowNode for Node { fn emit(requests: Vec, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { let mut download_reqs: BTreeMap< - (String, String), + (String, String, String), BTreeMap>>, > = BTreeMap::new(); for req in requests { @@ -44,12 +46,13 @@ impl FlowNode for Node { repo_name, file_name, path, + run_id, } = req; // if any package needs auth, we might as well download every // package using the GH cli. download_reqs - .entry((repo_owner, repo_name)) + .entry((repo_owner, repo_name, run_id)) .or_default() .entry(file_name) .or_default() @@ -60,7 +63,11 @@ impl FlowNode for Node { return Ok(()); } - let gh_cli = ctx.reqv(crate::use_gh_cli::Request::Get); + let gh_token = ctx.get_gh_context_var(GhContextVar::GITHUB__TOKEN); + ctx.req(crate::use_gh_cli::Request::WithAuth( + crate::use_gh_cli::GhCliAuth::AuthToken(gh_token), + )); + let gh_cli = ctx.reqv(|v| crate::use_gh_cli::Request::Get(v)); match ctx.persistent_dir() { Some(dir) => Self::with_local_cache(ctx, dir, download_reqs, gh_cli), @@ -76,7 +83,7 @@ impl Node { fn with_local_cache( ctx: &mut NodeCtx<'_>, persistent_dir: ReadVar, - download_reqs: BTreeMap<(String, String), BTreeMap>>>, + download_reqs: BTreeMap<(String, String, String), BTreeMap>>>, gh_cli: ReadVar, ) { ctx.emit_rust_step("download artifacts from github actions run", |ctx| { @@ -88,13 +95,13 @@ impl Node { // first - check what reqs are already present in the local cache let mut remaining_download_reqs: BTreeMap< - (String, String), + (String, String, String), BTreeMap>>, > = BTreeMap::new(); - for ((repo_owner, repo_name), files) in download_reqs { + for ((repo_owner, repo_name, run_id), files) in download_reqs { for (file, vars) in files { - let cached_file = - persistent_dir.join(format!("{repo_owner}/{repo_name}/{file}")); + let cached_file = persistent_dir + .join(format!("{repo_owner}/{repo_name}/{run_id}/{file}")); if cached_file.exists() { for var in vars { @@ -102,7 +109,7 @@ impl Node { } } else { let existing = remaining_download_reqs - .entry((repo_owner.clone(), repo_name.clone())) + .entry((repo_owner.clone(), repo_name.clone(), run_id.clone())) .or_default() .insert(file, vars); assert!(existing.is_none()); @@ -117,9 +124,10 @@ impl Node { download_all_reqs(rt, &remaining_download_reqs, &persistent_dir, gh_cli)?; - for ((repo_owner, repo_name), files) in remaining_download_reqs { + for ((repo_owner, repo_name, run_id), files) in remaining_download_reqs { for (file, vars) in files { - let file = persistent_dir.join(format!("{repo_owner}/{repo_name}/{file}")); + let file = persistent_dir + .join(format!("{repo_owner}/{repo_name}/{run_id}/{file}")); assert!(file.exists()); for var in vars { rt.write(var, &file) @@ -137,7 +145,7 @@ impl Node { // cache directory for each flow's request-set. fn with_ci_cache( ctx: &mut NodeCtx<'_>, - download_reqs: BTreeMap<(String, String), BTreeMap>>>, + download_reqs: BTreeMap<(String, String, String), BTreeMap>>>, gh_cli: ReadVar, ) { let cache_dir = ctx.emit_rust_stepv("create gh-artifact-download cache dir", |_| { @@ -146,9 +154,10 @@ impl Node { let request_set_hash = { let hasher = &mut rustc_hash::FxHasher::default(); - for ((repo_owner, repo_name), files) in &download_reqs { + for ((repo_owner, repo_name, run_id), files) in &download_reqs { std::hash::Hash::hash(repo_owner, hasher); std::hash::Hash::hash(repo_name, hasher); + std::hash::Hash::hash(run_id, hasher); for file in files.keys() { std::hash::Hash::hash(&file, hasher); } @@ -157,10 +166,10 @@ impl Node { format!("{:08x?}", hash) }; - let cache_key = ReadVar::from_static(format!("gh-release-download-{request_set_hash}")); + let cache_key = ReadVar::from_static(format!("gh-artifact-download-{request_set_hash}")); let hitvar = ctx.reqv(|v| { crate::cache::Request { - label: "gh-release-download".into(), + label: "gh-artifact-download".into(), dir: cache_dir.clone(), key: cache_key, restore_keys: None, // OK if not exact - better than nothing @@ -168,7 +177,7 @@ impl Node { } }); - ctx.emit_rust_step("download artifacts from github releases", |ctx| { + ctx.emit_rust_step("download artifacts from github", |ctx| { let cache_dir = cache_dir.claim(ctx); let hitvar = hitvar.claim(ctx); let gh_cli = gh_cli.claim(ctx); @@ -181,9 +190,10 @@ impl Node { download_all_reqs(rt, &download_reqs, &cache_dir, gh_cli)?; } - for ((repo_owner, repo_name), files) in download_reqs { + for ((repo_owner, repo_name, run_id), files) in download_reqs { for (file, vars) in files { - let file = cache_dir.join(format!("{repo_owner}/{repo_name}/{file}")); + let file = + cache_dir.join(format!("{repo_owner}/{repo_name}/{run_id}/{file}")); assert!(file.exists()); for var in vars { rt.write(var, &file) @@ -200,7 +210,7 @@ impl Node { fn download_all_reqs( rt: &mut RustRuntimeServices<'_>, download_reqs: &BTreeMap< - (String, String), + (String, String, String), BTreeMap>>, >, cache_dir: &Path, @@ -209,10 +219,10 @@ fn download_all_reqs( let sh = xshell::Shell::new()?; let gh_cli = rt.read(gh_cli); - for ((repo_owner, repo_name), files) in download_reqs { + for ((repo_owner, repo_name, run_id), files) in download_reqs { let repo = format!("{repo_owner}/{repo_name}"); - let out_dir = cache_dir.join(format!("{repo_owner}/{repo_name}")); + let out_dir = cache_dir.join(format!("{repo_owner}/{repo_name}/{run_id}")); fs_err::create_dir_all(&out_dir)?; sh.change_dir(&out_dir); @@ -223,7 +233,7 @@ fn download_all_reqs( let patterns = files.keys().flat_map(|k| ["--pattern".into(), k.clone()]); xshell::cmd!( sh, - "{gh_cli} run download -R {repo} {patterns...} --skip-existing" + "{gh_cli} run download {run_id} -R {repo} {patterns...} --skip-existing" ) .run()?; } diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index c7e82941b..d1f6f99d1 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -3,11 +3,11 @@ use crate::run_cargo_build::common::{CommonArch, CommonTriple}; use flowey::node::prelude::*; +use flowey_lib_common::download_gh_artifact; flowey_request! { pub struct Request { pub target: CommonTriple, - pub old_openhcl: ReadVar, pub new_openhcl: ReadVar, pub done: WriteVar, } @@ -21,12 +21,12 @@ impl SimpleFlowNode for Node { fn imports(ctx: &mut ImportCtx<'_>) { ctx.import::(); ctx.import::(); + ctx.import::(); } fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { let Request { target, - old_openhcl, new_openhcl, done, } = request; @@ -37,11 +37,24 @@ impl SimpleFlowNode for Node { }); let openvmm_repo_path = ctx.reqv(crate::git_checkout_openvmm_repo::req::GetRepoDir); + let file_name = match target.common_arch().unwrap() { + CommonArch::X86_64 => "x64-openhcl-igvm-extras", + CommonArch::Aarch64 => "aarch64-openhcl-igvm-extras", + }; + + let merge_head_artifact = ctx.reqv(|old_openhcl| download_gh_artifact::Request { + repo_owner: "microsoft".into(), + repo_name: "openvmm".into(), + file_name: file_name.into(), + path: old_openhcl, + run_id: "12438300136".into(), + }); + ctx.emit_rust_step("binary size comparison", |ctx| { done.claim(ctx); let xtask = xtask.claim(ctx); let openvmm_repo_path = openvmm_repo_path.claim(ctx); - let old_openhcl = old_openhcl.claim(ctx); + let old_openhcl = merge_head_artifact.claim(ctx); let new_openhcl = new_openhcl.claim(ctx); move |rt| { From 17ac9d5a99139a9092be9a0007d833de879e565f Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Fri, 3 Jan 2025 12:19:53 -0800 Subject: [PATCH 10/42] remove wrong parameter, clippy --- flowey/flowey_lib_common/src/download_gh_artifact.rs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/flowey/flowey_lib_common/src/download_gh_artifact.rs b/flowey/flowey_lib_common/src/download_gh_artifact.rs index e021f5a25..b84bd62ea 100644 --- a/flowey/flowey_lib_common/src/download_gh_artifact.rs +++ b/flowey/flowey_lib_common/src/download_gh_artifact.rs @@ -67,7 +67,7 @@ impl FlowNode for Node { ctx.req(crate::use_gh_cli::Request::WithAuth( crate::use_gh_cli::GhCliAuth::AuthToken(gh_token), )); - let gh_cli = ctx.reqv(|v| crate::use_gh_cli::Request::Get(v)); + let gh_cli = ctx.reqv(crate::use_gh_cli::Request::Get); match ctx.persistent_dir() { Some(dir) => Self::with_local_cache(ctx, dir, download_reqs, gh_cli), @@ -231,11 +231,7 @@ fn download_all_reqs( // multiple processes to saturate the network connection in cases where // multiple (repo, tag) pairs are being pulled at the same time. let patterns = files.keys().flat_map(|k| ["--pattern".into(), k.clone()]); - xshell::cmd!( - sh, - "{gh_cli} run download {run_id} -R {repo} {patterns...} --skip-existing" - ) - .run()?; + xshell::cmd!(sh, "{gh_cli} run download {run_id} -R {repo} {patterns...}").run()?; } Ok(()) From 9b47097b4ae8e5159bfde8f488db18aa27b00c72 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 11:05:35 -0800 Subject: [PATCH 11/42] get merge head to run size check with --- .github/workflows/openvmm-ci.yaml | 166 +++++--------- .github/workflows/openvmm-pr.yaml | 166 +++++--------- .../src/download_gh_artifact.rs | 209 ++---------------- .../flowey_lib_common/src/gh_merge_commit.rs | 51 +++++ .../flowey_lib_common/src/gh_workflow_id.rs | 57 +++++ flowey/flowey_lib_common/src/lib.rs | 2 + .../src/_jobs/check_openvmm_hcl_size.rs | 16 +- 7 files changed, 267 insertions(+), 400 deletions(-) create mode 100644 flowey/flowey_lib_common/src/gh_merge_commit.rs create mode 100644 flowey/flowey_lib_common/src/gh_workflow_id.rs diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index 1ac0fc477..5d2140e5d 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -1701,27 +1701,27 @@ jobs: run: flowey e 13 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 8 + run: flowey e 13 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 13 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 13 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar4' - run: | - flowey v 13 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 13 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar7' - - id: flowey_lib_common__cache__9 + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 uses: actions/cache@v4 with: - key: ${{ env.floweyvar6 }} - path: ${{ env.floweyvar7 }} + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 13 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 10 + run: flowey e 13 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases run: flowey e 13 flowey_lib_common::download_gh_release 1 @@ -1766,43 +1766,11 @@ jobs: run: flowey e 13 flowey_lib_hvlite::build_xtask 0 shell: bash - run: ${{ github.token }} - shell: flowey v 13 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:66:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: create gh cache dir run: flowey e 13 flowey_lib_common::download_gh_cli 0 shell: bash - - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey v 13 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 13 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-cli' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 6 - shell: bash - - name: installing gh - run: flowey e 13 flowey_lib_common::download_gh_cli 1 - shell: bash - - name: setup gh cli - run: flowey e 13 flowey_lib_common::use_gh_cli 0 - shell: bash - - name: create gh-artifact-download cache dir - run: flowey e 13 flowey_lib_common::download_gh_artifact 1 - shell: bash - name: Pre-processing cache vars run: flowey e 13 flowey_lib_common::cache 0 shell: bash @@ -1819,27 +1787,36 @@ jobs: with: key: ${{ env.floweyvar2 }} path: ${{ env.floweyvar3 }} - name: 'Restore cache: gh-artifact-download' + name: 'Restore cache: gh-cli' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey run: flowey e 13 flowey_lib_common::cache 2 shell: bash - - name: download artifacts from github - run: flowey e 13 flowey_lib_common::download_gh_artifact 2 + - name: installing gh + run: flowey e 13 flowey_lib_common::download_gh_cli 1 + shell: bash + - name: setup gh cli + run: flowey e 13 flowey_lib_common::use_gh_cli 0 + shell: bash + - name: get merge commit + run: flowey e 13 flowey_lib_common::gh_merge_commit 0 + shell: bash + - name: get action id + run: flowey e 13 flowey_lib_common::gh_workflow_id 0 + shell: bash + - name: download artifacts from github actions run + run: flowey e 13 flowey_lib_common::download_gh_artifact 1 shell: bash - name: binary size comparison run: flowey e 13 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: gh-artifact-download' - run: flowey e 13 flowey_lib_common::cache 3 - shell: bash - name: 'validate cache entry: gh-cli' - run: flowey e 13 flowey_lib_common::cache 7 + run: flowey e 13 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 13 flowey_lib_common::cache 11 + run: flowey e 13 flowey_lib_common::cache 7 shell: bash job14: name: build openhcl [x64-linux] @@ -2516,27 +2493,27 @@ jobs: run: flowey e 15 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 8 + run: flowey e 15 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 15 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar4' - run: | - flowey v 15 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar7' - - id: flowey_lib_common__cache__9 + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 uses: actions/cache@v4 with: - key: ${{ env.floweyvar6 }} - path: ${{ env.floweyvar7 }} + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 10 + run: flowey e 15 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases run: flowey e 15 flowey_lib_common::download_gh_release 1 @@ -2581,43 +2558,11 @@ jobs: run: flowey e 15 flowey_lib_hvlite::build_xtask 0 shell: bash - run: ${{ github.token }} - shell: flowey v 15 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:66:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 15 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: create gh cache dir run: flowey e 15 flowey_lib_common::download_gh_cli 0 shell: bash - - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-cli' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 6 - shell: bash - - name: installing gh - run: flowey e 15 flowey_lib_common::download_gh_cli 1 - shell: bash - - name: setup gh cli - run: flowey e 15 flowey_lib_common::use_gh_cli 0 - shell: bash - - name: create gh-artifact-download cache dir - run: flowey e 15 flowey_lib_common::download_gh_artifact 1 - shell: bash - name: Pre-processing cache vars run: flowey e 15 flowey_lib_common::cache 0 shell: bash @@ -2634,27 +2579,36 @@ jobs: with: key: ${{ env.floweyvar2 }} path: ${{ env.floweyvar3 }} - name: 'Restore cache: gh-artifact-download' + name: 'Restore cache: gh-cli' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey run: flowey e 15 flowey_lib_common::cache 2 shell: bash - - name: download artifacts from github - run: flowey e 15 flowey_lib_common::download_gh_artifact 2 + - name: installing gh + run: flowey e 15 flowey_lib_common::download_gh_cli 1 + shell: bash + - name: setup gh cli + run: flowey e 15 flowey_lib_common::use_gh_cli 0 + shell: bash + - name: get merge commit + run: flowey e 15 flowey_lib_common::gh_merge_commit 0 + shell: bash + - name: get action id + run: flowey e 15 flowey_lib_common::gh_workflow_id 0 + shell: bash + - name: download artifacts from github actions run + run: flowey e 15 flowey_lib_common::download_gh_artifact 1 shell: bash - name: binary size comparison run: flowey e 15 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: gh-artifact-download' - run: flowey e 15 flowey_lib_common::cache 3 - shell: bash - name: 'validate cache entry: gh-cli' - run: flowey e 15 flowey_lib_common::cache 7 + run: flowey e 15 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 15 flowey_lib_common::cache 11 + run: flowey e 15 flowey_lib_common::cache 7 shell: bash job16: name: clippy [windows], unit tests [x64-windows] diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index d202076fe..6d6cb4e09 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -1348,27 +1348,27 @@ jobs: run: flowey e 12 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 12 flowey_lib_common::cache 8 + run: flowey e 12 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 12 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 12 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar4' - run: | - flowey v 12 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 12 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar7' - - id: flowey_lib_common__cache__9 + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 uses: actions/cache@v4 with: - key: ${{ env.floweyvar6 }} - path: ${{ env.floweyvar7 }} + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 12 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 12 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 12 flowey_lib_common::cache 10 + run: flowey e 12 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases run: flowey e 12 flowey_lib_common::download_gh_release 1 @@ -1413,43 +1413,11 @@ jobs: run: flowey e 12 flowey_lib_hvlite::build_xtask 0 shell: bash - run: ${{ github.token }} - shell: flowey v 12 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:66:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 12 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: create gh cache dir run: flowey e 12 flowey_lib_common::download_gh_cli 0 shell: bash - - name: Pre-processing cache vars - run: flowey e 12 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey v 12 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 12 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-cli' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 12 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 12 flowey_lib_common::cache 6 - shell: bash - - name: installing gh - run: flowey e 12 flowey_lib_common::download_gh_cli 1 - shell: bash - - name: setup gh cli - run: flowey e 12 flowey_lib_common::use_gh_cli 0 - shell: bash - - name: create gh-artifact-download cache dir - run: flowey e 12 flowey_lib_common::download_gh_artifact 1 - shell: bash - name: Pre-processing cache vars run: flowey e 12 flowey_lib_common::cache 0 shell: bash @@ -1466,27 +1434,36 @@ jobs: with: key: ${{ env.floweyvar2 }} path: ${{ env.floweyvar3 }} - name: 'Restore cache: gh-artifact-download' + name: 'Restore cache: gh-cli' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} shell: flowey v 12 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey run: flowey e 12 flowey_lib_common::cache 2 shell: bash - - name: download artifacts from github - run: flowey e 12 flowey_lib_common::download_gh_artifact 2 + - name: installing gh + run: flowey e 12 flowey_lib_common::download_gh_cli 1 + shell: bash + - name: setup gh cli + run: flowey e 12 flowey_lib_common::use_gh_cli 0 + shell: bash + - name: get merge commit + run: flowey e 12 flowey_lib_common::gh_merge_commit 0 + shell: bash + - name: get action id + run: flowey e 12 flowey_lib_common::gh_workflow_id 0 + shell: bash + - name: download artifacts from github actions run + run: flowey e 12 flowey_lib_common::download_gh_artifact 1 shell: bash - name: binary size comparison run: flowey e 12 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: gh-artifact-download' - run: flowey e 12 flowey_lib_common::cache 3 - shell: bash - name: 'validate cache entry: gh-cli' - run: flowey e 12 flowey_lib_common::cache 7 + run: flowey e 12 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 12 flowey_lib_common::cache 11 + run: flowey e 12 flowey_lib_common::cache 7 shell: bash job13: name: build openhcl [x64-linux] @@ -2163,27 +2140,27 @@ jobs: run: flowey e 14 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 8 + run: flowey e 14 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 14 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar4' - run: | - flowey v 14 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar7' - - id: flowey_lib_common__cache__9 + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 uses: actions/cache@v4 with: - key: ${{ env.floweyvar6 }} - path: ${{ env.floweyvar7 }} + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 10 + run: flowey e 14 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases run: flowey e 14 flowey_lib_common::download_gh_release 1 @@ -2228,43 +2205,11 @@ jobs: run: flowey e 14 flowey_lib_hvlite::build_xtask 0 shell: bash - run: ${{ github.token }} - shell: flowey v 14 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:66:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: create gh cache dir run: flowey e 14 flowey_lib_common::download_gh_cli 0 shell: bash - - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-cli' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 6 - shell: bash - - name: installing gh - run: flowey e 14 flowey_lib_common::download_gh_cli 1 - shell: bash - - name: setup gh cli - run: flowey e 14 flowey_lib_common::use_gh_cli 0 - shell: bash - - name: create gh-artifact-download cache dir - run: flowey e 14 flowey_lib_common::download_gh_artifact 1 - shell: bash - name: Pre-processing cache vars run: flowey e 14 flowey_lib_common::cache 0 shell: bash @@ -2281,27 +2226,36 @@ jobs: with: key: ${{ env.floweyvar2 }} path: ${{ env.floweyvar3 }} - name: 'Restore cache: gh-artifact-download' + name: 'Restore cache: gh-cli' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey run: flowey e 14 flowey_lib_common::cache 2 shell: bash - - name: download artifacts from github - run: flowey e 14 flowey_lib_common::download_gh_artifact 2 + - name: installing gh + run: flowey e 14 flowey_lib_common::download_gh_cli 1 + shell: bash + - name: setup gh cli + run: flowey e 14 flowey_lib_common::use_gh_cli 0 + shell: bash + - name: get merge commit + run: flowey e 14 flowey_lib_common::gh_merge_commit 0 + shell: bash + - name: get action id + run: flowey e 14 flowey_lib_common::gh_workflow_id 0 + shell: bash + - name: download artifacts from github actions run + run: flowey e 14 flowey_lib_common::download_gh_artifact 1 shell: bash - name: binary size comparison run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: gh-artifact-download' - run: flowey e 14 flowey_lib_common::cache 3 - shell: bash - name: 'validate cache entry: gh-cli' - run: flowey e 14 flowey_lib_common::cache 7 + run: flowey e 14 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 14 flowey_lib_common::cache 11 + run: flowey e 14 flowey_lib_common::cache 7 shell: bash job15: name: clippy [windows], unit tests [x64-windows] diff --git a/flowey/flowey_lib_common/src/download_gh_artifact.rs b/flowey/flowey_lib_common/src/download_gh_artifact.rs index b84bd62ea..0446229e1 100644 --- a/flowey/flowey_lib_common/src/download_gh_artifact.rs +++ b/flowey/flowey_lib_common/src/download_gh_artifact.rs @@ -4,7 +4,6 @@ //! Download a github release artifact use flowey::node::prelude::*; -use std::collections::BTreeMap; flowey_request! { pub struct Request { @@ -21,13 +20,13 @@ flowey_request! { /// Path to downloaded artifact. pub path: WriteVar, /// The Github actions run id to download artifacts from - pub run_id: String + pub run_id: ReadVar } } -new_flow_node!(struct Node); +new_simple_flow_node!(struct Node); -impl FlowNode for Node { +impl SimpleFlowNode for Node { type Request = Request; fn imports(ctx: &mut ImportCtx<'_>) { @@ -35,33 +34,14 @@ impl FlowNode for Node { ctx.import::(); } - fn emit(requests: Vec, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { - let mut download_reqs: BTreeMap< - (String, String, String), - BTreeMap>>, - > = BTreeMap::new(); - for req in requests { - let Request { - repo_owner, - repo_name, - file_name, - path, - run_id, - } = req; - - // if any package needs auth, we might as well download every - // package using the GH cli. - download_reqs - .entry((repo_owner, repo_name, run_id)) - .or_default() - .entry(file_name) - .or_default() - .push(path) - } - - if download_reqs.is_empty() { - return Ok(()); - } + fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { + let Request { + repo_owner, + repo_name, + file_name, + path, + run_id, + } = request; let gh_token = ctx.get_gh_context_var(GhContextVar::GITHUB__TOKEN); ctx.req(crate::use_gh_cli::Request::WithAuth( @@ -69,170 +49,27 @@ impl FlowNode for Node { )); let gh_cli = ctx.reqv(crate::use_gh_cli::Request::Get); - match ctx.persistent_dir() { - Some(dir) => Self::with_local_cache(ctx, dir, download_reqs, gh_cli), - None => Self::with_ci_cache(ctx, download_reqs, gh_cli), - } - - Ok(()) - } -} - -impl Node { - // Have a single folder which caches downloaded artifacts - fn with_local_cache( - ctx: &mut NodeCtx<'_>, - persistent_dir: ReadVar, - download_reqs: BTreeMap<(String, String, String), BTreeMap>>>, - gh_cli: ReadVar, - ) { ctx.emit_rust_step("download artifacts from github actions run", |ctx| { let gh_cli = gh_cli.claim(ctx); - let persistent_dir = persistent_dir.claim(ctx); - let download_reqs = download_reqs.claim(ctx); - move |rt| { - let persistent_dir = rt.read(persistent_dir); - - // first - check what reqs are already present in the local cache - let mut remaining_download_reqs: BTreeMap< - (String, String, String), - BTreeMap>>, - > = BTreeMap::new(); - for ((repo_owner, repo_name, run_id), files) in download_reqs { - for (file, vars) in files { - let cached_file = persistent_dir - .join(format!("{repo_owner}/{repo_name}/{run_id}/{file}")); - - if cached_file.exists() { - for var in vars { - rt.write(var, &cached_file) - } - } else { - let existing = remaining_download_reqs - .entry((repo_owner.clone(), repo_name.clone(), run_id.clone())) - .or_default() - .insert(file, vars); - assert!(existing.is_none()); - } - } - } - - if remaining_download_reqs.is_empty() { - log::info!("100% local cache hit!"); - return Ok(()); - } - - download_all_reqs(rt, &remaining_download_reqs, &persistent_dir, gh_cli)?; - - for ((repo_owner, repo_name, run_id), files) in remaining_download_reqs { - for (file, vars) in files { - let file = persistent_dir - .join(format!("{repo_owner}/{repo_name}/{run_id}/{file}")); - assert!(file.exists()); - for var in vars { - rt.write(var, &file) - } - } - } - - Ok(()) - } - }); - } - - // Instead of having a cache directory per-repo (and spamming the - // workflow with a whole bunch of cache task requests), have a single - // cache directory for each flow's request-set. - fn with_ci_cache( - ctx: &mut NodeCtx<'_>, - download_reqs: BTreeMap<(String, String, String), BTreeMap>>>, - gh_cli: ReadVar, - ) { - let cache_dir = ctx.emit_rust_stepv("create gh-artifact-download cache dir", |_| { - |_| Ok(std::env::current_dir()?.absolute()?) - }); - - let request_set_hash = { - let hasher = &mut rustc_hash::FxHasher::default(); - for ((repo_owner, repo_name, run_id), files) in &download_reqs { - std::hash::Hash::hash(repo_owner, hasher); - std::hash::Hash::hash(repo_name, hasher); - std::hash::Hash::hash(run_id, hasher); - for file in files.keys() { - std::hash::Hash::hash(&file, hasher); - } - } - let hash = std::hash::Hasher::finish(hasher); - format!("{:08x?}", hash) - }; - - let cache_key = ReadVar::from_static(format!("gh-artifact-download-{request_set_hash}")); - let hitvar = ctx.reqv(|v| { - crate::cache::Request { - label: "gh-artifact-download".into(), - dir: cache_dir.clone(), - key: cache_key, - restore_keys: None, // OK if not exact - better than nothing - hitvar: crate::cache::CacheResult::HitVar(v), - } - }); - - ctx.emit_rust_step("download artifacts from github", |ctx| { - let cache_dir = cache_dir.claim(ctx); - let hitvar = hitvar.claim(ctx); - let gh_cli = gh_cli.claim(ctx); - let download_reqs = download_reqs.claim(ctx); + let run_id = run_id.claim(ctx); + let path = path.claim(ctx); move |rt| { - let cache_dir = rt.read(cache_dir); - let hitvar = rt.read(hitvar); + let sh = xshell::Shell::new()?; + let gh_cli = rt.read(gh_cli); + let run_id = rt.read(run_id); - if !matches!(hitvar, crate::cache::CacheHit::Hit) { - download_all_reqs(rt, &download_reqs, &cache_dir, gh_cli)?; - } + let path_end = format!("{repo_owner}/{repo_name}/{run_id}"); + let out_dir = std::env::current_dir()?.absolute()?.join(path_end); + fs_err::create_dir_all(&out_dir)?; + sh.change_dir(&out_dir); - for ((repo_owner, repo_name, run_id), files) in download_reqs { - for (file, vars) in files { - let file = - cache_dir.join(format!("{repo_owner}/{repo_name}/{run_id}/{file}")); - assert!(file.exists()); - for var in vars { - rt.write(var, &file) - } - } - } + xshell::cmd!(sh, "{gh_cli} run download {run_id} -R {repo_owner}/{repo_name} --pattern {file_name}").run()?; + rt.write(path, &out_dir); Ok(()) } }); - } -} - -fn download_all_reqs( - rt: &mut RustRuntimeServices<'_>, - download_reqs: &BTreeMap< - (String, String, String), - BTreeMap>>, - >, - cache_dir: &Path, - gh_cli: ReadVar, -) -> anyhow::Result<()> { - let sh = xshell::Shell::new()?; - let gh_cli = rt.read(gh_cli); - for ((repo_owner, repo_name, run_id), files) in download_reqs { - let repo = format!("{repo_owner}/{repo_name}"); - - let out_dir = cache_dir.join(format!("{repo_owner}/{repo_name}/{run_id}")); - fs_err::create_dir_all(&out_dir)?; - sh.change_dir(&out_dir); - - // FUTURE: while the gh cli takes care of doing simultaneous downloads in - // the context of a single (repo, tag), we might want to have flowey spawn - // multiple processes to saturate the network connection in cases where - // multiple (repo, tag) pairs are being pulled at the same time. - let patterns = files.keys().flat_map(|k| ["--pattern".into(), k.clone()]); - xshell::cmd!(sh, "{gh_cli} run download {run_id} -R {repo} {patterns...}").run()?; + Ok(()) } - - Ok(()) } diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs new file mode 100644 index 000000000..e1475a1d8 --- /dev/null +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -0,0 +1,51 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +use flowey::node::prelude::*; + +flowey_request! { + pub struct Request { + pub openvmm_repo_path: ReadVar, + pub merge_commit: WriteVar, + } +} + +new_simple_flow_node!(struct Node); + +impl SimpleFlowNode for Node { + type Request = Request; + + fn imports(_ctx: &mut ImportCtx<'_>) {} + + fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { + let Request { + openvmm_repo_path, + merge_commit, + } = request; + + ctx.emit_rust_step("get merge commit", |ctx| { + let repo_path = openvmm_repo_path.claim(ctx); + let merge_commit = merge_commit.claim(ctx); + + |rt| { + let repo_path = rt.read(repo_path); + let sh = xshell::Shell::new()?; + sh.change_dir(repo_path); + + // TODO: Make this work for non-main PRs + xshell::cmd!(sh, "git fetch origin main").run()?; + let output = xshell::cmd!(sh, "git merge-base HEAD origin/main").read(); + + if let Ok(commit) = output { + rt.write(merge_commit, &commit); + } else { + anyhow::bail!("Failed to get action id"); + } + + Ok(()) + } + }); + + Ok(()) + } +} diff --git a/flowey/flowey_lib_common/src/gh_workflow_id.rs b/flowey/flowey_lib_common/src/gh_workflow_id.rs new file mode 100644 index 000000000..ebd060086 --- /dev/null +++ b/flowey/flowey_lib_common/src/gh_workflow_id.rs @@ -0,0 +1,57 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +use flowey::node::prelude::*; + +flowey_request! { + pub struct Request { + pub github_commit_hash: ReadVar, + pub gh_workflow_id: WriteVar, + } +} + +new_simple_flow_node!(struct Node); + +impl SimpleFlowNode for Node { + type Request = Request; + + fn imports(_ctx: &mut ImportCtx<'_>) {} + + fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { + let Request { + github_commit_hash, + gh_workflow_id, + } = request; + + ctx.emit_rust_step("get action id", |ctx| { + let gh_workflow_id = gh_workflow_id.claim(ctx); + let github_commit_hash = github_commit_hash.claim(ctx); + + |rt| { + let github_commit_hash = rt.read(github_commit_hash); + let sh = xshell::Shell::new()?; + // Fetches the CI build workflow id for a given commit hash + let get_action_id = |commit: String| { + xshell::cmd!( + sh, + "gh run list --commit {commit} -w '[flowey] OpenVMM CI' -s 'completed' -L 1 --json databaseId --jq '.[].databaseId'" + ) + .read() + }; + + let action_id = get_action_id(github_commit_hash); + + if let Ok(id) = action_id { + print!("Got action id: {}", id); + rt.write(gh_workflow_id, &id); + } else { + anyhow::bail!("Failed to get action id"); + } + + Ok(()) + } + }); + + Ok(()) + } +} diff --git a/flowey/flowey_lib_common/src/lib.rs b/flowey/flowey_lib_common/src/lib.rs index 7d070e00b..79718721f 100644 --- a/flowey/flowey_lib_common/src/lib.rs +++ b/flowey/flowey_lib_common/src/lib.rs @@ -32,7 +32,9 @@ pub mod download_mdbook_mermaid; pub mod download_nuget_exe; pub mod download_protoc; pub mod gh_download_azure_key_vault_secret; +pub mod gh_merge_commit; pub mod gh_task_azure_login; +pub mod gh_workflow_id; pub mod git_checkout; pub mod install_azure_cli; pub mod install_dist_pkg; diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index d1f6f99d1..4f219b2cf 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -3,7 +3,7 @@ use crate::run_cargo_build::common::{CommonArch, CommonTriple}; use flowey::node::prelude::*; -use flowey_lib_common::download_gh_artifact; +use flowey_lib_common::{download_gh_artifact, gh_merge_commit, gh_workflow_id}; flowey_request! { pub struct Request { @@ -22,6 +22,8 @@ impl SimpleFlowNode for Node { ctx.import::(); ctx.import::(); ctx.import::(); + ctx.import::(); + ctx.import::(); } fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { @@ -42,12 +44,22 @@ impl SimpleFlowNode for Node { CommonArch::Aarch64 => "aarch64-openhcl-igvm-extras", }; + let merge_commit = ctx.reqv(|v| gh_merge_commit::Request { + merge_commit: v, + openvmm_repo_path: openvmm_repo_path.clone(), + }); + + let merge_run_id = ctx.reqv(|v| gh_workflow_id::Request { + github_commit_hash: merge_commit, + gh_workflow_id: v, + }); + let merge_head_artifact = ctx.reqv(|old_openhcl| download_gh_artifact::Request { repo_owner: "microsoft".into(), repo_name: "openvmm".into(), file_name: file_name.into(), path: old_openhcl, - run_id: "12438300136".into(), + run_id: merge_run_id, }); ctx.emit_rust_step("binary size comparison", |ctx| { From e9108a5d8769495e27c7dc9d3c1d292cfbfd6473 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 11:25:30 -0800 Subject: [PATCH 12/42] output error --- flowey/flowey_lib_common/src/gh_merge_commit.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index e1475a1d8..d5f825fe5 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -39,7 +39,7 @@ impl SimpleFlowNode for Node { if let Ok(commit) = output { rt.write(merge_commit, &commit); } else { - anyhow::bail!("Failed to get action id"); + anyhow::bail!("Failed to get merge commit: {:?}", output); } Ok(()) From 51cb2a3a1d67b62aa967d55f8f524b64604425bc Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 11:45:37 -0800 Subject: [PATCH 13/42] get stdout and stderr to debug ci issue --- flowey/flowey_lib_common/src/gh_merge_commit.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index d5f825fe5..3a9982760 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -34,10 +34,10 @@ impl SimpleFlowNode for Node { // TODO: Make this work for non-main PRs xshell::cmd!(sh, "git fetch origin main").run()?; - let output = xshell::cmd!(sh, "git merge-base HEAD origin/main").read(); + let output = xshell::cmd!(sh, "git merge-base HEAD origin/main").output(); if let Ok(commit) = output { - rt.write(merge_commit, &commit); + rt.write(merge_commit, &format!("{:?}", commit)); } else { anyhow::bail!("Failed to get merge commit: {:?}", output); } From bc7963ede4212fbf1c7177c68e9857cb9597d4f6 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 12:16:12 -0800 Subject: [PATCH 14/42] try getting stderr again --- flowey/flowey_lib_common/src/gh_merge_commit.rs | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index 3a9982760..ea2d7f8ea 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -25,7 +25,7 @@ impl SimpleFlowNode for Node { ctx.emit_rust_step("get merge commit", |ctx| { let repo_path = openvmm_repo_path.claim(ctx); - let merge_commit = merge_commit.claim(ctx); + let _merge_commit = merge_commit.claim(ctx); |rt| { let repo_path = rt.read(repo_path); @@ -34,13 +34,10 @@ impl SimpleFlowNode for Node { // TODO: Make this work for non-main PRs xshell::cmd!(sh, "git fetch origin main").run()?; - let output = xshell::cmd!(sh, "git merge-base HEAD origin/main").output(); - - if let Ok(commit) = output { - rt.write(merge_commit, &format!("{:?}", commit)); - } else { - anyhow::bail!("Failed to get merge commit: {:?}", output); - } + let output = xshell::cmd!(sh, "git merge-base HEAD origin/main") + .ignore_status() + .read_stderr()?; + println!("{}", output); Ok(()) } From a0f9c0d776ccf22c0f0efe95889c5fec36884b8b Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 12:44:08 -0800 Subject: [PATCH 15/42] another attempt at getting git merge-base output --- flowey/flowey_lib_common/src/gh_merge_commit.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index ea2d7f8ea..94826bed5 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -34,9 +34,7 @@ impl SimpleFlowNode for Node { // TODO: Make this work for non-main PRs xshell::cmd!(sh, "git fetch origin main").run()?; - let output = xshell::cmd!(sh, "git merge-base HEAD origin/main") - .ignore_status() - .read_stderr()?; + let output = xshell::cmd!(sh, "git merge-base HEAD origin/main").ignore_status().run()?; println!("{}", output); Ok(()) From d7c38a5eb8bdc65039f9f6dadecb36ca9fe5bb77 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 12:52:48 -0800 Subject: [PATCH 16/42] fix build and format --- flowey/flowey_lib_common/src/gh_merge_commit.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index 94826bed5..537361e56 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -34,8 +34,9 @@ impl SimpleFlowNode for Node { // TODO: Make this work for non-main PRs xshell::cmd!(sh, "git fetch origin main").run()?; - let output = xshell::cmd!(sh, "git merge-base HEAD origin/main").ignore_status().run()?; - println!("{}", output); + xshell::cmd!(sh, "git merge-base HEAD origin/main") + .ignore_status() + .run()?; Ok(()) } From 77167e0f58a00cb58a01fa96d5c3940449df8ed1 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 13:12:02 -0800 Subject: [PATCH 17/42] print git status --- flowey/flowey_lib_common/src/gh_merge_commit.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index 537361e56..cd6a161b4 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -34,6 +34,7 @@ impl SimpleFlowNode for Node { // TODO: Make this work for non-main PRs xshell::cmd!(sh, "git fetch origin main").run()?; + xshell::cmd!(sh, "git status").run()?; xshell::cmd!(sh, "git merge-base HEAD origin/main") .ignore_status() .run()?; From 40363c4de135379b6f33893dbe2557bf14fda4fa Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 14:28:34 -0800 Subject: [PATCH 18/42] get head ref from github context variable --- .github/workflows/openvmm-ci.yaml | 10 ++++++++-- .github/workflows/openvmm-pr.yaml | 10 ++++++++-- flowey/flowey_core/src/node.rs | 3 +++ .../gh_flowey_bootstrap_template.yml | 2 +- .../flowey_lib_common/src/gh_merge_commit.rs | 19 ++++++------------- .../src/_jobs/check_openvmm_hcl_size.rs | 5 +---- 6 files changed, 27 insertions(+), 22 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index 5d2140e5d..f42a7b8de 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -1800,8 +1800,11 @@ jobs: - name: setup gh cli run: flowey e 13 flowey_lib_common::use_gh_cli 0 shell: bash + - run: ${{ github.head_ref }} + shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:22:28' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.head_ref' - name: get merge commit - run: flowey e 13 flowey_lib_common::gh_merge_commit 0 + run: flowey e 13 flowey_lib_common::gh_merge_commit 1 shell: bash - name: get action id run: flowey e 13 flowey_lib_common::gh_workflow_id 0 @@ -2592,8 +2595,11 @@ jobs: - name: setup gh cli run: flowey e 15 flowey_lib_common::use_gh_cli 0 shell: bash + - run: ${{ github.head_ref }} + shell: flowey v 15 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:22:28' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.head_ref' - name: get merge commit - run: flowey e 15 flowey_lib_common::gh_merge_commit 0 + run: flowey e 15 flowey_lib_common::gh_merge_commit 1 shell: bash - name: get action id run: flowey e 15 flowey_lib_common::gh_workflow_id 0 diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 6d6cb4e09..be54b66bb 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -1447,8 +1447,11 @@ jobs: - name: setup gh cli run: flowey e 12 flowey_lib_common::use_gh_cli 0 shell: bash + - run: ${{ github.head_ref }} + shell: flowey v 12 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:22:28' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.head_ref' - name: get merge commit - run: flowey e 12 flowey_lib_common::gh_merge_commit 0 + run: flowey e 12 flowey_lib_common::gh_merge_commit 1 shell: bash - name: get action id run: flowey e 12 flowey_lib_common::gh_workflow_id 0 @@ -2239,8 +2242,11 @@ jobs: - name: setup gh cli run: flowey e 14 flowey_lib_common::use_gh_cli 0 shell: bash + - run: ${{ github.head_ref }} + shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:22:28' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.head_ref' - name: get merge commit - run: flowey e 14 flowey_lib_common::gh_merge_commit 0 + run: flowey e 14 flowey_lib_common::gh_merge_commit 1 shell: bash - name: get action id run: flowey e 14 flowey_lib_common::gh_workflow_id 0 diff --git a/flowey/flowey_core/src/node.rs b/flowey/flowey_core/src/node.rs index 1245590ef..043bb3d0e 100644 --- a/flowey/flowey_core/src/node.rs +++ b/flowey/flowey_core/src/node.rs @@ -1793,6 +1793,9 @@ pub mod steps { /// `github.token` pub const GITHUB__TOKEN: GhContextVar = GhContextVar::new_secret("github.token"); + + /// `github.head_ref` + pub const GITHUB__HEAD_REF: GhContextVar = GhContextVar::new("github.head_ref"); } impl GhContextVar { diff --git a/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml b/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml index f24b6954a..ca16012eb 100644 --- a/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml +++ b/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml @@ -12,7 +12,7 @@ #### Flowey Build Dependencies -# On Linux, install gcc and rust to build flowey. +# On Linux, install gcc and rust to build flowey. # The apt-get retries below avoid failures in CI that can be # intermittently caused by other processes temporarily holding # the necessary dpkg or apt locks. diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index cd6a161b4..4e4049dff 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -5,7 +5,6 @@ use flowey::node::prelude::*; flowey_request! { pub struct Request { - pub openvmm_repo_path: ReadVar, pub merge_commit: WriteVar, } } @@ -18,26 +17,20 @@ impl SimpleFlowNode for Node { fn imports(_ctx: &mut ImportCtx<'_>) {} fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { - let Request { - openvmm_repo_path, - merge_commit, - } = request; + let Request { merge_commit } = request; + + let head_ref = ctx.get_gh_context_var(GhContextVar::GITHUB__HEAD_REF); ctx.emit_rust_step("get merge commit", |ctx| { - let repo_path = openvmm_repo_path.claim(ctx); let _merge_commit = merge_commit.claim(ctx); + let head_ref = head_ref.claim(ctx); |rt| { - let repo_path = rt.read(repo_path); let sh = xshell::Shell::new()?; - sh.change_dir(repo_path); + let head_ref = rt.read(head_ref); // TODO: Make this work for non-main PRs - xshell::cmd!(sh, "git fetch origin main").run()?; - xshell::cmd!(sh, "git status").run()?; - xshell::cmd!(sh, "git merge-base HEAD origin/main") - .ignore_status() - .run()?; + xshell::cmd!(sh, "git merge-base {head_ref} origin/main").run()?; Ok(()) } diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 4f219b2cf..9ef884f50 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -44,10 +44,7 @@ impl SimpleFlowNode for Node { CommonArch::Aarch64 => "aarch64-openhcl-igvm-extras", }; - let merge_commit = ctx.reqv(|v| gh_merge_commit::Request { - merge_commit: v, - openvmm_repo_path: openvmm_repo_path.clone(), - }); + let merge_commit = ctx.reqv(|v| gh_merge_commit::Request { merge_commit: v }); let merge_run_id = ctx.reqv(|v| gh_workflow_id::Request { github_commit_hash: merge_commit, From 4f01015b39e9b494e718e292fe908a1529aa3f91 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 14:30:40 -0800 Subject: [PATCH 19/42] write merge commit to variable --- flowey/flowey_lib_common/src/gh_merge_commit.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index 4e4049dff..5580b0917 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -22,7 +22,7 @@ impl SimpleFlowNode for Node { let head_ref = ctx.get_gh_context_var(GhContextVar::GITHUB__HEAD_REF); ctx.emit_rust_step("get merge commit", |ctx| { - let _merge_commit = merge_commit.claim(ctx); + let merge_commit = merge_commit.claim(ctx); let head_ref = head_ref.claim(ctx); |rt| { @@ -30,7 +30,8 @@ impl SimpleFlowNode for Node { let head_ref = rt.read(head_ref); // TODO: Make this work for non-main PRs - xshell::cmd!(sh, "git merge-base {head_ref} origin/main").run()?; + let commit = xshell::cmd!(sh, "git merge-base {head_ref} origin/main").read()?; + rt.write(merge_commit, &commit); Ok(()) } From e17187d501e44c20ec177303c796d6555ad16928 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 15:05:08 -0800 Subject: [PATCH 20/42] still need to be in checked out repo --- .github/workflows/openvmm-ci.yaml | 4 ++-- .github/workflows/openvmm-pr.yaml | 4 ++-- flowey/flowey_lib_common/src/gh_merge_commit.rs | 10 +++++++++- .../src/_jobs/check_openvmm_hcl_size.rs | 5 ++++- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index f42a7b8de..f5a8a918e 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -1801,7 +1801,7 @@ jobs: run: flowey e 13 flowey_lib_common::use_gh_cli 0 shell: bash - run: ${{ github.head_ref }} - shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:22:28' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.head_ref' - name: get merge commit run: flowey e 13 flowey_lib_common::gh_merge_commit 1 @@ -2596,7 +2596,7 @@ jobs: run: flowey e 15 flowey_lib_common::use_gh_cli 0 shell: bash - run: ${{ github.head_ref }} - shell: flowey v 15 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:22:28' --update-from-file {0} --is-raw-string + shell: flowey v 15 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.head_ref' - name: get merge commit run: flowey e 15 flowey_lib_common::gh_merge_commit 1 diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index be54b66bb..8d8f93437 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -1448,7 +1448,7 @@ jobs: run: flowey e 12 flowey_lib_common::use_gh_cli 0 shell: bash - run: ${{ github.head_ref }} - shell: flowey v 12 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:22:28' --update-from-file {0} --is-raw-string + shell: flowey v 12 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.head_ref' - name: get merge commit run: flowey e 12 flowey_lib_common::gh_merge_commit 1 @@ -2243,7 +2243,7 @@ jobs: run: flowey e 14 flowey_lib_common::use_gh_cli 0 shell: bash - run: ${{ github.head_ref }} - shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:22:28' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.head_ref' - name: get merge commit run: flowey e 14 flowey_lib_common::gh_merge_commit 1 diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index 5580b0917..b9c9eb0ff 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -5,6 +5,7 @@ use flowey::node::prelude::*; flowey_request! { pub struct Request { + pub repo_path: ReadVar, pub merge_commit: WriteVar, } } @@ -17,18 +18,25 @@ impl SimpleFlowNode for Node { fn imports(_ctx: &mut ImportCtx<'_>) {} fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { - let Request { merge_commit } = request; + let Request { + repo_path, + merge_commit, + } = request; let head_ref = ctx.get_gh_context_var(GhContextVar::GITHUB__HEAD_REF); ctx.emit_rust_step("get merge commit", |ctx| { let merge_commit = merge_commit.claim(ctx); let head_ref = head_ref.claim(ctx); + let repo_path = repo_path.claim(ctx); |rt| { let sh = xshell::Shell::new()?; + let repo_path = rt.read(repo_path); let head_ref = rt.read(head_ref); + sh.change_dir(repo_path); + // TODO: Make this work for non-main PRs let commit = xshell::cmd!(sh, "git merge-base {head_ref} origin/main").read()?; rt.write(merge_commit, &commit); diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 9ef884f50..36a1194e3 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -44,7 +44,10 @@ impl SimpleFlowNode for Node { CommonArch::Aarch64 => "aarch64-openhcl-igvm-extras", }; - let merge_commit = ctx.reqv(|v| gh_merge_commit::Request { merge_commit: v }); + let merge_commit = ctx.reqv(|v| gh_merge_commit::Request { + repo_path: openvmm_repo_path.clone(), + merge_commit: v, + }); let merge_run_id = ctx.reqv(|v| gh_workflow_id::Request { github_commit_hash: merge_commit, From ce02bdc425247ae2a6feb7ff2f6f1dc85c0ab624 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 15:32:47 -0800 Subject: [PATCH 21/42] change gh context variable --- flowey/flowey_core/src/node.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/flowey/flowey_core/src/node.rs b/flowey/flowey_core/src/node.rs index 043bb3d0e..3bbb493da 100644 --- a/flowey/flowey_core/src/node.rs +++ b/flowey/flowey_core/src/node.rs @@ -1794,8 +1794,9 @@ pub mod steps { /// `github.token` pub const GITHUB__TOKEN: GhContextVar = GhContextVar::new_secret("github.token"); - /// `github.head_ref` - pub const GITHUB__HEAD_REF: GhContextVar = GhContextVar::new("github.head_ref"); + /// Head ref of a pull request - this is different from `github.head_ref`, which + /// is something like `/pull/ID/merge`. This gives `/pull/ID/head` + pub const GITHUB__HEAD_REF: GhContextVar = GhContextVar::new("github.event.pull_request.head.ref"); } impl GhContextVar { From 1538c7c65f84ca30ac311392ffe6a3a74d2c4e6c Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 15:50:34 -0800 Subject: [PATCH 22/42] build --- .github/workflows/openvmm-ci.yaml | 8 ++++---- .github/workflows/openvmm-pr.yaml | 8 ++++---- flowey/flowey_core/src/node.rs | 3 ++- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index f5a8a918e..75cf8b383 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -1800,9 +1800,9 @@ jobs: - name: setup gh cli run: flowey e 13 flowey_lib_common::use_gh_cli 0 shell: bash - - run: ${{ github.head_ref }} + - run: ${{ github.event.pull_request.head.ref }} shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.head_ref' + name: 🌼 Read from 'github.event.pull_request.head.ref' - name: get merge commit run: flowey e 13 flowey_lib_common::gh_merge_commit 1 shell: bash @@ -2595,9 +2595,9 @@ jobs: - name: setup gh cli run: flowey e 15 flowey_lib_common::use_gh_cli 0 shell: bash - - run: ${{ github.head_ref }} + - run: ${{ github.event.pull_request.head.ref }} shell: flowey v 15 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.head_ref' + name: 🌼 Read from 'github.event.pull_request.head.ref' - name: get merge commit run: flowey e 15 flowey_lib_common::gh_merge_commit 1 shell: bash diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 8d8f93437..145b12d9c 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -1447,9 +1447,9 @@ jobs: - name: setup gh cli run: flowey e 12 flowey_lib_common::use_gh_cli 0 shell: bash - - run: ${{ github.head_ref }} + - run: ${{ github.event.pull_request.head.ref }} shell: flowey v 12 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.head_ref' + name: 🌼 Read from 'github.event.pull_request.head.ref' - name: get merge commit run: flowey e 12 flowey_lib_common::gh_merge_commit 1 shell: bash @@ -2242,9 +2242,9 @@ jobs: - name: setup gh cli run: flowey e 14 flowey_lib_common::use_gh_cli 0 shell: bash - - run: ${{ github.head_ref }} + - run: ${{ github.event.pull_request.head.ref }} shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.head_ref' + name: 🌼 Read from 'github.event.pull_request.head.ref' - name: get merge commit run: flowey e 14 flowey_lib_common::gh_merge_commit 1 shell: bash diff --git a/flowey/flowey_core/src/node.rs b/flowey/flowey_core/src/node.rs index 3bbb493da..1c65be4b7 100644 --- a/flowey/flowey_core/src/node.rs +++ b/flowey/flowey_core/src/node.rs @@ -1796,7 +1796,8 @@ pub mod steps { /// Head ref of a pull request - this is different from `github.head_ref`, which /// is something like `/pull/ID/merge`. This gives `/pull/ID/head` - pub const GITHUB__HEAD_REF: GhContextVar = GhContextVar::new("github.event.pull_request.head.ref"); + pub const GITHUB__HEAD_REF: GhContextVar = + GhContextVar::new("github.event.pull_request.head.ref"); } impl GhContextVar { From b9c35360cecd2ada8317c391c113954de918c0b0 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 16:25:30 -0800 Subject: [PATCH 23/42] try fetch depth of 0 --- .github/workflows/openvmm-ci.yaml | 18 ++++++++++++++++++ .github/workflows/openvmm-pr.yaml | 18 ++++++++++++++++++ .../gh_flowey_bootstrap_template.yml | 1 + 3 files changed, 37 insertions(+) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index 75cf8b383..e7b67c4a3 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -56,6 +56,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -246,6 +247,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -449,6 +451,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -810,6 +813,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1234,6 +1238,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1864,6 +1869,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -2658,6 +2664,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -2983,6 +2990,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3356,6 +3364,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3727,6 +3736,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci @@ -4007,6 +4017,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5660,6 +5671,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5871,6 +5883,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6061,6 +6074,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -6262,6 +6276,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6562,6 +6577,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6857,6 +6873,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -7160,6 +7177,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 145b12d9c..4d7d91cd9 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -64,6 +64,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -254,6 +255,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -457,6 +459,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -881,6 +884,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1511,6 +1515,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -2305,6 +2310,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -2630,6 +2636,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3003,6 +3010,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3374,6 +3382,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci @@ -4013,6 +4022,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5299,6 +5309,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5490,6 +5501,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -5680,6 +5692,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5881,6 +5894,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6181,6 +6195,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6476,6 +6491,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6779,6 +6795,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -7075,6 +7092,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci diff --git a/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml b/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml index ca16012eb..668e50273 100644 --- a/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml +++ b/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml @@ -52,6 +52,7 @@ - uses: actions/checkout@v4 with: + fetch-depth: 0 path: flowey_bootstrap # - CARGO_INCREMENTAL=0 - no need to waste time on incremental artifacts in CI From ecb554a6470fe7931dfd65450bd14c27acef8156 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 16:45:02 -0800 Subject: [PATCH 24/42] try getting fetch depth 0 again --- .github/workflows/openvmm-ci.yaml | 84 +++++++++---------- .github/workflows/openvmm-pr.yaml | 84 +++++++++---------- .../gh_flowey_bootstrap_template.yml | 2 +- .../src/_jobs/cfg_hvlite_reposource.rs | 2 +- 4 files changed, 86 insertions(+), 86 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index e7b67c4a3..e01c0de71 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -56,7 +56,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -168,7 +168,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -247,7 +247,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -315,7 +315,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -451,7 +451,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -576,7 +576,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -813,7 +813,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -940,7 +940,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -1238,7 +1238,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1357,7 +1357,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -1685,7 +1685,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -1869,7 +1869,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1988,7 +1988,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -2481,7 +2481,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -2664,7 +2664,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -2739,7 +2739,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -2990,7 +2990,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3106,7 +3106,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3364,7 +3364,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3439,7 +3439,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3736,7 +3736,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci @@ -3846,7 +3846,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -4017,7 +4017,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -4085,7 +4085,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -4345,7 +4345,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -4704,7 +4704,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5065,7 +5065,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5422,7 +5422,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5671,7 +5671,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5737,7 +5737,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -5883,7 +5883,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -5949,7 +5949,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -6074,7 +6074,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -6140,7 +6140,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -6276,7 +6276,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6361,7 +6361,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -6577,7 +6577,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6690,7 +6690,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -6873,7 +6873,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6958,7 +6958,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -7177,7 +7177,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -7290,7 +7290,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 4d7d91cd9..a09916e9a 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -64,7 +64,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -176,7 +176,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -255,7 +255,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -323,7 +323,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -459,7 +459,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -586,7 +586,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -884,7 +884,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1003,7 +1003,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -1331,7 +1331,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -1515,7 +1515,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1634,7 +1634,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -2127,7 +2127,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -2310,7 +2310,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -2385,7 +2385,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -2636,7 +2636,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -2752,7 +2752,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3010,7 +3010,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3085,7 +3085,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3382,7 +3382,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci @@ -3492,7 +3492,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3773,7 +3773,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -4022,7 +4022,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -4090,7 +4090,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -4342,7 +4342,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -4703,7 +4703,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5060,7 +5060,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5309,7 +5309,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5375,7 +5375,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -5501,7 +5501,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -5567,7 +5567,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -5692,7 +5692,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5758,7 +5758,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -5894,7 +5894,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -5979,7 +5979,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -6195,7 +6195,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6308,7 +6308,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -6491,7 +6491,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6576,7 +6576,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -6795,7 +6795,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6908,7 +6908,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -7092,7 +7092,7 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -7217,7 +7217,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '1' + fetch-depth: '0' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite diff --git a/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml b/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml index 668e50273..93fe9fac1 100644 --- a/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml +++ b/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml @@ -52,7 +52,7 @@ - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 1 path: flowey_bootstrap # - CARGO_INCREMENTAL=0 - no need to waste time on incremental artifacts in CI diff --git a/flowey/flowey_lib_hvlite/src/_jobs/cfg_hvlite_reposource.rs b/flowey/flowey_lib_hvlite/src/_jobs/cfg_hvlite_reposource.rs index 0feb147e8..6b49b5685 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/cfg_hvlite_reposource.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/cfg_hvlite_reposource.rs @@ -40,7 +40,7 @@ impl SimpleFlowNode for Node { repo_id: "hvlite".into(), repo_src: hvlite_repo_source, allow_persist_credentials: false, - depth: Some(1), // shallow fetch + depth: Some(0), pre_run_deps: Vec::new(), // no special auth required }); From e4df6d7a5d59f2569fb511452a001a5d3d29799e Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 22:52:15 -0800 Subject: [PATCH 25/42] roundabout way of fetching pr branch hopefully --- .github/workflows/openvmm-ci.yaml | 2514 ++++++++--------- .github/workflows/openvmm-pr.yaml | 2321 +++++++-------- flowey/flowey_core/src/node.rs | 4 + .../src/pipelines/checkin_gates.rs | 44 +- .../flowey_lib_common/src/gh_merge_commit.rs | 4 + 5 files changed, 2236 insertions(+), 2651 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index 0aaa94bea..1a420d0c2 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -1611,222 +1611,7 @@ jobs: with: name: aarch64-openhcl-igvm-extras path: ${{ runner.temp }}/publish_artifacts/aarch64-openhcl-igvm-extras/ - - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job12.json - shell: bash - - name: 🌼πŸ₯Ύ Publish bootstrapped flowey - uses: actions/upload-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-7 - path: ${{ runner.temp }}/bootstrapped-flowey job13: - name: verify openhcl binary size [aarch64] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB - permissions: - contents: read - id-token: write - needs: - - job12 - if: github.event.pull_request.draft == false - steps: - - name: 🌼πŸ₯Ύ Download bootstrapped flowey - uses: actions/download-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-7 - path: ${{ runner.temp }}/bootstrapped-flowey - - name: πŸŒΌπŸ“¦ Download aarch64-openhcl-igvm-extras - uses: actions/download-artifact@v4 - with: - name: aarch64-openhcl-igvm-extras - path: ${{ runner.temp }}/used_artifacts/aarch64-openhcl-igvm-extras/ - - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $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/bootstrapped-flowey/flowey - - echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 13 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - echo "$AgentTempDirNormal/used_artifacts/aarch64-openhcl-igvm-extras" | flowey v 13 'artifact_use_from_aarch64-openhcl-igvm-extras' --update-from-stdin --is-raw-string - shell: bash - - name: install Rust - run: flowey e 13 flowey_lib_common::install_rust 0 - shell: bash - - name: detect active toolchain - run: flowey e 13 flowey_lib_common::install_rust 1 - shell: bash - - name: report common cargo flags - run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 13 flowey_lib_common::git_checkout 0 - shell: bash - - run: | - flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar1 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 13 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: create gh-release-download cache dir - run: flowey e 13 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey v 13 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 13 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 6 - shell: bash - - name: download artifacts from github releases - run: flowey e 13 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 13 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 13 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 13 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: symlink protoc - run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: unpack openvmm-deps archive - run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 - shell: bash - - name: extract Aarch64 sysroot.tar.gz - run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 - shell: bash - - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 - shell: bash - - name: cargo build xtask - run: flowey e 13 flowey_lib_common::run_cargo_build 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 - shell: bash - - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 - shell: bash - - name: reporting split debug info - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 - shell: bash - - name: report built xtask - run: flowey e 13 flowey_lib_hvlite::build_xtask 0 - shell: bash - - run: ${{ github.token }} - shell: flowey v 13 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.token' - - name: create gh cache dir - run: flowey e 13 flowey_lib_common::download_gh_cli 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - run: | - flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} - name: 'Restore cache: gh-cli' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 2 - shell: bash - - name: installing gh - run: flowey e 13 flowey_lib_common::download_gh_cli 1 - shell: bash - - name: setup gh cli - run: flowey e 13 flowey_lib_common::use_gh_cli 0 - shell: bash - - run: ${{ github.event.pull_request.head.ref }} - shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.event.pull_request.head.ref' - - name: get merge commit - run: flowey e 13 flowey_lib_common::gh_merge_commit 1 - shell: bash - - name: get action id - run: flowey e 13 flowey_lib_common::gh_workflow_id 0 - shell: bash - - name: download artifacts from github actions run - run: flowey e 13 flowey_lib_common::download_gh_artifact 1 - shell: bash - - name: binary size comparison - run: flowey e 13 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 - shell: bash - - name: 'validate cache entry: gh-cli' - run: flowey e 13 flowey_lib_common::cache 3 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 13 flowey_lib_common::cache 7 - shell: bash - job14: name: build openhcl [x64-linux] runs-on: - self-hosted @@ -1913,37 +1698,37 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 14 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 14 'param0' --update-from-stdin + cat <<'EOF' | flowey v 13 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 14 'artifact_publish_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 13 'artifact_publish_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" - echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 14 'artifact_publish_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" - echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" | flowey v 14 'artifact_publish_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string shell: bash - name: checking if packages need to be installed - run: flowey e 14 flowey_lib_common::install_dist_pkg 0 + run: flowey e 13 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 14 flowey_lib_common::install_dist_pkg 1 + run: flowey e 13 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 14 flowey_lib_common::download_gh_release 0 + run: flowey e 13 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 0 + run: flowey e 13 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' - run: | - flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - id: flowey_lib_common__cache__1 @@ -1953,35 +1738,35 @@ jobs: path: ${{ env.floweyvar2 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 2 + run: flowey e 13 flowey_lib_common::cache 2 shell: bash - name: download artifacts from github releases - run: flowey e 14 flowey_lib_common::download_gh_release 1 + run: flowey e 13 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 14 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 13 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: install Rust - run: flowey e 14 flowey_lib_common::install_rust 0 + run: flowey e 13 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 14 flowey_lib_common::install_rust 1 + run: flowey e 13 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 14 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 14 flowey_lib_common::git_checkout 0 + run: flowey e 13 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -1994,403 +1779,403 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 14 flowey_lib_common::git_checkout 3 + run: flowey e 13 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 14 flowey_lib_common::download_protoc 0 + run: flowey e 13 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: cargo build openhcl_boot - run: flowey e 14 flowey_lib_common::run_cargo_build 1 + run: flowey e 13 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 5 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 5 shell: bash - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built openhcl_boot - run: flowey e 14 flowey_lib_hvlite::build_openhcl_boot 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_boot 0 shell: bash - name: unpack kernel package - run: flowey e 14 flowey_lib_hvlite::download_openhcl_kernel_package 2 + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 shell: bash - name: unpack openvmm-deps archive - run: flowey e 14 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build openvmm_hcl - run: flowey e 14 flowey_lib_common::run_cargo_build 2 + run: flowey e 13 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: report built openvmm_hcl - run: flowey e 14 flowey_lib_hvlite::build_openvmm_hcl 0 + run: flowey e 13 flowey_lib_hvlite::build_openvmm_hcl 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 shell: bash - name: building openhcl initrd - run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 4 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 4 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 shell: bash - name: enumerate igvm resources - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo build igvmfilegen - run: flowey e 14 flowey_lib_common::run_cargo_build 0 + run: flowey e 13 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 7 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 7 shell: bash - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built igvmfilegen - run: flowey e 14 flowey_lib_hvlite::build_igvmfilegen 0 + run: flowey e 13 flowey_lib_hvlite::build_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 shell: bash - name: building igvm file - run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 4 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 4 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 shell: bash - name: unpack kernel package - run: flowey e 14 flowey_lib_hvlite::download_openhcl_kernel_package 0 + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 0 shell: bash - name: building openhcl initrd - run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 shell: bash - name: enumerate igvm resources - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 shell: bash - name: building igvm file - run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 0 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 shell: bash - name: building openhcl initrd - run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 1 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 1 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 shell: bash - name: enumerate igvm resources - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 shell: bash - name: building igvm file - run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 1 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 1 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 4 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 4 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 shell: bash - name: building openhcl initrd - run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 2 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 shell: bash - name: enumerate igvm resources - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 shell: bash - name: building igvm file - run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 2 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 shell: bash - name: unpack kernel package - run: flowey e 14 flowey_lib_hvlite::download_openhcl_kernel_package 1 + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 1 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 shell: bash - name: building openhcl initrd - run: flowey e 14 flowey_lib_hvlite::build_openhcl_initrd 3 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 3 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 shell: bash - name: enumerate igvm resources - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 shell: bash - name: building igvm file - run: flowey e 14 flowey_lib_hvlite::run_igvmfilegen 3 + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 3 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 shell: bash - name: describe OpenHCL igvm artifact - run: flowey e 14 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 + run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 shell: bash - name: copying OpenHCL igvm files to artifact dir - run: flowey e 14 flowey_lib_common::copy_to_artifact_dir 1 + run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 1 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 shell: bash - name: 🌼 Zip Vars - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 shell: bash - name: describe OpenHCL igvm extras artifact - run: flowey e 14 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 + run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 shell: bash - name: copying OpenHCL igvm extras to artifact dir - run: flowey e 14 flowey_lib_common::copy_to_artifact_dir 0 + run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build pipette - run: flowey e 14 flowey_lib_common::run_cargo_build 3 + run: flowey e 13 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 6 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 6 shell: bash - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 8 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 8 shell: bash - name: report built pipette - run: flowey e 14 flowey_lib_hvlite::build_pipette 0 + run: flowey e 13 flowey_lib_hvlite::build_pipette 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::artifact_pipette::publish 0 + run: flowey e 13 flowey_lib_hvlite::artifact_pipette::publish 0 shell: bash - name: copying pipette to artifact dir - run: flowey e 14 flowey_lib_common::copy_to_artifact_dir 2 + run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 14 flowey_lib_common::cache 3 + run: flowey e 13 flowey_lib_common::cache 3 shell: bash - name: πŸŒΌπŸ“¦ Publish x64-linux-musl-pipette uses: actions/upload-artifact@v4 @@ -2408,14 +2193,14 @@ jobs: name: x64-openhcl-igvm-extras path: ${{ runner.temp }}/publish_artifacts/x64-openhcl-igvm-extras/ - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job14.json + run: rm $AgentTempDirNormal/bootstrapped-flowey/job13.json shell: bash - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: name: _internal-flowey-bootstrap-x86_64-linux-uid-6 path: ${{ runner.temp }}/bootstrapped-flowey - job15: + job14: name: verify openhcl binary size [x64] runs-on: - self-hosted @@ -2425,7 +2210,7 @@ jobs: contents: read id-token: write needs: - - job14 + - job13 if: github.event.pull_request.draft == false steps: - name: 🌼πŸ₯Ύ Download bootstrapped flowey @@ -2449,32 +2234,32 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 15 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 14 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 15 'param0' --update-from-stdin + cat <<'EOF' | flowey v 14 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras" | flowey v 15 'artifact_use_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras" | flowey v 14 'artifact_use_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string shell: bash - name: install Rust - run: flowey e 15 flowey_lib_common::install_rust 0 + run: flowey e 14 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 15 flowey_lib_common::install_rust 1 + run: flowey e 14 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 15 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 14 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 15 flowey_lib_common::git_checkout 0 + run: flowey e 14 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2487,29 +2272,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 15 flowey_lib_common::git_checkout 3 + run: flowey e 14 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey e 15 flowey_lib_common::download_gh_release 0 + run: flowey e 14 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 4 + run: flowey e 14 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2519,68 +2304,68 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 6 + run: flowey e 14 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 15 flowey_lib_common::download_gh_release 1 + run: flowey e 14 flowey_lib_common::download_gh_release 1 shell: bash - name: checking if packages need to be installed - run: flowey e 15 flowey_lib_common::install_dist_pkg 0 + run: flowey e 14 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 15 flowey_lib_common::install_dist_pkg 1 + run: flowey e 14 flowey_lib_common::install_dist_pkg 1 shell: bash - name: unpack protoc - run: flowey e 15 flowey_lib_common::download_protoc 0 + run: flowey e 14 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: unpack openvmm-deps archive - run: flowey e 15 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 14 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 14 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 0 + run: flowey e 14 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 0 + run: flowey e 14 flowey_lib_hvlite::build_xtask 0 shell: bash - run: ${{ github.token }} - shell: flowey v 15 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: create gh cache dir - run: flowey e 15 flowey_lib_common::download_gh_cli 0 + run: flowey e 14 flowey_lib_common::download_gh_cli 0 shell: bash - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 0 + run: flowey e 14 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2590,39 +2375,42 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: gh-cli' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 2 + run: flowey e 14 flowey_lib_common::cache 2 shell: bash - name: installing gh - run: flowey e 15 flowey_lib_common::download_gh_cli 1 + run: flowey e 14 flowey_lib_common::download_gh_cli 1 shell: bash - name: setup gh cli - run: flowey e 15 flowey_lib_common::use_gh_cli 0 + run: flowey e 14 flowey_lib_common::use_gh_cli 0 shell: bash - run: ${{ github.event.pull_request.head.ref }} - shell: flowey v 15 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.event.pull_request.head.ref' + - run: ${{ github.event.pull_request.number }} + shell: flowey v 14 'flowey_lib_common::gh_merge_commit:1:flowey_lib_common/src/gh_merge_commit.rs:27:29' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.event.pull_request.number' - name: get merge commit - run: flowey e 15 flowey_lib_common::gh_merge_commit 1 + run: flowey e 14 flowey_lib_common::gh_merge_commit 2 shell: bash - name: get action id - run: flowey e 15 flowey_lib_common::gh_workflow_id 0 + run: flowey e 14 flowey_lib_common::gh_workflow_id 0 shell: bash - name: download artifacts from github actions run - run: flowey e 15 flowey_lib_common::download_gh_artifact 1 + run: flowey e 14 flowey_lib_common::download_gh_artifact 1 shell: bash - name: binary size comparison - run: flowey e 15 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 + run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - name: 'validate cache entry: gh-cli' - run: flowey e 15 flowey_lib_common::cache 3 + run: flowey e 14 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 15 flowey_lib_common::cache 7 + run: flowey e 14 flowey_lib_common::cache 7 shell: bash - job16: + job15: name: clippy [windows], unit tests [x64-windows] runs-on: - self-hosted @@ -2708,31 +2496,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 16 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 15 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 16 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 15 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey.exe e 16 flowey_lib_common::install_rust 0 + run: flowey.exe e 15 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 16 flowey_lib_common::install_rust 1 + run: flowey.exe e 15 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey.exe e 16 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 15 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 16 flowey_lib_common::git_checkout 0 + run: flowey.exe e 15 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2745,29 +2533,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 16 flowey_lib_common::git_checkout 3 + run: flowey.exe e 15 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 16 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 15 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 16 flowey_lib_common::cache 4 + run: flowey.exe e 15 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2777,86 +2565,86 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 16 flowey_lib_common::cache 6 + run: flowey.exe e 15 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 16 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 15 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 16 flowey_lib_common::download_protoc 0 + run: flowey.exe e 15 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 3 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey.exe e 16 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 16 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey.exe e 16 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey.exe e 16 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 16 flowey_lib_hvlite::download_lxutil 1 + run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: cargo clippy - run: flowey.exe e 16 flowey_lib_common::run_cargo_clippy 0 + run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 4 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey.exe e 16 flowey_lib_common::run_cargo_build 1 + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_build 1 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey.exe e 16 flowey_lib_hvlite::build_xtask 1 + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey.exe e 16 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey.exe e 16 flowey_lib_common::run_cargo_clippy 1 + run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 16 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 16 flowey_lib_common::cache 0 + run: flowey.exe e 15 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2866,65 +2654,65 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 16 flowey_lib_common::cache 2 + run: flowey.exe e 15 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 16 flowey_lib_common::install_rust 2 + run: flowey.exe e 15 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 16 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 5 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey.exe e 16 flowey_lib_common::run_cargo_build 2 + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_build 2 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: report built xtask - run: flowey.exe e 16 flowey_lib_hvlite::build_xtask 2 + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey.exe e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey.exe e 16 flowey_lib_hvlite::init_cross_build 2 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 16 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 16 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 15 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 15 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 16 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 15 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2936,18 +2724,18 @@ jobs: name: 'publish test results: x64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-pc-windows-msvc - run: flowey.exe e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 16 flowey_lib_common::cache 3 + run: flowey.exe e 15 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 16 flowey_lib_common::cache 7 + run: flowey.exe e 15 flowey_lib_common::cache 7 shell: bash - job17: + job16: name: clippy [linux, macos], unit tests [x64-linux] runs-on: - self-hosted @@ -3034,40 +2822,40 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 17 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 17 'param0' --update-from-stdin + cat <<'EOF' | flowey v 16 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 17 flowey_lib_common::install_rust 0 + run: flowey e 16 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 17 flowey_lib_common::install_rust 1 + run: flowey e 16 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 17 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: checking if packages need to be installed - run: flowey e 17 flowey_lib_common::install_dist_pkg 0 + run: flowey e 16 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 17 flowey_lib_common::install_dist_pkg 1 + run: flowey e 16 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 17 flowey_lib_common::download_gh_release 0 + run: flowey e 16 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 17 flowey_lib_common::cache 4 + run: flowey e 16 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3077,29 +2865,29 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 17 flowey_lib_common::cache 6 + run: flowey e 16 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 17 flowey_lib_common::download_gh_release 1 + run: flowey e 16 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 17 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 17 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 17 flowey_lib_common::git_checkout 0 + run: flowey e 16 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3112,119 +2900,119 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 17 flowey_lib_common::git_checkout 3 + run: flowey e 16 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 17 flowey_lib_common::download_protoc 0 + run: flowey e 16 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 6 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 6 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 3 + run: flowey e 16 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 1 + run: flowey e 16 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 2 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 2 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 2 + run: flowey e 16 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 0 + run: flowey e 16 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 0 + run: flowey e 16 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 2 + run: flowey e 16 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine clippy exclusions - run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: create cargo-nextest cache dir - run: flowey e 17 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 17 flowey_lib_common::cache 0 + run: flowey e 16 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3234,71 +3022,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 17 flowey_lib_common::cache 2 + run: flowey e 16 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 17 flowey_lib_common::install_rust 2 + run: flowey e 16 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 17 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 1 + run: flowey e 16 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 3 + run: flowey e 16 flowey_lib_hvlite::build_xtask 3 shell: bash - name: determine unit test exclusions - run: flowey e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 0 + run: flowey e 16 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 1 + run: flowey e 16 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 2 + run: flowey e 16 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3310,18 +3098,18 @@ jobs: name: 'publish test results: x64-linux-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-gnu - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 17 flowey_lib_common::cache 3 + run: flowey e 16 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 17 flowey_lib_common::cache 7 + run: flowey e 16 flowey_lib_common::cache 7 shell: bash - job18: + job17: name: clippy [linux-musl, misc nostd], unit tests [x64-linux-musl] runs-on: - self-hosted @@ -3408,31 +3196,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 18 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 17 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 18 'param0' --update-from-stdin + cat <<'EOF' | flowey v 17 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 18 flowey_lib_common::install_rust 0 + run: flowey e 17 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 18 flowey_lib_common::install_rust 1 + run: flowey e 17 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 18 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 17 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 18 flowey_lib_common::git_checkout 0 + run: flowey e 17 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3445,35 +3233,35 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 18 flowey_lib_common::git_checkout 3 + run: flowey e 17 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: checking if packages need to be installed - run: flowey e 18 flowey_lib_common::install_dist_pkg 0 + run: flowey e 17 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 18 flowey_lib_common::install_dist_pkg 1 + run: flowey e 17 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 18 flowey_lib_common::download_gh_release 0 + run: flowey e 17 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 18 flowey_lib_common::cache 4 + run: flowey e 17 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3483,119 +3271,119 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 18 flowey_lib_common::cache 6 + run: flowey e 17 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 18 flowey_lib_common::download_gh_release 1 + run: flowey e 17 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack openvmm-deps archive - run: flowey e 18 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 17 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 18 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 18 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 17 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 18 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 17 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 18 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 18 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 18 flowey_lib_common::download_protoc 0 + run: flowey e 17 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 18 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 18 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: inject cross env - run: flowey e 18 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build xtask - run: flowey e 18 flowey_lib_common::run_cargo_build 1 + run: flowey e 17 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 18 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 18 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 18 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 18 flowey_lib_hvlite::build_xtask 0 + run: flowey e 17 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 18 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 18 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: cargo clippy - run: flowey e 18 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: cargo clippy - run: flowey e 18 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: extract Aarch64 sysroot.tar.gz - run: flowey e 18 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 18 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo clippy - run: flowey e 18 flowey_lib_common::run_cargo_clippy 4 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 4 shell: bash - name: inject cross env - run: flowey e 18 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 18 flowey_lib_common::run_cargo_build 2 + run: flowey e 17 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 18 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 18 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 18 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 18 flowey_lib_hvlite::build_xtask 1 + run: flowey e 17 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 18 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 18 flowey_lib_common::run_cargo_clippy 3 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 3 shell: bash - name: cargo clippy - run: flowey e 18 flowey_lib_common::run_cargo_clippy 5 + run: flowey e 17 flowey_lib_common::run_cargo_clippy 5 shell: bash - name: create cargo-nextest cache dir - run: flowey e 18 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 17 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 18 flowey_lib_common::cache 0 + run: flowey e 17 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3605,71 +3393,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 18 flowey_lib_common::cache 2 + run: flowey e 17 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 18 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 18 flowey_lib_common::install_rust 2 + run: flowey e 17 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 18 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 17 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 18 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey e 18 flowey_lib_common::run_cargo_build 0 + run: flowey e 17 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 18 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 18 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 18 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 18 flowey_lib_hvlite::build_xtask 2 + run: flowey e 17 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey e 18 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 18 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 17 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: 🌼 write_into Var - run: flowey e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 18 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 18 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 18 flowey_lib_common::publish_test_results 0 + run: flowey e 17 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 18 flowey_lib_common::publish_test_results 1 + run: flowey e 17 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 18 flowey_lib_common::publish_test_results 2 + run: flowey e 17 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3681,18 +3469,18 @@ jobs: name: 'publish test results: x64-linux-musl-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-musl - run: flowey e 18 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 18 flowey_lib_common::cache 3 + run: flowey e 17 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 18 flowey_lib_common::cache 7 + run: flowey e 17 flowey_lib_common::cache 7 shell: bash - job19: + job18: name: unit tests [aarch64-windows] runs-on: - self-hosted @@ -3780,28 +3568,28 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: report common cargo flags - run: flowey.exe e 19 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 18 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 0 + run: flowey.exe e 18 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3811,35 +3599,35 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 2 + run: flowey.exe e 18 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 19 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 18 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: install Rust - run: flowey.exe e 19 flowey_lib_common::install_rust 0 + run: flowey.exe e 18 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 19 flowey_lib_common::install_rust 1 + run: flowey.exe e 18 flowey_lib_common::install_rust 1 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 19 flowey_lib_common::install_rust 2 + run: flowey.exe e 18 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 19 flowey_lib_common::git_checkout 0 + run: flowey.exe e 18 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3852,29 +3640,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 19 flowey_lib_common::git_checkout 3 + run: flowey.exe e 18 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 4 + run: flowey.exe e 18 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3884,74 +3672,74 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 6 + run: flowey.exe e 18 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 19 flowey_lib_common::download_protoc 0 + run: flowey.exe e 18 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 19 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey.exe e 19 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 18 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 19 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 18 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine unit test exclusions - run: flowey.exe e 19 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 18 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 19 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 18 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: inject cross env - run: flowey.exe e 19 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3963,251 +3751,33 @@ jobs: name: 'publish test results: aarch64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for aarch64-pc-windows-msvc - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 19 flowey_lib_common::cache 3 + run: flowey.exe e 18 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 19 flowey_lib_common::cache 7 + run: flowey.exe e 18 flowey_lib_common::cache 7 shell: bash - job2: - name: build and check docs [x64-linux] + job19: + name: run vmm-tests [x64-windows-intel] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB + - 1ES.Pool=OpenVMM-GitHub-Win-Pool-Intel-WestUS3 + - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB permissions: contents: read id-token: write - if: github.event.pull_request.draft == false - steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey - shell: bash - - 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.82.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.82.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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) - shell: bash - - uses: actions/checkout@v4 - with: - fetch-depth: 1 - path: flowey_bootstrap - - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci - working-directory: flowey_bootstrap - shell: bash - - name: Stage flowey artifact - run: | - mkdir ./flowey_bootstrap_temp - mv ./.github/workflows/openvmm-ci.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey - working-directory: flowey_bootstrap - shell: bash - - name: Copy flowey artifact - run: | - OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') - mkdir -p $OutDirNormal - cp -r ./flowey_bootstrap_temp/* $OutDirNormal - working-directory: flowey_bootstrap - shell: bash - - name: Cleanup staged flowey artifact - run: rm -rf ./flowey_bootstrap_temp - 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-ci.yaml ci checkin-gates --config=ci - 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 2 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 2 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string - shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 2 flowey_lib_common::git_checkout 0 - shell: bash - - run: | - flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar3 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 2 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: create gh-release-download cache dir - run: flowey e 2 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 2 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - - run: | - flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar1 }} - path: ${{ env.floweyvar2 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 2 flowey_lib_common::cache 2 - shell: bash - - name: download artifacts from github releases - run: flowey e 2 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 2 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 2 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 2 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: symlink protoc - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: install Rust - run: flowey e 2 flowey_lib_common::install_rust 0 - shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 - shell: bash - - name: move lxutil.dll into its magic folder - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 - shell: bash - - name: detect active toolchain - run: flowey e 2 flowey_lib_common::install_rust 1 - shell: bash - - name: report common cargo flags - run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: construct cargo doc command - run: flowey e 2 flowey_lib_common::run_cargo_doc 0 - shell: bash - - name: document repo for target x86_64-unknown-linux-gnu - run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 - shell: bash - - name: archive rustdoc dir - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 - shell: bash - - name: copying rustdoc to artifact dir - run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 2 flowey_lib_common::cache 3 - shell: bash - - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc - uses: actions/upload-artifact@v4 - with: - name: x64-linux-rustdoc - path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ - - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job2.json - shell: bash - - name: 🌼πŸ₯Ύ Publish bootstrapped flowey - uses: actions/upload-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-16 - path: ${{ runner.temp }}/bootstrapped-flowey - job20: - name: run vmm-tests [x64-windows-intel] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Win-Pool-Intel-WestUS3 - - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB - permissions: - contents: read - id-token: write - needs: - - job14 - - job14 - - job11 - - job9 - - job9 - - job9 + needs: + - job13 + - job13 + - job11 + - job9 + - job9 + - job9 if: github.event.pull_request.draft == false steps: - name: 🌼πŸ₯Ύ Download bootstrapped flowey @@ -4256,31 +3826,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 20 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 20 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 20 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 20 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 20 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 4 + run: flowey.exe e 19 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4290,26 +3860,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 6 + run: flowey.exe e 19 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 20 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 8 + run: flowey.exe e 19 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4319,26 +3889,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 10 + run: flowey.exe e 19 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 20 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 20 flowey_lib_common::git_checkout 0 + run: flowey.exe e 19 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4351,207 +3921,425 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 20 flowey_lib_common::git_checkout 3 + run: flowey.exe e 19 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 20 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 0 + run: flowey.exe e 19 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar7' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar6 }} + path: ${{ env.floweyvar7 }} + name: 'Restore cache: azcopy' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 19 flowey_lib_common::cache 2 + shell: bash + - name: installing azcopy + run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 + shell: bash + - name: calculating required VMM tests disk images + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + shell: bash + - name: downloading VMM test disk images + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + shell: bash + - name: report downloaded VMM test disk images + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + shell: bash + - name: unpack openvmm-deps archive + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 + shell: bash + - name: setting up vmm_tests env + run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 + shell: bash + - name: resolve vmm tests archive artifact + run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + shell: bash + - name: run 'vmm_tests' nextest tests + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 + shell: bash + - name: write results + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__6 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-intel-vmm-tests-crash-dumps + path: ${{ env.floweyvar2 }} + name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__9 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-intel-vmm-tests-logs + path: ${{ env.floweyvar3 }} + name: 'publish test results: logs (x64-windows-intel-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__12 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-intel-vmm-tests-openhcl-dumps + path: ${{ env.floweyvar4 }} + name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__3 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-intel-vmm-tests-junit-xml + path: ${{ env.floweyvar1 }} + name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: report test results to overall pipeline status + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey.exe e 19 flowey_lib_common::cache 11 + shell: bash + - name: 'validate cache entry: azcopy' + run: flowey.exe e 19 flowey_lib_common::cache 3 + shell: bash + - name: 'validate cache entry: cargo-nextest' + run: flowey.exe e 19 flowey_lib_common::cache 7 + shell: bash + job2: + name: build and check docs [x64-linux] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB + permissions: + contents: read + id-token: write + if: github.event.pull_request.draft == false + steps: + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci + working-directory: flowey_bootstrap + shell: bash + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-ci.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey + working-directory: flowey_bootstrap + shell: bash + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap + shell: bash + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + 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-ci.yaml ci checkin-gates --config=ci + 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 2 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 2 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 2 flowey_lib_common::git_checkout 0 + shell: bash + - run: | + flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '0' + path: repo0 + persist-credentials: ${{ env.floweyvar3 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 2 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 2 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 2 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + - run: | + flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar7' + name: 🌼 Write to 'floweyvar2' - id: flowey_lib_common__cache__1 uses: actions/cache@v4 with: - key: ${{ env.floweyvar6 }} - path: ${{ env.floweyvar7 }} - name: 'Restore cache: azcopy' + key: ${{ env.floweyvar1 }} + path: ${{ env.floweyvar2 }} + name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 2 - shell: bash - - name: installing azcopy - run: flowey.exe e 20 flowey_lib_common::download_azcopy 1 - shell: bash - - name: calculating required VMM tests disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 - shell: bash - - name: downloading VMM test disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 - shell: bash - - name: report downloaded VMM test disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 - shell: bash - - name: unpack openvmm-deps archive - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_deps 0 - shell: bash - - name: setting up vmm_tests env - run: flowey.exe e 20 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey e 2 flowey_lib_common::cache 2 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 + - name: download artifacts from github releases + run: flowey e 2 flowey_lib_common::download_gh_release 1 shell: bash - - name: resolve vmm tests archive artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + - name: checking if packages need to be installed + run: flowey e 2 flowey_lib_common::install_dist_pkg 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + - name: installing packages + run: flowey e 2 flowey_lib_common::install_dist_pkg 1 shell: bash - - name: run 'vmm_tests' nextest tests - run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 0 + - name: unpack protoc + run: flowey e 2 flowey_lib_common::download_protoc 0 shell: bash - - name: write results - run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 1 + - name: report openvmm magicpath dir + run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 4 + - name: symlink protoc + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 5 + - name: install Rust + run: flowey e 2 flowey_lib_common::install_rust 0 shell: bash - - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + - name: move lxutil.dll into its magic folder + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: 🌼 Write to 'floweyvar2' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__6 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-intel-vmm-tests-crash-dumps - path: ${{ env.floweyvar2 }} - name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 7 + - name: detect active toolchain + run: flowey e 2 flowey_lib_common::install_rust 1 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 8 + - name: report common cargo flags + run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: construct cargo doc command + run: flowey e 2 flowey_lib_common::run_cargo_doc 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + - name: document repo for target x86_64-unknown-linux-gnu + run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 shell: bash - name: 🌼 Write to 'floweyvar3' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__9 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-intel-vmm-tests-logs - path: ${{ env.floweyvar3 }} - name: 'publish test results: logs (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 10 + - name: archive rustdoc dir + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 11 + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 shell: bash - - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: copying rustdoc to artifact dir + run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + - name: 'validate cache entry: gh-release-download' + run: flowey e 2 flowey_lib_common::cache 3 shell: bash - name: 🌼 Write to 'floweyvar4' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__12 + - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc uses: actions/upload-artifact@v4 with: - name: x64-windows-intel-vmm-tests-openhcl-dumps - path: ${{ env.floweyvar4 }} - name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 1 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 2 - shell: bash - - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + name: x64-linux-rustdoc + path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ + - name: 🌼🧼 Redact bootstrap var db + run: rm $AgentTempDirNormal/bootstrapped-flowey/job2.json shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__3 + - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: - name: x64-windows-intel-vmm-tests-junit-xml - path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: report test results to overall pipeline status - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 20 flowey_lib_common::cache 11 - shell: bash - - name: 'validate cache entry: azcopy' - run: flowey.exe e 20 flowey_lib_common::cache 3 - shell: bash - - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 20 flowey_lib_common::cache 7 - shell: bash - job21: + name: _internal-flowey-bootstrap-x86_64-linux-uid-16 + path: ${{ runner.temp }}/bootstrapped-flowey + job20: name: run vmm-tests [x64-windows-amd] runs-on: - self-hosted @@ -4561,8 +4349,8 @@ jobs: contents: read id-token: write needs: - - job14 - - job14 + - job13 + - job13 - job11 - job9 - job9 @@ -4615,31 +4403,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 21 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 20 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 21 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 20 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 21 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 21 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 21 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 21 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 21 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 21 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 20 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 20 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 20 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 4 + run: flowey.exe e 20 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4649,26 +4437,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 6 + run: flowey.exe e 20 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 21 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 20 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 8 + run: flowey.exe e 20 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4678,26 +4466,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 10 + run: flowey.exe e 20 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 21 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 20 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 21 flowey_lib_common::git_checkout 0 + run: flowey.exe e 20 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4710,53 +4498,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 21 flowey_lib_common::git_checkout 3 + run: flowey.exe e 20 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 21 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 20 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 0 + run: flowey.exe e 20 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4766,56 +4554,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 2 + run: flowey.exe e 20 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 21 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 20 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 21 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 20 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4827,17 +4615,17 @@ jobs: name: 'publish test results: crash-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4849,17 +4637,17 @@ jobs: name: 'publish test results: logs (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4871,23 +4659,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4899,18 +4687,18 @@ jobs: name: 'publish test results: x64-windows-amd-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 21 flowey_lib_common::cache 11 + run: flowey.exe e 20 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 21 flowey_lib_common::cache 3 + run: flowey.exe e 20 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 21 flowey_lib_common::cache 7 + run: flowey.exe e 20 flowey_lib_common::cache 7 shell: bash - job22: + job21: name: run vmm-tests [x64-linux] runs-on: - self-hosted @@ -4920,7 +4708,7 @@ jobs: contents: read id-token: write needs: - - job14 + - job13 - job11 - job11 - job9 @@ -4968,33 +4756,33 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 22 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 21 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 22 'param0' --update-from-stdin + cat <<'EOF' | flowey v 21 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 22 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 22 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 22 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 22 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 22 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 21 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 21 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 21 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 21 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 21 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string shell: bash - name: ensure /dev/kvm is accessible - run: flowey e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: create cargo-nextest cache dir - run: flowey e 22 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 21 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 22 flowey_lib_common::cache 4 + run: flowey e 21 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 22 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey v 22 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -5004,32 +4792,32 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 22 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 22 flowey_lib_common::cache 6 + run: flowey e 21 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey e 22 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 21 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: checking if packages need to be installed - run: flowey e 22 flowey_lib_common::install_dist_pkg 0 + run: flowey e 21 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 22 flowey_lib_common::install_dist_pkg 1 + run: flowey e 21 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 22 flowey_lib_common::download_gh_release 0 + run: flowey e 21 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 22 flowey_lib_common::cache 8 + run: flowey e 21 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 22 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey v 22 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -5039,26 +4827,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 22 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 22 flowey_lib_common::cache 10 + run: flowey e 21 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey e 22 flowey_lib_common::download_gh_release 1 + run: flowey e 21 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 22 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 22 flowey_lib_common::git_checkout 0 + run: flowey e 21 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5071,50 +4859,50 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 22 flowey_lib_common::git_checkout 3 + run: flowey e 21 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 22 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey e 22 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey e 22 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey e 22 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey e 22 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey e 22 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey e 22 flowey_lib_common::download_azcopy 0 + run: flowey e 21 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey e 22 flowey_lib_common::cache 0 + run: flowey e 21 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 22 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey v 22 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -5124,56 +4912,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 22 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 22 flowey_lib_common::cache 2 + run: flowey e 21 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey e 22 flowey_lib_common::download_azcopy 1 + run: flowey e 21 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey e 22 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 21 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey e 22 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey e 21 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey e 22 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 + run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey e 22 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 22 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 4 + run: flowey e 21 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 5 + run: flowey e 21 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey v 22 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 22 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5185,17 +4973,17 @@ jobs: name: 'publish test results: crash-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 7 + run: flowey e 21 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 8 + run: flowey e 21 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey v 22 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 22 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5207,17 +4995,17 @@ jobs: name: 'publish test results: logs (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 10 + run: flowey e 21 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 11 + run: flowey e 21 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey v 22 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 22 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5229,23 +5017,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 0 + run: flowey e 21 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 1 + run: flowey e 21 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 22 flowey_lib_common::publish_test_results 2 + run: flowey e 21 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 22 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 22 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5257,18 +5045,18 @@ jobs: name: 'publish test results: x64-linux-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 22 flowey_lib_common::cache 11 + run: flowey e 21 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey e 22 flowey_lib_common::cache 3 + run: flowey e 21 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 22 flowey_lib_common::cache 7 + run: flowey e 21 flowey_lib_common::cache 7 shell: bash - job23: + job22: name: run vmm-tests [aarch64-windows] runs-on: - self-hosted @@ -5333,31 +5121,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 23 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 22 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 23 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 22 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 23 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 23 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 23 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 23 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 23 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 23 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 22 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 22 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 22 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 22 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 23 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 23 flowey_lib_common::cache 4 + run: flowey.exe e 22 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 23 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 23 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -5367,26 +5155,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 23 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 23 flowey_lib_common::cache 6 + run: flowey.exe e 22 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 23 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 23 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 22 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 23 flowey_lib_common::cache 8 + run: flowey.exe e 22 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 23 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 23 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -5396,26 +5184,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 23 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 23 flowey_lib_common::cache 10 + run: flowey.exe e 22 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 23 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 22 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (aarch64) - run: flowey.exe e 23 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 23 flowey_lib_common::git_checkout 0 + run: flowey.exe e 22 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 23 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 23 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5428,53 +5216,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 23 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 23 flowey_lib_common::git_checkout 3 + run: flowey.exe e 22 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 23 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 23 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 22 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 23 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 22 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 23 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 23 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 23 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 23 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 23 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 23 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 23 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 22 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 23 flowey_lib_common::cache 0 + run: flowey.exe e 22 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 23 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 23 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -5484,56 +5272,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 23 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 23 flowey_lib_common::cache 2 + run: flowey.exe e 22 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 23 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 22 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 23 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 23 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 23 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 23 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 23 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 22 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 23 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 23 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 23 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 23 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 23 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5545,17 +5333,17 @@ jobs: name: 'publish test results: crash-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 23 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 23 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5567,17 +5355,17 @@ jobs: name: 'publish test results: logs (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 23 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 23 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5589,23 +5377,23 @@ jobs: name: 'publish test results: openhcl-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 23 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 23 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 23 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5617,18 +5405,18 @@ jobs: name: 'publish test results: aarch64-windows-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 23 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 23 flowey_lib_common::cache 11 + run: flowey.exe e 22 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 23 flowey_lib_common::cache 3 + run: flowey.exe e 22 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 23 flowey_lib_common::cache 7 + run: flowey.exe e 22 flowey_lib_common::cache 7 shell: bash - job24: + job23: name: test flowey local backend runs-on: - self-hosted @@ -5715,22 +5503,22 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 24 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 24 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 23 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 24 'param0' --update-from-stdin + cat <<'EOF' | flowey v 23 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: check if hvlite needs to be cloned - run: flowey e 24 flowey_lib_common::git_checkout 0 + run: flowey e 23 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 24 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 23 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 24 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 23 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5743,22 +5531,22 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 24 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 23 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 24 flowey_lib_common::git_checkout 3 + run: flowey e 23 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 24 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 23 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: install Rust - run: flowey e 24 flowey_lib_common::install_rust 0 + run: flowey e 23 flowey_lib_common::install_rust 0 shell: bash - run: ${{ github.token }} - shell: flowey v 24 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 23 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: test cargo xflowey build-igvm x64 --install-missing-deps - run: flowey e 24 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 + run: flowey e 23 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 shell: bash job3: name: publish openvmm.dev diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 9a5a21ba6..a068e24b7 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -1257,222 +1257,7 @@ jobs: with: name: aarch64-openhcl-igvm-extras path: ${{ runner.temp }}/publish_artifacts/aarch64-openhcl-igvm-extras/ - - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job11.json - shell: bash - - name: 🌼πŸ₯Ύ Publish bootstrapped flowey - uses: actions/upload-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-7 - path: ${{ runner.temp }}/bootstrapped-flowey job12: - name: verify openhcl binary size [aarch64] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB - permissions: - contents: read - id-token: write - needs: - - job11 - if: github.event.pull_request.draft == false - steps: - - name: 🌼πŸ₯Ύ Download bootstrapped flowey - uses: actions/download-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-7 - path: ${{ runner.temp }}/bootstrapped-flowey - - name: πŸŒΌπŸ“¦ Download aarch64-openhcl-igvm-extras - uses: actions/download-artifact@v4 - with: - name: aarch64-openhcl-igvm-extras - path: ${{ runner.temp }}/used_artifacts/aarch64-openhcl-igvm-extras/ - - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $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/bootstrapped-flowey/flowey - - echo '"debug"' | flowey v 12 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 12 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 12 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - echo "$AgentTempDirNormal/used_artifacts/aarch64-openhcl-igvm-extras" | flowey v 12 'artifact_use_from_aarch64-openhcl-igvm-extras' --update-from-stdin --is-raw-string - shell: bash - - name: install Rust - run: flowey e 12 flowey_lib_common::install_rust 0 - shell: bash - - name: detect active toolchain - run: flowey e 12 flowey_lib_common::install_rust 1 - shell: bash - - name: report common cargo flags - run: flowey e 12 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 12 flowey_lib_common::git_checkout 0 - shell: bash - - run: | - flowey v 12 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 12 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar1 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 12 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 12 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 12 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 12 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: create gh-release-download cache dir - run: flowey e 12 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 12 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey v 12 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 12 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 12 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 12 flowey_lib_common::cache 6 - shell: bash - - name: download artifacts from github releases - run: flowey e 12 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 12 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 12 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 12 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 12 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: symlink protoc - run: flowey e 12 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: unpack openvmm-deps archive - run: flowey e 12 flowey_lib_hvlite::download_openvmm_deps 0 - shell: bash - - name: extract Aarch64 sysroot.tar.gz - run: flowey e 12 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 - shell: bash - - name: inject cross env - run: flowey e 12 flowey_lib_hvlite::init_cross_build 0 - shell: bash - - name: cargo build xtask - run: flowey e 12 flowey_lib_common::run_cargo_build 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 0 - shell: bash - - name: split debug symbols - run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 0 - shell: bash - - name: reporting split debug info - run: flowey e 12 flowey_lib_hvlite::run_cargo_build 1 - shell: bash - - name: report built xtask - run: flowey e 12 flowey_lib_hvlite::build_xtask 0 - shell: bash - - run: ${{ github.token }} - shell: flowey v 12 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.token' - - name: create gh cache dir - run: flowey e 12 flowey_lib_common::download_gh_cli 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 12 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey v 12 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - run: | - flowey v 12 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} - name: 'Restore cache: gh-cli' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 12 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 12 flowey_lib_common::cache 2 - shell: bash - - name: installing gh - run: flowey e 12 flowey_lib_common::download_gh_cli 1 - shell: bash - - name: setup gh cli - run: flowey e 12 flowey_lib_common::use_gh_cli 0 - shell: bash - - run: ${{ github.event.pull_request.head.ref }} - shell: flowey v 12 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.event.pull_request.head.ref' - - name: get merge commit - run: flowey e 12 flowey_lib_common::gh_merge_commit 1 - shell: bash - - name: get action id - run: flowey e 12 flowey_lib_common::gh_workflow_id 0 - shell: bash - - name: download artifacts from github actions run - run: flowey e 12 flowey_lib_common::download_gh_artifact 1 - shell: bash - - name: binary size comparison - run: flowey e 12 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 - shell: bash - - name: 'validate cache entry: gh-cli' - run: flowey e 12 flowey_lib_common::cache 3 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 12 flowey_lib_common::cache 7 - shell: bash - job13: name: build openhcl [x64-linux] runs-on: - self-hosted @@ -1559,37 +1344,37 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 12 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 12 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 13 'param0' --update-from-stdin + cat <<'EOF' | flowey v 12 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 13 'artifact_publish_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-musl-pipette" | flowey v 12 'artifact_publish_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" - echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" - echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras" | flowey v 12 'artifact_publish_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string shell: bash - name: checking if packages need to be installed - run: flowey e 13 flowey_lib_common::install_dist_pkg 0 + run: flowey e 12 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 13 flowey_lib_common::install_dist_pkg 1 + run: flowey e 12 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 13 flowey_lib_common::download_gh_release 0 + run: flowey e 12 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 0 + run: flowey e 12 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 12 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' - run: | - flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 12 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - id: flowey_lib_common__cache__1 @@ -1599,35 +1384,35 @@ jobs: path: ${{ env.floweyvar2 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 12 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 2 + run: flowey e 12 flowey_lib_common::cache 2 shell: bash - name: download artifacts from github releases - run: flowey e 13 flowey_lib_common::download_gh_release 1 + run: flowey e 12 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 13 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 12 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: install Rust - run: flowey e 13 flowey_lib_common::install_rust 0 + run: flowey e 12 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 13 flowey_lib_common::install_rust 1 + run: flowey e 12 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 12 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 13 flowey_lib_common::git_checkout 0 + run: flowey e 12 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 12 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 12 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -1640,403 +1425,403 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 12 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 13 flowey_lib_common::git_checkout 3 + run: flowey e 12 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 12 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 12 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 13 flowey_lib_common::download_protoc 0 + run: flowey e 12 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 12 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 12 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 12 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: cargo build openhcl_boot - run: flowey e 13 flowey_lib_common::run_cargo_build 1 + run: flowey e 12 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 5 + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 5 shell: bash - name: reporting split debug info - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built openhcl_boot - run: flowey e 13 flowey_lib_hvlite::build_openhcl_boot 0 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_boot 0 shell: bash - name: unpack kernel package - run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 2 + run: flowey e 12 flowey_lib_hvlite::download_openhcl_kernel_package 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 shell: bash - name: unpack openvmm-deps archive - run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 12 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 12 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 12 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build openvmm_hcl - run: flowey e 13 flowey_lib_common::run_cargo_build 2 + run: flowey e 12 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: report built openvmm_hcl - run: flowey e 13 flowey_lib_hvlite::build_openvmm_hcl 0 + run: flowey e 12 flowey_lib_hvlite::build_openvmm_hcl 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 4 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 4 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 shell: bash - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 12 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo build igvmfilegen - run: flowey e 13 flowey_lib_common::run_cargo_build 0 + run: flowey e 12 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 7 + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 7 shell: bash - name: reporting split debug info - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built igvmfilegen - run: flowey e 13 flowey_lib_hvlite::build_igvmfilegen 0 + run: flowey e 12 flowey_lib_hvlite::build_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 4 + run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 4 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 shell: bash - name: unpack kernel package - run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 0 + run: flowey e 12 flowey_lib_hvlite::download_openhcl_kernel_package 0 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 0 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 0 + run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 1 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 1 + run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 4 + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 4 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 2 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 2 + run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 shell: bash - name: unpack kernel package - run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 1 + run: flowey e 12 flowey_lib_hvlite::download_openhcl_kernel_package 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 shell: bash - name: building openhcl initrd - run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 3 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_initrd 3 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 shell: bash - name: enumerate igvm resources - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 shell: bash - name: building igvm file - run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 3 + run: flowey e 12 flowey_lib_hvlite::run_igvmfilegen 3 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 shell: bash - name: describe OpenHCL igvm artifact - run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 + run: flowey e 12 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 shell: bash - name: copying OpenHCL igvm files to artifact dir - run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 1 + run: flowey e 12 flowey_lib_common::copy_to_artifact_dir 1 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 + run: flowey e 12 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 shell: bash - name: 🌼 Zip Vars - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 + run: flowey e 12 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 shell: bash - name: describe OpenHCL igvm extras artifact - run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 + run: flowey e 12 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 shell: bash - name: copying OpenHCL igvm extras to artifact dir - run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 0 + run: flowey e 12 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 12 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build pipette - run: flowey e 13 flowey_lib_common::run_cargo_build 3 + run: flowey e 12 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 6 + run: flowey e 12 flowey_lib_hvlite::run_split_debug_info 6 shell: bash - name: reporting split debug info - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 8 + run: flowey e 12 flowey_lib_hvlite::run_cargo_build 8 shell: bash - name: report built pipette - run: flowey e 13 flowey_lib_hvlite::build_pipette 0 + run: flowey e 12 flowey_lib_hvlite::build_pipette 0 shell: bash - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::artifact_pipette::publish 0 + run: flowey e 12 flowey_lib_hvlite::artifact_pipette::publish 0 shell: bash - name: copying pipette to artifact dir - run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 2 + run: flowey e 12 flowey_lib_common::copy_to_artifact_dir 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 13 flowey_lib_common::cache 3 + run: flowey e 12 flowey_lib_common::cache 3 shell: bash - name: πŸŒΌπŸ“¦ Publish x64-linux-musl-pipette uses: actions/upload-artifact@v4 @@ -2054,14 +1839,14 @@ jobs: name: x64-openhcl-igvm-extras path: ${{ runner.temp }}/publish_artifacts/x64-openhcl-igvm-extras/ - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job13.json + run: rm $AgentTempDirNormal/bootstrapped-flowey/job12.json shell: bash - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: name: _internal-flowey-bootstrap-x86_64-linux-uid-6 path: ${{ runner.temp }}/bootstrapped-flowey - job14: + job13: name: verify openhcl binary size [x64] runs-on: - self-hosted @@ -2071,7 +1856,7 @@ jobs: contents: read id-token: write needs: - - job13 + - job12 if: github.event.pull_request.draft == false steps: - name: 🌼πŸ₯Ύ Download bootstrapped flowey @@ -2095,32 +1880,32 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 14 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 14 'param0' --update-from-stdin + cat <<'EOF' | flowey v 13 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras" | flowey v 14 'artifact_use_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras" | flowey v 13 'artifact_use_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string shell: bash - name: install Rust - run: flowey e 14 flowey_lib_common::install_rust 0 + run: flowey e 13 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 14 flowey_lib_common::install_rust 1 + run: flowey e 13 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 14 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 14 flowey_lib_common::git_checkout 0 + run: flowey e 13 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2133,29 +1918,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 14 flowey_lib_common::git_checkout 3 + run: flowey e 13 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey e 14 flowey_lib_common::download_gh_release 0 + run: flowey e 13 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 4 + run: flowey e 13 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 13 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 13 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2165,68 +1950,68 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 6 + run: flowey e 13 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 14 flowey_lib_common::download_gh_release 1 + run: flowey e 13 flowey_lib_common::download_gh_release 1 shell: bash - name: checking if packages need to be installed - run: flowey e 14 flowey_lib_common::install_dist_pkg 0 + run: flowey e 13 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 14 flowey_lib_common::install_dist_pkg 1 + run: flowey e 13 flowey_lib_common::install_dist_pkg 1 shell: bash - name: unpack protoc - run: flowey e 14 flowey_lib_common::download_protoc 0 + run: flowey e 13 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: unpack openvmm-deps archive - run: flowey e 14 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo build xtask - run: flowey e 14 flowey_lib_common::run_cargo_build 0 + run: flowey e 13 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 14 flowey_lib_hvlite::build_xtask 0 + run: flowey e 13 flowey_lib_hvlite::build_xtask 0 shell: bash - run: ${{ github.token }} - shell: flowey v 14 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: create gh cache dir - run: flowey e 14 flowey_lib_common::download_gh_cli 0 + run: flowey e 13 flowey_lib_common::download_gh_cli 0 shell: bash - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 0 + run: flowey e 13 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2236,39 +2021,42 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: gh-cli' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 2 + run: flowey e 13 flowey_lib_common::cache 2 shell: bash - name: installing gh - run: flowey e 14 flowey_lib_common::download_gh_cli 1 + run: flowey e 13 flowey_lib_common::download_gh_cli 1 shell: bash - name: setup gh cli - run: flowey e 14 flowey_lib_common::use_gh_cli 0 + run: flowey e 13 flowey_lib_common::use_gh_cli 0 shell: bash - run: ${{ github.event.pull_request.head.ref }} - shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.event.pull_request.head.ref' + - run: ${{ github.event.pull_request.number }} + shell: flowey v 13 'flowey_lib_common::gh_merge_commit:1:flowey_lib_common/src/gh_merge_commit.rs:27:29' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.event.pull_request.number' - name: get merge commit - run: flowey e 14 flowey_lib_common::gh_merge_commit 1 + run: flowey e 13 flowey_lib_common::gh_merge_commit 2 shell: bash - name: get action id - run: flowey e 14 flowey_lib_common::gh_workflow_id 0 + run: flowey e 13 flowey_lib_common::gh_workflow_id 0 shell: bash - name: download artifacts from github actions run - run: flowey e 14 flowey_lib_common::download_gh_artifact 1 + run: flowey e 13 flowey_lib_common::download_gh_artifact 1 shell: bash - name: binary size comparison - run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 + run: flowey e 13 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - name: 'validate cache entry: gh-cli' - run: flowey e 14 flowey_lib_common::cache 3 + run: flowey e 13 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 14 flowey_lib_common::cache 7 + run: flowey e 13 flowey_lib_common::cache 7 shell: bash - job15: + job14: name: clippy [windows], unit tests [x64-windows] runs-on: - self-hosted @@ -2354,31 +2142,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 15 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 14 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 15 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 14 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey.exe e 15 flowey_lib_common::install_rust 0 + run: flowey.exe e 14 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 15 flowey_lib_common::install_rust 1 + run: flowey.exe e 14 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey.exe e 15 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 14 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 15 flowey_lib_common::git_checkout 0 + run: flowey.exe e 14 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2391,29 +2179,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 15 flowey_lib_common::git_checkout 3 + run: flowey.exe e 14 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 15 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 14 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 15 flowey_lib_common::cache 4 + run: flowey.exe e 14 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2423,86 +2211,86 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 15 flowey_lib_common::cache 6 + run: flowey.exe e 14 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 15 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 14 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 15 flowey_lib_common::download_protoc 0 + run: flowey.exe e 14 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 3 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey.exe e 15 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 14 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 14 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 1 + run: flowey.exe e 14 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: cargo clippy - run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 0 + run: flowey.exe e 14 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 4 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey.exe e 15 flowey_lib_common::run_cargo_build 1 + run: flowey.exe e 14 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 1 + run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 1 + run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 1 + run: flowey.exe e 14 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 14 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 15 flowey_lib_common::cache 0 + run: flowey.exe e 14 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2512,65 +2300,65 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 15 flowey_lib_common::cache 2 + run: flowey.exe e 14 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 14 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 15 flowey_lib_common::install_rust 2 + run: flowey.exe e 14 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 14 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 5 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey.exe e 15 flowey_lib_common::run_cargo_build 2 + run: flowey.exe e 14 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 2 + run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: report built xtask - run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 2 + run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey.exe e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 14 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 2 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 14 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 14 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 14 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 14 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 14 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 14 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 14 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2582,18 +2370,18 @@ jobs: name: 'publish test results: x64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-pc-windows-msvc - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 15 flowey_lib_common::cache 3 + run: flowey.exe e 14 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 15 flowey_lib_common::cache 7 + run: flowey.exe e 14 flowey_lib_common::cache 7 shell: bash - job16: + job15: name: clippy [linux, macos], unit tests [x64-linux] runs-on: - self-hosted @@ -2680,40 +2468,40 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 15 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 16 'param0' --update-from-stdin + cat <<'EOF' | flowey v 15 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 16 flowey_lib_common::install_rust 0 + run: flowey e 15 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 16 flowey_lib_common::install_rust 1 + run: flowey e 15 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 15 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 + run: flowey e 15 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 16 flowey_lib_common::install_dist_pkg 1 + run: flowey e 15 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 16 flowey_lib_common::download_gh_release 0 + run: flowey e 15 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 16 flowey_lib_common::cache 4 + run: flowey e 15 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2723,29 +2511,29 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 16 flowey_lib_common::cache 6 + run: flowey e 15 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 16 flowey_lib_common::download_gh_release 1 + run: flowey e 15 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 15 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 15 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 16 flowey_lib_common::git_checkout 0 + run: flowey e 15 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2758,119 +2546,119 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 16 flowey_lib_common::git_checkout 3 + run: flowey e 15 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 16 flowey_lib_common::download_protoc 0 + run: flowey e 15 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 6 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 6 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 3 + run: flowey e 15 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 1 + run: flowey e 15 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 2 + run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 2 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 15 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 2 + run: flowey e 15 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 0 + run: flowey e 15 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 15 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 0 + run: flowey e 15 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 2 + run: flowey e 15 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 15 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: create cargo-nextest cache dir - run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 15 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 16 flowey_lib_common::cache 0 + run: flowey e 15 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2880,71 +2668,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 16 flowey_lib_common::cache 2 + run: flowey e 15 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 16 flowey_lib_common::install_rust 2 + run: flowey e 15 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 15 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 1 + run: flowey e 15 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 3 + run: flowey e 15 flowey_lib_hvlite::build_xtask 3 shell: bash - name: determine unit test exclusions - run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 0 + run: flowey e 15 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 1 + run: flowey e 15 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 2 + run: flowey e 15 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2956,18 +2744,18 @@ jobs: name: 'publish test results: x64-linux-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-gnu - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 16 flowey_lib_common::cache 3 + run: flowey e 15 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 16 flowey_lib_common::cache 7 + run: flowey e 15 flowey_lib_common::cache 7 shell: bash - job17: + job16: name: clippy [linux-musl, misc nostd], unit tests [x64-linux-musl] runs-on: - self-hosted @@ -3054,31 +2842,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 17 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 17 'param0' --update-from-stdin + cat <<'EOF' | flowey v 16 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 17 flowey_lib_common::install_rust 0 + run: flowey e 16 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 17 flowey_lib_common::install_rust 1 + run: flowey e 16 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 17 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 17 flowey_lib_common::git_checkout 0 + run: flowey e 16 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3091,35 +2879,35 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 17 flowey_lib_common::git_checkout 3 + run: flowey e 16 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: checking if packages need to be installed - run: flowey e 17 flowey_lib_common::install_dist_pkg 0 + run: flowey e 16 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 17 flowey_lib_common::install_dist_pkg 1 + run: flowey e 16 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 17 flowey_lib_common::download_gh_release 0 + run: flowey e 16 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 17 flowey_lib_common::cache 4 + run: flowey e 16 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3129,119 +2917,119 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 17 flowey_lib_common::cache 6 + run: flowey e 16 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 17 flowey_lib_common::download_gh_release 1 + run: flowey e 16 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack openvmm-deps archive - run: flowey e 17 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 16 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 17 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 17 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 17 flowey_lib_common::download_protoc 0 + run: flowey e 16 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 1 + run: flowey e 16 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 0 + run: flowey e 16 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: extract Aarch64 sysroot.tar.gz - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 4 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 4 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 2 + run: flowey e 16 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 1 + run: flowey e 16 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 3 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 3 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 5 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 5 shell: bash - name: create cargo-nextest cache dir - run: flowey e 17 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 17 flowey_lib_common::cache 0 + run: flowey e 16 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3251,71 +3039,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 17 flowey_lib_common::cache 2 + run: flowey e 16 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 17 flowey_lib_common::install_rust 2 + run: flowey e 16 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 17 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 0 + run: flowey e 16 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 2 + run: flowey e 16 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 0 + run: flowey e 16 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 1 + run: flowey e 16 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 2 + run: flowey e 16 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3327,18 +3115,18 @@ jobs: name: 'publish test results: x64-linux-musl-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-musl - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 17 flowey_lib_common::cache 3 + run: flowey e 16 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 17 flowey_lib_common::cache 7 + run: flowey e 16 flowey_lib_common::cache 7 shell: bash - job18: + job17: name: unit tests [aarch64-windows] runs-on: - self-hosted @@ -3426,28 +3214,28 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 17 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 17 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: report common cargo flags - run: flowey.exe e 18 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 17 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 0 + run: flowey.exe e 17 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3457,35 +3245,35 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 2 + run: flowey.exe e 17 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 18 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: install Rust - run: flowey.exe e 18 flowey_lib_common::install_rust 0 + run: flowey.exe e 17 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 18 flowey_lib_common::install_rust 1 + run: flowey.exe e 17 flowey_lib_common::install_rust 1 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 18 flowey_lib_common::install_rust 2 + run: flowey.exe e 17 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 18 flowey_lib_common::git_checkout 0 + run: flowey.exe e 17 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3498,29 +3286,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 18 flowey_lib_common::git_checkout 3 + run: flowey.exe e 17 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 17 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 4 + run: flowey.exe e 17 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3530,74 +3318,74 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 6 + run: flowey.exe e 17 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 17 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 18 flowey_lib_common::download_protoc 0 + run: flowey.exe e 17 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 17 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey.exe e 18 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 17 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 18 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 17 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine unit test exclusions - run: flowey.exe e 18 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 18 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 17 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: inject cross env - run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 17 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 17 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 17 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 17 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3609,18 +3397,18 @@ jobs: name: 'publish test results: aarch64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for aarch64-pc-windows-msvc - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 18 flowey_lib_common::cache 3 + run: flowey.exe e 17 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 18 flowey_lib_common::cache 7 + run: flowey.exe e 17 flowey_lib_common::cache 7 shell: bash - job19: + job18: name: run vmm-tests [x64-windows-intel] runs-on: - self-hosted @@ -3630,8 +3418,8 @@ jobs: contents: read id-token: write needs: - - job13 - - job13 + - job12 + - job12 - job10 - job8 - job8 @@ -3684,31 +3472,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 18 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 18 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 18 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 18 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 18 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 18 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 4 + run: flowey.exe e 18 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -3718,26 +3506,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 6 + run: flowey.exe e 18 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 8 + run: flowey.exe e 18 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -3747,26 +3535,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 10 + run: flowey.exe e 18 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 18 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 19 flowey_lib_common::git_checkout 0 + run: flowey.exe e 18 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3779,53 +3567,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 19 flowey_lib_common::git_checkout 3 + run: flowey.exe e 18 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 18 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 0 + run: flowey.exe e 18 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -3835,56 +3623,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 2 + run: flowey.exe e 18 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 18 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 18 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3896,17 +3684,17 @@ jobs: name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3918,17 +3706,17 @@ jobs: name: 'publish test results: logs (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3940,23 +3728,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3968,228 +3756,18 @@ jobs: name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 19 flowey_lib_common::cache 11 + run: flowey.exe e 18 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 19 flowey_lib_common::cache 3 + run: flowey.exe e 18 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 19 flowey_lib_common::cache 7 - shell: bash - job2: - name: build and check docs [x64-linux] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB - permissions: - contents: read - id-token: write - if: github.event.pull_request.draft == false - steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey - shell: bash - - 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.82.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.82.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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) - shell: bash - - uses: actions/checkout@v4 - with: - fetch-depth: 1 - path: flowey_bootstrap - - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci - working-directory: flowey_bootstrap - shell: bash - - name: Stage flowey artifact - run: | - mkdir ./flowey_bootstrap_temp - mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey - working-directory: flowey_bootstrap - shell: bash - - name: Copy flowey artifact - run: | - OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') - mkdir -p $OutDirNormal - cp -r ./flowey_bootstrap_temp/* $OutDirNormal - working-directory: flowey_bootstrap - shell: bash - - name: Cleanup staged flowey artifact - run: rm -rf ./flowey_bootstrap_temp - 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 2 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 2 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string - shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 2 flowey_lib_common::git_checkout 0 - shell: bash - - run: | - flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar3 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 2 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: create gh-release-download cache dir - run: flowey e 2 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 2 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - - run: | - flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar1 }} - path: ${{ env.floweyvar2 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 2 flowey_lib_common::cache 2 - shell: bash - - name: download artifacts from github releases - run: flowey e 2 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 2 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 2 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 2 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: symlink protoc - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: install Rust - run: flowey e 2 flowey_lib_common::install_rust 0 - shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 - shell: bash - - name: move lxutil.dll into its magic folder - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 - shell: bash - - name: detect active toolchain - run: flowey e 2 flowey_lib_common::install_rust 1 - shell: bash - - name: report common cargo flags - run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: construct cargo doc command - run: flowey e 2 flowey_lib_common::run_cargo_doc 0 - shell: bash - - name: document repo for target x86_64-unknown-linux-gnu - run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 - shell: bash - - name: archive rustdoc dir - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 - shell: bash - - name: copying rustdoc to artifact dir - run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 2 flowey_lib_common::cache 3 + run: flowey.exe e 18 flowey_lib_common::cache 7 shell: bash - - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc - uses: actions/upload-artifact@v4 - with: - name: x64-linux-rustdoc - path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ - job20: + job19: name: run vmm-tests [x64-windows-amd] runs-on: - self-hosted @@ -4199,8 +3777,8 @@ jobs: contents: read id-token: write needs: - - job13 - - job13 + - job12 + - job12 - job10 - job8 - job8 @@ -4253,31 +3831,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 20 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 20 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 20 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 20 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 20 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 4 + run: flowey.exe e 19 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4287,26 +3865,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 6 + run: flowey.exe e 19 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 20 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 8 + run: flowey.exe e 19 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4316,26 +3894,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 10 + run: flowey.exe e 19 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 20 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 20 flowey_lib_common::git_checkout 0 + run: flowey.exe e 19 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4348,53 +3926,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 20 flowey_lib_common::git_checkout 3 + run: flowey.exe e 19 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 20 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 0 + run: flowey.exe e 19 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4404,56 +3982,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 2 + run: flowey.exe e 19 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 20 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 20 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4465,17 +4043,17 @@ jobs: name: 'publish test results: crash-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4487,17 +4065,17 @@ jobs: name: 'publish test results: logs (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4509,23 +4087,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4537,18 +4115,228 @@ jobs: name: 'publish test results: x64-windows-amd-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 20 flowey_lib_common::cache 11 + run: flowey.exe e 19 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 20 flowey_lib_common::cache 3 + run: flowey.exe e 19 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 20 flowey_lib_common::cache 7 + run: flowey.exe e 19 flowey_lib_common::cache 7 shell: bash - job21: + job2: + name: build and check docs [x64-linux] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB + permissions: + contents: read + id-token: write + if: github.event.pull_request.draft == false + steps: + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci + working-directory: flowey_bootstrap + shell: bash + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey + working-directory: flowey_bootstrap + shell: bash + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap + shell: bash + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + 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 2 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 2 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 2 flowey_lib_common::git_checkout 0 + shell: bash + - run: | + flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '0' + path: repo0 + persist-credentials: ${{ env.floweyvar3 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 2 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 2 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 2 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + - run: | + flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar1 }} + path: ${{ env.floweyvar2 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 2 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github releases + run: flowey e 2 flowey_lib_common::download_gh_release 1 + shell: bash + - name: checking if packages need to be installed + run: flowey e 2 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 2 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: unpack protoc + run: flowey e 2 flowey_lib_common::download_protoc 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: symlink protoc + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: install Rust + run: flowey e 2 flowey_lib_common::install_rust 0 + shell: bash + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 + shell: bash + - name: move lxutil.dll into its magic folder + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + shell: bash + - name: detect active toolchain + run: flowey e 2 flowey_lib_common::install_rust 1 + shell: bash + - name: report common cargo flags + run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 + shell: bash + - name: construct cargo doc command + run: flowey e 2 flowey_lib_common::run_cargo_doc 0 + shell: bash + - name: document repo for target x86_64-unknown-linux-gnu + run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 + shell: bash + - name: archive rustdoc dir + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 + shell: bash + - name: copying rustdoc to artifact dir + run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 2 flowey_lib_common::cache 3 + shell: bash + - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc + uses: actions/upload-artifact@v4 + with: + name: x64-linux-rustdoc + path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ + job20: name: run vmm-tests [x64-linux] runs-on: - self-hosted @@ -4558,7 +4346,7 @@ jobs: contents: read id-token: write needs: - - job13 + - job12 - job10 - job10 - job8 @@ -4606,33 +4394,33 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 21 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 20 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 21 'param0' --update-from-stdin + cat <<'EOF' | flowey v 20 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 21 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 21 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 21 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 21 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 21 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 20 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 20 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string shell: bash - name: ensure /dev/kvm is accessible - run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: create cargo-nextest cache dir - run: flowey e 21 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 20 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 21 flowey_lib_common::cache 4 + run: flowey e 20 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4642,32 +4430,32 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 21 flowey_lib_common::cache 6 + run: flowey e 20 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey e 21 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 20 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: checking if packages need to be installed - run: flowey e 21 flowey_lib_common::install_dist_pkg 0 + run: flowey e 20 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 21 flowey_lib_common::install_dist_pkg 1 + run: flowey e 20 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 21 flowey_lib_common::download_gh_release 0 + run: flowey e 20 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 21 flowey_lib_common::cache 8 + run: flowey e 20 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4677,26 +4465,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 21 flowey_lib_common::cache 10 + run: flowey e 20 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey e 21 flowey_lib_common::download_gh_release 1 + run: flowey e 20 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 21 flowey_lib_common::git_checkout 0 + run: flowey e 20 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4709,50 +4497,50 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 21 flowey_lib_common::git_checkout 3 + run: flowey e 20 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey e 21 flowey_lib_common::download_azcopy 0 + run: flowey e 20 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey e 21 flowey_lib_common::cache 0 + run: flowey e 20 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4762,56 +4550,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 21 flowey_lib_common::cache 2 + run: flowey e 20 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey e 21 flowey_lib_common::download_azcopy 1 + run: flowey e 20 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey e 21 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 20 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey e 21 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey e 20 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 + run: flowey e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 20 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 20 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 4 + run: flowey e 20 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 5 + run: flowey e 20 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4823,17 +4611,17 @@ jobs: name: 'publish test results: crash-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 7 + run: flowey e 20 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 8 + run: flowey e 20 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4845,17 +4633,17 @@ jobs: name: 'publish test results: logs (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 10 + run: flowey e 20 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 11 + run: flowey e 20 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4867,23 +4655,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 0 + run: flowey e 20 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 1 + run: flowey e 20 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 2 + run: flowey e 20 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4895,18 +4683,18 @@ jobs: name: 'publish test results: x64-linux-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 21 flowey_lib_common::cache 11 + run: flowey e 20 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey e 21 flowey_lib_common::cache 3 + run: flowey e 20 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 21 flowey_lib_common::cache 7 + run: flowey e 20 flowey_lib_common::cache 7 shell: bash - job22: + job21: name: run vmm-tests [aarch64-windows] runs-on: - self-hosted @@ -4971,31 +4759,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 22 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 21 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 22 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 21 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 22 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 22 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 22 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 22 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 21 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 21 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 21 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 21 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 21 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 21 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 22 flowey_lib_common::cache 4 + run: flowey.exe e 21 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 22 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -5005,26 +4793,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 22 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 22 flowey_lib_common::cache 6 + run: flowey.exe e 21 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 22 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 21 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 22 flowey_lib_common::cache 8 + run: flowey.exe e 21 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 22 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -5034,26 +4822,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 22 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 22 flowey_lib_common::cache 10 + run: flowey.exe e 21 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 22 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 21 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (aarch64) - run: flowey.exe e 22 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 22 flowey_lib_common::git_checkout 0 + run: flowey.exe e 21 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5066,53 +4854,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 22 flowey_lib_common::git_checkout 3 + run: flowey.exe e 21 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 22 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 22 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 22 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 21 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 22 flowey_lib_common::cache 0 + run: flowey.exe e 21 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 22 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -5122,56 +4910,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 22 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 22 flowey_lib_common::cache 2 + run: flowey.exe e 21 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 22 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 21 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 22 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 21 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5183,17 +4971,17 @@ jobs: name: 'publish test results: crash-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5205,17 +4993,17 @@ jobs: name: 'publish test results: logs (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5227,23 +5015,23 @@ jobs: name: 'publish test results: openhcl-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5255,18 +5043,18 @@ jobs: name: 'publish test results: aarch64-windows-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 22 flowey_lib_common::cache 11 + run: flowey.exe e 21 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 22 flowey_lib_common::cache 3 + run: flowey.exe e 21 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 22 flowey_lib_common::cache 7 + run: flowey.exe e 21 flowey_lib_common::cache 7 shell: bash - job23: + job22: name: test flowey local backend runs-on: - self-hosted @@ -5353,22 +5141,22 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 23 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 22 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 23 'param0' --update-from-stdin + cat <<'EOF' | flowey v 22 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: check if hvlite needs to be cloned - run: flowey e 23 flowey_lib_common::git_checkout 0 + run: flowey e 22 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 23 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 23 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5381,31 +5169,30 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 23 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 23 flowey_lib_common::git_checkout 3 + run: flowey e 22 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 23 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: install Rust - run: flowey e 23 flowey_lib_common::install_rust 0 + run: flowey e 22 flowey_lib_common::install_rust 0 shell: bash - run: ${{ github.token }} - shell: flowey v 23 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 22 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: test cargo xflowey build-igvm x64 --install-missing-deps - run: flowey e 23 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 + run: flowey e 22 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 shell: bash - job24: + job23: name: openvmm checkin gates runs-on: ubuntu-latest permissions: contents: read id-token: write needs: - - job23 - job22 - job21 - job20 @@ -5436,7 +5223,7 @@ jobs: - name: 🌼πŸ₯Ύ Download bootstrapped flowey uses: actions/download-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-7 + name: _internal-flowey-bootstrap-x86_64-linux-uid-6 path: ${{ runner.temp }}/bootstrapped-flowey - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash @@ -5449,15 +5236,15 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 24 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 24 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 23 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 24 'param0' --update-from-stdin + cat <<'EOF' | flowey v 23 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: Check if any jobs failed - run: flowey e 24 flowey_lib_hvlite::_jobs::all_good_job 0 + run: flowey e 23 flowey_lib_hvlite::_jobs::all_good_job 0 shell: bash job3: name: xtask fmt (windows) diff --git a/flowey/flowey_core/src/node.rs b/flowey/flowey_core/src/node.rs index 1c65be4b7..6514bee94 100644 --- a/flowey/flowey_core/src/node.rs +++ b/flowey/flowey_core/src/node.rs @@ -1798,6 +1798,10 @@ pub mod steps { /// is something like `/pull/ID/merge`. This gives `/pull/ID/head` pub const GITHUB__HEAD_REF: GhContextVar = GhContextVar::new("github.event.pull_request.head.ref"); + + /// `github.event.pull_request.number` + pub const GITHUB__PR_NUMBER: GhContextVar = + GhContextVar::new("github.event.pull_request.number"); } impl GhContextVar { diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index 67c071ab9..b0b24954a 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -714,28 +714,30 @@ impl IntoPipeline for CheckinGatesCli { all_jobs.push(job.finish()); - // emit openvmm verify-size job - let job = pipeline - .new_job( - FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), - FlowArch::X86_64, - format!("verify openhcl binary size [{}]", arch_tag), - ) - .gh_set_pool(crate::pipelines_shared::gh_pools::default_x86_pool( - FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), - )) - .dep_on( - |ctx| flowey_lib_hvlite::_jobs::check_openvmm_hcl_size::Request { - target: CommonTriple::Common { - arch, - platform: CommonPlatform::LinuxMusl, + if arch == CommonArch::X86_64 { + // emit openvmm verify-size job + let job = pipeline + .new_job( + FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), + FlowArch::X86_64, + format!("verify openhcl binary size [{}]", arch_tag), + ) + .gh_set_pool(crate::pipelines_shared::gh_pools::default_x86_pool( + FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), + )) + .dep_on( + |ctx| flowey_lib_hvlite::_jobs::check_openvmm_hcl_size::Request { + target: CommonTriple::Common { + arch, + platform: CommonPlatform::LinuxMusl, + }, + new_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), + done: ctx.new_done_handle(), }, - new_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), - done: ctx.new_done_handle(), - }, - ) - .finish(); - all_jobs.push(job); + ) + .finish(); + all_jobs.push(job); + } } // Emit clippy + unit-test jobs diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index b9c9eb0ff..e012b3ffa 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -24,20 +24,24 @@ impl SimpleFlowNode for Node { } = request; let head_ref = ctx.get_gh_context_var(GhContextVar::GITHUB__HEAD_REF); + let pr_number = ctx.get_gh_context_var(GhContextVar::GITHUB__PR_NUMBER); ctx.emit_rust_step("get merge commit", |ctx| { let merge_commit = merge_commit.claim(ctx); let head_ref = head_ref.claim(ctx); let repo_path = repo_path.claim(ctx); + let pr_number = pr_number.claim(ctx); |rt| { let sh = xshell::Shell::new()?; let repo_path = rt.read(repo_path); let head_ref = rt.read(head_ref); + let pr_number = rt.read(pr_number); sh.change_dir(repo_path); // TODO: Make this work for non-main PRs + xshell::cmd!(sh, "git fetch origin pull/{pr_number}/head:{head_ref}").run()?; let commit = xshell::cmd!(sh, "git merge-base {head_ref} origin/main").read()?; rt.write(merge_commit, &commit); From b6bed7ad217cdf582013b718656ef4e3c4d98c46 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 23:33:12 -0800 Subject: [PATCH 26/42] hack in the gh token --- .github/workflows/openvmm-ci.yaml | 5 ++++- .github/workflows/openvmm-pr.yaml | 5 ++++- flowey/flowey_lib_common/src/gh_workflow_id.rs | 5 +++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index 1a420d0c2..d011eb1a0 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -2386,6 +2386,9 @@ jobs: - name: setup gh cli run: flowey e 14 flowey_lib_common::use_gh_cli 0 shell: bash + - run: ${{ github.token }} + shell: flowey v 14 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:26:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' - run: ${{ github.event.pull_request.head.ref }} shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.event.pull_request.head.ref' @@ -2396,7 +2399,7 @@ jobs: run: flowey e 14 flowey_lib_common::gh_merge_commit 2 shell: bash - name: get action id - run: flowey e 14 flowey_lib_common::gh_workflow_id 0 + run: flowey e 14 flowey_lib_common::gh_workflow_id 1 shell: bash - name: download artifacts from github actions run run: flowey e 14 flowey_lib_common::download_gh_artifact 1 diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index a068e24b7..65d278524 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -2032,6 +2032,9 @@ jobs: - name: setup gh cli run: flowey e 13 flowey_lib_common::use_gh_cli 0 shell: bash + - run: ${{ github.token }} + shell: flowey v 13 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:26:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' - run: ${{ github.event.pull_request.head.ref }} shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.event.pull_request.head.ref' @@ -2042,7 +2045,7 @@ jobs: run: flowey e 13 flowey_lib_common::gh_merge_commit 2 shell: bash - name: get action id - run: flowey e 13 flowey_lib_common::gh_workflow_id 0 + run: flowey e 13 flowey_lib_common::gh_workflow_id 1 shell: bash - name: download artifacts from github actions run run: flowey e 13 flowey_lib_common::download_gh_artifact 1 diff --git a/flowey/flowey_lib_common/src/gh_workflow_id.rs b/flowey/flowey_lib_common/src/gh_workflow_id.rs index ebd060086..295231c08 100644 --- a/flowey/flowey_lib_common/src/gh_workflow_id.rs +++ b/flowey/flowey_lib_common/src/gh_workflow_id.rs @@ -23,19 +23,24 @@ impl SimpleFlowNode for Node { gh_workflow_id, } = request; + let gh_token = ctx.get_gh_context_var(GhContextVar::GITHUB__TOKEN); + ctx.emit_rust_step("get action id", |ctx| { let gh_workflow_id = gh_workflow_id.claim(ctx); let github_commit_hash = github_commit_hash.claim(ctx); + let gh_token = gh_token.claim(ctx); |rt| { let github_commit_hash = rt.read(github_commit_hash); let sh = xshell::Shell::new()?; + let gh_token = rt.read(gh_token); // Fetches the CI build workflow id for a given commit hash let get_action_id = |commit: String| { xshell::cmd!( sh, "gh run list --commit {commit} -w '[flowey] OpenVMM CI' -s 'completed' -L 1 --json databaseId --jq '.[].databaseId'" ) + .env("GITHUB_TOKEN", gh_token) .read() }; From eea8ab630b2dfb6538b2c066c67278de994e5fcb Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Mon, 6 Jan 2025 23:55:31 -0800 Subject: [PATCH 27/42] run shell from right directory --- .github/workflows/openvmm-ci.yaml | 2 +- .github/workflows/openvmm-pr.yaml | 2 +- flowey/flowey_lib_common/src/gh_workflow_id.rs | 6 ++++++ .../flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs | 1 + 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index d011eb1a0..2da281042 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -2387,7 +2387,7 @@ jobs: run: flowey e 14 flowey_lib_common::use_gh_cli 0 shell: bash - run: ${{ github.token }} - shell: flowey v 14 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:26:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:28:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - run: ${{ github.event.pull_request.head.ref }} shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 65d278524..fce591ca6 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -2033,7 +2033,7 @@ jobs: run: flowey e 13 flowey_lib_common::use_gh_cli 0 shell: bash - run: ${{ github.token }} - shell: flowey v 13 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:26:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:28:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - run: ${{ github.event.pull_request.head.ref }} shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string diff --git a/flowey/flowey_lib_common/src/gh_workflow_id.rs b/flowey/flowey_lib_common/src/gh_workflow_id.rs index 295231c08..0a9156bb9 100644 --- a/flowey/flowey_lib_common/src/gh_workflow_id.rs +++ b/flowey/flowey_lib_common/src/gh_workflow_id.rs @@ -6,6 +6,7 @@ use flowey::node::prelude::*; flowey_request! { pub struct Request { pub github_commit_hash: ReadVar, + pub repo_path: ReadVar, pub gh_workflow_id: WriteVar, } } @@ -19,6 +20,7 @@ impl SimpleFlowNode for Node { fn process_request(request: Self::Request, ctx: &mut NodeCtx<'_>) -> anyhow::Result<()> { let Request { + repo_path, github_commit_hash, gh_workflow_id, } = request; @@ -29,11 +31,15 @@ impl SimpleFlowNode for Node { let gh_workflow_id = gh_workflow_id.claim(ctx); let github_commit_hash = github_commit_hash.claim(ctx); let gh_token = gh_token.claim(ctx); + let repo_path = repo_path.claim(ctx); |rt| { let github_commit_hash = rt.read(github_commit_hash); let sh = xshell::Shell::new()?; let gh_token = rt.read(gh_token); + let repo_path = rt.read(repo_path); + + sh.change_dir(repo_path); // Fetches the CI build workflow id for a given commit hash let get_action_id = |commit: String| { xshell::cmd!( diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 36a1194e3..f7dbf890c 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -50,6 +50,7 @@ impl SimpleFlowNode for Node { }); let merge_run_id = ctx.reqv(|v| gh_workflow_id::Request { + repo_path: openvmm_repo_path.clone(), github_commit_hash: merge_commit, gh_workflow_id: v, }); From c6881b346d43dc03815becee84c975a4a5d36d80 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 00:19:24 -0800 Subject: [PATCH 28/42] print file tree to debug --- .../flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index f7dbf890c..af61e30fc 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -76,9 +76,15 @@ impl SimpleFlowNode for Node { crate::build_xtask::XtaskOutput::WindowsBin { exe, .. } => exe, }; + let sh = xshell::Shell::new()?; + sh.change_dir(rt.read(openvmm_repo_path)); + let old_openhcl = rt.read(old_openhcl); let new_openhcl = rt.read(new_openhcl); + xshell::cmd!(sh, "find {old_openhcl}").run()?; + xshell::cmd!(sh, "find {new_openhcl}").run()?; + let arch = target.common_arch().unwrap(); let old_path = match arch { @@ -91,8 +97,6 @@ impl SimpleFlowNode for Node { CommonArch::Aarch64 => new_openhcl.join("openhcl-aarch64/openhcl"), }; - let sh = xshell::Shell::new()?; - sh.change_dir(rt.read(openvmm_repo_path)); xshell::cmd!( sh, "{xtask} verify-size --original {old_path} --new {new_path}" From 584f248aaedf0d8e7dea609332c653efc05c6530 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 00:44:24 -0800 Subject: [PATCH 29/42] try to fix binary path --- flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index af61e30fc..4de7feab0 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -82,13 +82,12 @@ impl SimpleFlowNode for Node { let old_openhcl = rt.read(old_openhcl); let new_openhcl = rt.read(new_openhcl); - xshell::cmd!(sh, "find {old_openhcl}").run()?; xshell::cmd!(sh, "find {new_openhcl}").run()?; let arch = target.common_arch().unwrap(); let old_path = match arch { - CommonArch::X86_64 => old_openhcl.join("openhcl/openhcl"), + CommonArch::X86_64 => old_openhcl.join("x64-openhcl-igvm-extras/openhcl"), CommonArch::Aarch64 => old_openhcl.join("openhcl-aarch64/openhcl"), }; From 8a01cfbacc9c747c68bd8d8e4e7bcc8ca3405599 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 01:06:47 -0800 Subject: [PATCH 30/42] actually fix path --- flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 4de7feab0..ac05ab0d0 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -87,12 +87,12 @@ impl SimpleFlowNode for Node { let arch = target.common_arch().unwrap(); let old_path = match arch { - CommonArch::X86_64 => old_openhcl.join("x64-openhcl-igvm-extras/openhcl"), + CommonArch::X86_64 => old_openhcl.join("x64-openhcl-igvm-extras/openhcl/openhcl"), CommonArch::Aarch64 => old_openhcl.join("openhcl-aarch64/openhcl"), }; let new_path = match arch { - CommonArch::X86_64 => new_openhcl.join("openhcl/openhcl"), + CommonArch::X86_64 => new_openhcl.join("x64-openhcl-igvm-extras/openhcl/openhcl"), CommonArch::Aarch64 => new_openhcl.join("openhcl-aarch64/openhcl"), }; From 4ac364d6f05945994653c2cd9f373ddc9144b57f Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 01:16:01 -0800 Subject: [PATCH 31/42] fmt --- .../flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index ac05ab0d0..8befc26cb 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -87,12 +87,16 @@ impl SimpleFlowNode for Node { let arch = target.common_arch().unwrap(); let old_path = match arch { - CommonArch::X86_64 => old_openhcl.join("x64-openhcl-igvm-extras/openhcl/openhcl"), + CommonArch::X86_64 => { + old_openhcl.join("x64-openhcl-igvm-extras/openhcl/openhcl") + } CommonArch::Aarch64 => old_openhcl.join("openhcl-aarch64/openhcl"), }; let new_path = match arch { - CommonArch::X86_64 => new_openhcl.join("x64-openhcl-igvm-extras/openhcl/openhcl"), + CommonArch::X86_64 => { + new_openhcl.join("x64-openhcl-igvm-extras/openhcl/openhcl") + } CommonArch::Aarch64 => new_openhcl.join("openhcl-aarch64/openhcl"), }; From 2d1bf6e850afecd966d7ed51dbcdf21c95739b4c Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 01:34:35 -0800 Subject: [PATCH 32/42] another path change... --- flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 8befc26cb..02776c85a 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -94,9 +94,7 @@ impl SimpleFlowNode for Node { }; let new_path = match arch { - CommonArch::X86_64 => { - new_openhcl.join("x64-openhcl-igvm-extras/openhcl/openhcl") - } + CommonArch::X86_64 => new_openhcl.join("openhcl/openhcl"), CommonArch::Aarch64 => new_openhcl.join("openhcl-aarch64/openhcl"), }; From 46968a826bd44d3a38a286c6344cc76d9c3a0503 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 10:35:15 -0800 Subject: [PATCH 33/42] try to run a release build as part of PR pipeline --- .github/workflows/openvmm-ci.yaml | 1891 ++++---- .github/workflows/openvmm-pr.yaml | 4041 ++++++++++------- .../src/pipelines/checkin_gates.rs | 53 +- 3 files changed, 3184 insertions(+), 2801 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index 2da281042..70d2e87eb 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -2201,219 +2201,6 @@ jobs: name: _internal-flowey-bootstrap-x86_64-linux-uid-6 path: ${{ runner.temp }}/bootstrapped-flowey job14: - name: verify openhcl binary size [x64] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB - permissions: - contents: read - id-token: write - needs: - - job13 - if: github.event.pull_request.draft == false - steps: - - name: 🌼πŸ₯Ύ Download bootstrapped flowey - uses: actions/download-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-6 - path: ${{ runner.temp }}/bootstrapped-flowey - - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm-extras - uses: actions/download-artifact@v4 - with: - name: x64-openhcl-igvm-extras - path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm-extras/ - - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $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/bootstrapped-flowey/flowey - - echo '"debug"' | flowey v 14 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 14 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras" | flowey v 14 'artifact_use_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string - shell: bash - - name: install Rust - run: flowey e 14 flowey_lib_common::install_rust 0 - shell: bash - - name: detect active toolchain - run: flowey e 14 flowey_lib_common::install_rust 1 - shell: bash - - name: report common cargo flags - run: flowey e 14 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 14 flowey_lib_common::git_checkout 0 - shell: bash - - run: | - flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar1 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 14 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: create gh-release-download cache dir - run: flowey e 14 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 6 - shell: bash - - name: download artifacts from github releases - run: flowey e 14 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 14 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 14 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 14 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: symlink protoc - run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: unpack openvmm-deps archive - run: flowey e 14 flowey_lib_hvlite::download_openvmm_deps 0 - shell: bash - - name: extract X64 sysroot.tar.gz - run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 - shell: bash - - name: inject cross env - run: flowey e 14 flowey_lib_hvlite::init_cross_build 0 - shell: bash - - name: cargo build xtask - run: flowey e 14 flowey_lib_common::run_cargo_build 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 0 - shell: bash - - name: split debug symbols - run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 0 - shell: bash - - name: reporting split debug info - run: flowey e 14 flowey_lib_hvlite::run_cargo_build 1 - shell: bash - - name: report built xtask - run: flowey e 14 flowey_lib_hvlite::build_xtask 0 - shell: bash - - run: ${{ github.token }} - shell: flowey v 14 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.token' - - name: create gh cache dir - run: flowey e 14 flowey_lib_common::download_gh_cli 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 14 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - run: | - flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} - name: 'Restore cache: gh-cli' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 14 flowey_lib_common::cache 2 - shell: bash - - name: installing gh - run: flowey e 14 flowey_lib_common::download_gh_cli 1 - shell: bash - - name: setup gh cli - run: flowey e 14 flowey_lib_common::use_gh_cli 0 - shell: bash - - run: ${{ github.token }} - shell: flowey v 14 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:28:28' --is-secret --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.token' - - run: ${{ github.event.pull_request.head.ref }} - shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.event.pull_request.head.ref' - - run: ${{ github.event.pull_request.number }} - shell: flowey v 14 'flowey_lib_common::gh_merge_commit:1:flowey_lib_common/src/gh_merge_commit.rs:27:29' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.event.pull_request.number' - - name: get merge commit - run: flowey e 14 flowey_lib_common::gh_merge_commit 2 - shell: bash - - name: get action id - run: flowey e 14 flowey_lib_common::gh_workflow_id 1 - shell: bash - - name: download artifacts from github actions run - run: flowey e 14 flowey_lib_common::download_gh_artifact 1 - shell: bash - - name: binary size comparison - run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 - shell: bash - - name: 'validate cache entry: gh-cli' - run: flowey e 14 flowey_lib_common::cache 3 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 14 flowey_lib_common::cache 7 - shell: bash - job15: name: clippy [windows], unit tests [x64-windows] runs-on: - self-hosted @@ -2499,31 +2286,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 15 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 14 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 15 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 14 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey.exe e 15 flowey_lib_common::install_rust 0 + run: flowey.exe e 14 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 15 flowey_lib_common::install_rust 1 + run: flowey.exe e 14 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey.exe e 15 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 14 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 15 flowey_lib_common::git_checkout 0 + run: flowey.exe e 14 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2536,29 +2323,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 15 flowey_lib_common::git_checkout 3 + run: flowey.exe e 14 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 15 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 14 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 15 flowey_lib_common::cache 4 + run: flowey.exe e 14 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2568,86 +2355,86 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 15 flowey_lib_common::cache 6 + run: flowey.exe e 14 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 15 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 14 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 15 flowey_lib_common::download_protoc 0 + run: flowey.exe e 14 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 3 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey.exe e 15 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 14 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 14 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 1 + run: flowey.exe e 14 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: cargo clippy - run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 0 + run: flowey.exe e 14 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 4 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey.exe e 15 flowey_lib_common::run_cargo_build 1 + run: flowey.exe e 14 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 1 + run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 1 + run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 1 + run: flowey.exe e 14 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 14 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 15 flowey_lib_common::cache 0 + run: flowey.exe e 14 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -2657,65 +2444,65 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 15 flowey_lib_common::cache 2 + run: flowey.exe e 14 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 14 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 15 flowey_lib_common::install_rust 2 + run: flowey.exe e 14 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 14 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 5 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey.exe e 15 flowey_lib_common::run_cargo_build 2 + run: flowey.exe e 14 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 2 + run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: report built xtask - run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 2 + run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey.exe e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 14 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 2 + run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 14 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 14 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 14 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 14 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 15 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 14 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 14 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 14 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2727,18 +2514,18 @@ jobs: name: 'publish test results: x64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-pc-windows-msvc - run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 15 flowey_lib_common::cache 3 + run: flowey.exe e 14 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 15 flowey_lib_common::cache 7 + run: flowey.exe e 14 flowey_lib_common::cache 7 shell: bash - job16: + job15: name: clippy [linux, macos], unit tests [x64-linux] runs-on: - self-hosted @@ -2825,40 +2612,40 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 15 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 16 'param0' --update-from-stdin + cat <<'EOF' | flowey v 15 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 16 flowey_lib_common::install_rust 0 + run: flowey e 15 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 16 flowey_lib_common::install_rust 1 + run: flowey e 15 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 15 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 + run: flowey e 15 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 16 flowey_lib_common::install_dist_pkg 1 + run: flowey e 15 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 16 flowey_lib_common::download_gh_release 0 + run: flowey e 15 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 16 flowey_lib_common::cache 4 + run: flowey e 15 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2868,29 +2655,29 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 16 flowey_lib_common::cache 6 + run: flowey e 15 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 16 flowey_lib_common::download_gh_release 1 + run: flowey e 15 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 15 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 15 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 16 flowey_lib_common::git_checkout 0 + run: flowey e 15 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -2903,119 +2690,119 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 16 flowey_lib_common::git_checkout 3 + run: flowey e 15 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 16 flowey_lib_common::download_protoc 0 + run: flowey e 15 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 6 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 6 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 3 + run: flowey e 15 flowey_lib_common::run_cargo_build 3 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 1 + run: flowey e 15 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 2 + run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 2 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 15 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 2 + run: flowey e 15 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 3 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 0 + run: flowey e 15 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 15 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 0 + run: flowey e 15 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 2 + run: flowey e 15 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 15 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: create cargo-nextest cache dir - run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 15 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 16 flowey_lib_common::cache 0 + run: flowey e 15 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3025,71 +2812,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 16 flowey_lib_common::cache 2 + run: flowey e 15 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 16 flowey_lib_common::install_rust 2 + run: flowey e 15 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 15 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 1 + run: flowey e 15 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 6 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 7 + run: flowey e 15 flowey_lib_hvlite::run_cargo_build 7 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 3 + run: flowey e 15 flowey_lib_hvlite::build_xtask 3 shell: bash - name: determine unit test exclusions - run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 15 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 0 + run: flowey e 15 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 1 + run: flowey e 15 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 2 + run: flowey e 15 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3101,18 +2888,18 @@ jobs: name: 'publish test results: x64-linux-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-gnu - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 16 flowey_lib_common::cache 3 + run: flowey e 15 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 16 flowey_lib_common::cache 7 + run: flowey e 15 flowey_lib_common::cache 7 shell: bash - job17: + job16: name: clippy [linux-musl, misc nostd], unit tests [x64-linux-musl] runs-on: - self-hosted @@ -3199,31 +2986,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 17 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 17 'param0' --update-from-stdin + cat <<'EOF' | flowey v 16 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: install Rust - run: flowey e 17 flowey_lib_common::install_rust 0 + run: flowey e 16 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 17 flowey_lib_common::install_rust 1 + run: flowey e 16 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 17 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 17 flowey_lib_common::git_checkout 0 + run: flowey e 16 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3236,35 +3023,35 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 17 flowey_lib_common::git_checkout 3 + run: flowey e 16 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: checking if packages need to be installed - run: flowey e 17 flowey_lib_common::install_dist_pkg 0 + run: flowey e 16 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 17 flowey_lib_common::install_dist_pkg 1 + run: flowey e 16 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 17 flowey_lib_common::download_gh_release 0 + run: flowey e 16 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 17 flowey_lib_common::cache 4 + run: flowey e 16 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3274,119 +3061,119 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 17 flowey_lib_common::cache 6 + run: flowey e 16 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 17 flowey_lib_common::download_gh_release 1 + run: flowey e 16 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack openvmm-deps archive - run: flowey e 17 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 16 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: extract X64 sysroot.tar.gz - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 shell: bash - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 17 flowey_lib_hvlite::download_lxutil 0 + run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 17 flowey_lib_hvlite::download_lxutil 1 + run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: unpack protoc - run: flowey e 17 flowey_lib_common::download_protoc 0 + run: flowey e 16 flowey_lib_common::download_protoc 0 shell: bash - name: symlink protoc - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 2 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 1 + run: flowey e 16 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 2 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 1 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 0 + run: flowey e 16 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine clippy exclusions - run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 1 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 0 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 1 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 shell: bash - name: extract Aarch64 sysroot.tar.gz - run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 4 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 4 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 2 + run: flowey e 16 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 1 + run: flowey e 16 flowey_lib_hvlite::build_xtask 1 shell: bash - name: determine clippy exclusions - run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 3 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 3 shell: bash - name: cargo clippy - run: flowey e 17 flowey_lib_common::run_cargo_clippy 5 + run: flowey e 16 flowey_lib_common::run_cargo_clippy 5 shell: bash - name: create cargo-nextest cache dir - run: flowey e 17 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 17 flowey_lib_common::cache 0 + run: flowey e 16 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3396,71 +3183,71 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 17 flowey_lib_common::cache 2 + run: flowey e 16 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: report $CARGO_HOME - run: flowey e 17 flowey_lib_common::install_rust 2 + run: flowey e 16 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey e 17 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey e 17 flowey_lib_common::run_cargo_build 0 + run: flowey e 16 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 4 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 shell: bash - name: split debug symbols - run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - name: reporting split debug info - run: flowey e 17 flowey_lib_hvlite::run_cargo_build 5 + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 shell: bash - name: report built xtask - run: flowey e 17 flowey_lib_hvlite::build_xtask 2 + run: flowey e 16 flowey_lib_hvlite::build_xtask 2 shell: bash - name: determine unit test exclusions - run: flowey e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: inject cross env - run: flowey e 17 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 0 + run: flowey e 16 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 1 + run: flowey e 16 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 17 flowey_lib_common::publish_test_results 2 + run: flowey e 16 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3472,18 +3259,18 @@ jobs: name: 'publish test results: x64-linux-musl-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for x86_64-unknown-linux-musl - run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 17 flowey_lib_common::cache 3 + run: flowey e 16 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 17 flowey_lib_common::cache 7 + run: flowey e 16 flowey_lib_common::cache 7 shell: bash - job18: + job17: name: unit tests [aarch64-windows] runs-on: - self-hosted @@ -3571,28 +3358,28 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 17 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 17 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: report common cargo flags - run: flowey.exe e 18 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey.exe e 17 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 0 + run: flowey.exe e 17 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3602,35 +3389,35 @@ jobs: path: ${{ env.floweyvar3 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 2 + run: flowey.exe e 17 flowey_lib_common::cache 2 shell: bash - name: report cargo install persistent dir - run: flowey.exe e 18 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + run: flowey.exe e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 shell: bash - name: install Rust - run: flowey.exe e 18 flowey_lib_common::install_rust 0 + run: flowey.exe e 17 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 18 flowey_lib_common::install_rust 1 + run: flowey.exe e 17 flowey_lib_common::install_rust 1 shell: bash - name: report $CARGO_HOME - run: flowey.exe e 18 flowey_lib_common::install_rust 2 + run: flowey.exe e 17 flowey_lib_common::install_rust 2 shell: bash - name: installing cargo-nextest - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 18 flowey_lib_common::git_checkout 0 + run: flowey.exe e 17 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3643,29 +3430,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 18 flowey_lib_common::git_checkout 3 + run: flowey.exe e 17 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 17 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 4 + run: flowey.exe e 17 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3675,74 +3462,74 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 6 + run: flowey.exe e 17 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 17 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 18 flowey_lib_common::download_protoc 0 + run: flowey.exe e 17 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 17 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: cargo build xtask - run: flowey.exe e 18 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 17 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 18 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 17 flowey_lib_hvlite::build_xtask 0 shell: bash - name: determine unit test exclusions - run: flowey.exe e 18 flowey_lib_hvlite::build_nextest_unit_tests 0 + run: flowey.exe e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 18 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 17 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - name: inject cross env - run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 0 + run: flowey.exe e 17 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: run 'unit-tests' nextest tests - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 17 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 17 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 17 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3754,18 +3541,18 @@ jobs: name: 'publish test results: aarch64-windows-unit-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 shell: bash - name: run doctests for aarch64-pc-windows-msvc - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 18 flowey_lib_common::cache 3 + run: flowey.exe e 17 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 18 flowey_lib_common::cache 7 + run: flowey.exe e 17 flowey_lib_common::cache 7 shell: bash - job19: + job18: name: run vmm-tests [x64-windows-intel] runs-on: - self-hosted @@ -3829,31 +3616,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 18 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 18 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 18 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 18 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 18 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 18 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 4 + run: flowey.exe e 18 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -3863,26 +3650,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 6 + run: flowey.exe e 18 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 8 + run: flowey.exe e 18 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -3892,26 +3679,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 10 + run: flowey.exe e 18 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 18 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 19 flowey_lib_common::git_checkout 0 + run: flowey.exe e 18 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3924,53 +3711,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 19 flowey_lib_common::git_checkout 3 + run: flowey.exe e 18 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 18 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 0 + run: flowey.exe e 18 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -3980,56 +3767,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 2 + run: flowey.exe e 18 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 18 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 18 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 18 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 18 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4041,17 +3828,17 @@ jobs: name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4063,17 +3850,17 @@ jobs: name: 'publish test results: logs (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4085,23 +3872,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4113,236 +3900,18 @@ jobs: name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 19 flowey_lib_common::cache 11 + run: flowey.exe e 18 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 19 flowey_lib_common::cache 3 + run: flowey.exe e 18 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 19 flowey_lib_common::cache 7 - shell: bash - job2: - name: build and check docs [x64-linux] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB - permissions: - contents: read - id-token: write - if: github.event.pull_request.draft == false - steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey - shell: bash - - 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.82.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.82.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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) - shell: bash - - uses: actions/checkout@v4 - with: - fetch-depth: 1 - path: flowey_bootstrap - - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci - working-directory: flowey_bootstrap - shell: bash - - name: Stage flowey artifact - run: | - mkdir ./flowey_bootstrap_temp - mv ./.github/workflows/openvmm-ci.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey - working-directory: flowey_bootstrap - shell: bash - - name: Copy flowey artifact - run: | - OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') - mkdir -p $OutDirNormal - cp -r ./flowey_bootstrap_temp/* $OutDirNormal - working-directory: flowey_bootstrap - shell: bash - - name: Cleanup staged flowey artifact - run: rm -rf ./flowey_bootstrap_temp - 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-ci.yaml ci checkin-gates --config=ci - 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 2 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 2 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string - shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 2 flowey_lib_common::git_checkout 0 - shell: bash - - run: | - flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar3 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 2 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: create gh-release-download cache dir - run: flowey e 2 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 2 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - - run: | - flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar1 }} - path: ${{ env.floweyvar2 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 2 flowey_lib_common::cache 2 - shell: bash - - name: download artifacts from github releases - run: flowey e 2 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 2 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 2 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 2 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: symlink protoc - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: install Rust - run: flowey e 2 flowey_lib_common::install_rust 0 - shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 - shell: bash - - name: move lxutil.dll into its magic folder - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 - shell: bash - - name: detect active toolchain - run: flowey e 2 flowey_lib_common::install_rust 1 - shell: bash - - name: report common cargo flags - run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: construct cargo doc command - run: flowey e 2 flowey_lib_common::run_cargo_doc 0 - shell: bash - - name: document repo for target x86_64-unknown-linux-gnu - run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 - shell: bash - - name: archive rustdoc dir - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 - shell: bash - - name: copying rustdoc to artifact dir - run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 2 flowey_lib_common::cache 3 - shell: bash - - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc - uses: actions/upload-artifact@v4 - with: - name: x64-linux-rustdoc - path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ - - name: 🌼🧼 Redact bootstrap var db - run: rm $AgentTempDirNormal/bootstrapped-flowey/job2.json + run: flowey.exe e 18 flowey_lib_common::cache 7 shell: bash - - name: 🌼πŸ₯Ύ Publish bootstrapped flowey - uses: actions/upload-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-16 - path: ${{ runner.temp }}/bootstrapped-flowey - job20: + job19: name: run vmm-tests [x64-windows-amd] runs-on: - self-hosted @@ -4406,31 +3975,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 20 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 20 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 20 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 20 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 20 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 4 + run: flowey.exe e 19 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4440,26 +4009,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 6 + run: flowey.exe e 19 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 20 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 8 + run: flowey.exe e 19 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4469,26 +4038,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 10 + run: flowey.exe e 19 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 20 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 20 flowey_lib_common::git_checkout 0 + run: flowey.exe e 19 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4501,53 +4070,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 20 flowey_lib_common::git_checkout 3 + run: flowey.exe e 19 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 20 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 20 flowey_lib_common::cache 0 + run: flowey.exe e 19 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4557,56 +4126,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 20 flowey_lib_common::cache 2 + run: flowey.exe e 19 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 20 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 20 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4618,17 +4187,17 @@ jobs: name: 'publish test results: crash-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4640,17 +4209,17 @@ jobs: name: 'publish test results: logs (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4662,23 +4231,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 20 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4690,18 +4259,236 @@ jobs: name: 'publish test results: x64-windows-amd-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 20 flowey_lib_common::cache 11 + run: flowey.exe e 19 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 20 flowey_lib_common::cache 3 + run: flowey.exe e 19 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 20 flowey_lib_common::cache 7 + run: flowey.exe e 19 flowey_lib_common::cache 7 shell: bash - job21: + job2: + name: build and check docs [x64-linux] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB + permissions: + contents: read + id-token: write + if: github.event.pull_request.draft == false + steps: + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci + working-directory: flowey_bootstrap + shell: bash + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-ci.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey + working-directory: flowey_bootstrap + shell: bash + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap + shell: bash + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + 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-ci.yaml ci checkin-gates --config=ci + 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 2 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 2 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 2 flowey_lib_common::git_checkout 0 + shell: bash + - run: | + flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '0' + path: repo0 + persist-credentials: ${{ env.floweyvar3 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 2 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 2 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 2 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + - run: | + flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar1 }} + path: ${{ env.floweyvar2 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 2 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github releases + run: flowey e 2 flowey_lib_common::download_gh_release 1 + shell: bash + - name: checking if packages need to be installed + run: flowey e 2 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 2 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: unpack protoc + run: flowey e 2 flowey_lib_common::download_protoc 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: symlink protoc + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: install Rust + run: flowey e 2 flowey_lib_common::install_rust 0 + shell: bash + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 + shell: bash + - name: move lxutil.dll into its magic folder + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + shell: bash + - name: detect active toolchain + run: flowey e 2 flowey_lib_common::install_rust 1 + shell: bash + - name: report common cargo flags + run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 + shell: bash + - name: construct cargo doc command + run: flowey e 2 flowey_lib_common::run_cargo_doc 0 + shell: bash + - name: document repo for target x86_64-unknown-linux-gnu + run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 + shell: bash + - name: archive rustdoc dir + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 + shell: bash + - name: copying rustdoc to artifact dir + run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 2 flowey_lib_common::cache 3 + shell: bash + - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc + uses: actions/upload-artifact@v4 + with: + name: x64-linux-rustdoc + path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ + - name: 🌼🧼 Redact bootstrap var db + run: rm $AgentTempDirNormal/bootstrapped-flowey/job2.json + shell: bash + - name: 🌼πŸ₯Ύ Publish bootstrapped flowey + uses: actions/upload-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-linux-uid-16 + path: ${{ runner.temp }}/bootstrapped-flowey + job20: name: run vmm-tests [x64-linux] runs-on: - self-hosted @@ -4759,33 +4546,33 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 21 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 20 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 21 'param0' --update-from-stdin + cat <<'EOF' | flowey v 20 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 21 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 21 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 21 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 21 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 21 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 20 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 20 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string shell: bash - name: ensure /dev/kvm is accessible - run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: create cargo-nextest cache dir - run: flowey e 21 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 20 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 21 flowey_lib_common::cache 4 + run: flowey e 20 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4795,32 +4582,32 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 21 flowey_lib_common::cache 6 + run: flowey e 20 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey e 21 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 20 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: checking if packages need to be installed - run: flowey e 21 flowey_lib_common::install_dist_pkg 0 + run: flowey e 20 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 21 flowey_lib_common::install_dist_pkg 1 + run: flowey e 20 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 21 flowey_lib_common::download_gh_release 0 + run: flowey e 20 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 21 flowey_lib_common::cache 8 + run: flowey e 20 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4830,26 +4617,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 21 flowey_lib_common::cache 10 + run: flowey e 20 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey e 21 flowey_lib_common::download_gh_release 1 + run: flowey e 20 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 21 flowey_lib_common::git_checkout 0 + run: flowey e 20 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4862,50 +4649,50 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 21 flowey_lib_common::git_checkout 3 + run: flowey e 20 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey e 21 flowey_lib_common::download_azcopy 0 + run: flowey e 20 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey e 21 flowey_lib_common::cache 0 + run: flowey e 20 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4915,56 +4702,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 21 flowey_lib_common::cache 2 + run: flowey e 20 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey e 21 flowey_lib_common::download_azcopy 1 + run: flowey e 20 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey e 21 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 20 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey e 21 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey e 20 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 + run: flowey e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 20 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 20 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 4 + run: flowey e 20 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 5 + run: flowey e 20 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4976,17 +4763,17 @@ jobs: name: 'publish test results: crash-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 7 + run: flowey e 20 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 8 + run: flowey e 20 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4998,17 +4785,17 @@ jobs: name: 'publish test results: logs (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 10 + run: flowey e 20 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 11 + run: flowey e 20 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5020,23 +4807,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 0 + run: flowey e 20 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 1 + run: flowey e 20 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 21 flowey_lib_common::publish_test_results 2 + run: flowey e 20 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5048,18 +4835,18 @@ jobs: name: 'publish test results: x64-linux-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 21 flowey_lib_common::cache 11 + run: flowey e 20 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey e 21 flowey_lib_common::cache 3 + run: flowey e 20 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 21 flowey_lib_common::cache 7 + run: flowey e 20 flowey_lib_common::cache 7 shell: bash - job22: + job21: name: run vmm-tests [aarch64-windows] runs-on: - self-hosted @@ -5124,31 +4911,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 22 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 21 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 22 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 21 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 22 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 22 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 22 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 22 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 21 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 21 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 21 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 21 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 21 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 21 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 22 flowey_lib_common::cache 4 + run: flowey.exe e 21 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 22 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -5158,26 +4945,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 22 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 22 flowey_lib_common::cache 6 + run: flowey.exe e 21 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 22 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 21 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 22 flowey_lib_common::cache 8 + run: flowey.exe e 21 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 22 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -5187,26 +4974,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 22 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 22 flowey_lib_common::cache 10 + run: flowey.exe e 21 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 22 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 21 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (aarch64) - run: flowey.exe e 22 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 22 flowey_lib_common::git_checkout 0 + run: flowey.exe e 21 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5219,53 +5006,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 22 flowey_lib_common::git_checkout 3 + run: flowey.exe e 21 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 22 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 22 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 22 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 21 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 22 flowey_lib_common::cache 0 + run: flowey.exe e 21 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 22 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -5275,56 +5062,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 22 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 22 flowey_lib_common::cache 2 + run: flowey.exe e 21 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 22 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 21 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 22 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 21 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 22 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5336,17 +5123,17 @@ jobs: name: 'publish test results: crash-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5358,17 +5145,17 @@ jobs: name: 'publish test results: logs (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5380,23 +5167,23 @@ jobs: name: 'publish test results: openhcl-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 22 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 21 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 22 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5408,18 +5195,18 @@ jobs: name: 'publish test results: aarch64-windows-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 22 flowey_lib_common::cache 11 + run: flowey.exe e 21 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 22 flowey_lib_common::cache 3 + run: flowey.exe e 21 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 22 flowey_lib_common::cache 7 + run: flowey.exe e 21 flowey_lib_common::cache 7 shell: bash - job23: + job22: name: test flowey local backend runs-on: - self-hosted @@ -5506,22 +5293,22 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 23 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 22 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 23 'param0' --update-from-stdin + cat <<'EOF' | flowey v 22 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: check if hvlite needs to be cloned - run: flowey e 23 flowey_lib_common::git_checkout 0 + run: flowey e 22 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 23 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 23 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5534,22 +5321,22 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 23 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 23 flowey_lib_common::git_checkout 3 + run: flowey e 22 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 23 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: install Rust - run: flowey e 23 flowey_lib_common::install_rust 0 + run: flowey e 22 flowey_lib_common::install_rust 0 shell: bash - run: ${{ github.token }} - shell: flowey v 23 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 22 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: test cargo xflowey build-igvm x64 --install-missing-deps - run: flowey e 23 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 + run: flowey e 22 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 shell: bash job3: name: publish openvmm.dev diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index fce591ca6..57c501eec 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -1844,226 +1844,14 @@ jobs: - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + name: _internal-flowey-bootstrap-x86_64-linux-uid-7 path: ${{ runner.temp }}/bootstrapped-flowey job13: - name: verify openhcl binary size [x64] + name: build openhcl [x64-linux] release runs-on: - self-hosted - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - 1ES.ImageOverride=MMSUbuntu22.04-256GB - permissions: - contents: read - id-token: write - needs: - - job12 - if: github.event.pull_request.draft == false - steps: - - name: 🌼πŸ₯Ύ Download bootstrapped flowey - uses: actions/download-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-6 - path: ${{ runner.temp }}/bootstrapped-flowey - - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm-extras - uses: actions/download-artifact@v4 - with: - name: x64-openhcl-igvm-extras - path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm-extras/ - - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $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/bootstrapped-flowey/flowey - - echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 13 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras" | flowey v 13 'artifact_use_from_x64-openhcl-igvm-extras' --update-from-stdin --is-raw-string - shell: bash - - name: install Rust - run: flowey e 13 flowey_lib_common::install_rust 0 - shell: bash - - name: detect active toolchain - run: flowey e 13 flowey_lib_common::install_rust 1 - shell: bash - - name: report common cargo flags - run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 13 flowey_lib_common::git_checkout 0 - shell: bash - - run: | - flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar1 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 13 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: create gh-release-download cache dir - run: flowey e 13 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey v 13 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 13 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 6 - shell: bash - - name: download artifacts from github releases - run: flowey e 13 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 13 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 13 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 13 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: symlink protoc - run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: unpack openvmm-deps archive - run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 - shell: bash - - name: extract X64 sysroot.tar.gz - run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 - shell: bash - - name: inject cross env - run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 - shell: bash - - name: cargo build xtask - run: flowey e 13 flowey_lib_common::run_cargo_build 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 - shell: bash - - name: split debug symbols - run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 - shell: bash - - name: reporting split debug info - run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 - shell: bash - - name: report built xtask - run: flowey e 13 flowey_lib_hvlite::build_xtask 0 - shell: bash - - run: ${{ github.token }} - shell: flowey v 13 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.token' - - name: create gh cache dir - run: flowey e 13 flowey_lib_common::download_gh_cli 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 13 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - run: | - flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} - name: 'Restore cache: gh-cli' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 13 flowey_lib_common::cache 2 - shell: bash - - name: installing gh - run: flowey e 13 flowey_lib_common::download_gh_cli 1 - shell: bash - - name: setup gh cli - run: flowey e 13 flowey_lib_common::use_gh_cli 0 - shell: bash - - run: ${{ github.token }} - shell: flowey v 13 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:28:28' --is-secret --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.token' - - run: ${{ github.event.pull_request.head.ref }} - shell: flowey v 13 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.event.pull_request.head.ref' - - run: ${{ github.event.pull_request.number }} - shell: flowey v 13 'flowey_lib_common::gh_merge_commit:1:flowey_lib_common/src/gh_merge_commit.rs:27:29' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.event.pull_request.number' - - name: get merge commit - run: flowey e 13 flowey_lib_common::gh_merge_commit 2 - shell: bash - - name: get action id - run: flowey e 13 flowey_lib_common::gh_workflow_id 1 - shell: bash - - name: download artifacts from github actions run - run: flowey e 13 flowey_lib_common::download_gh_artifact 1 - shell: bash - - name: binary size comparison - run: flowey e 13 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 - shell: bash - - name: 'validate cache entry: gh-cli' - run: flowey e 13 flowey_lib_common::cache 3 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 13 flowey_lib_common::cache 7 - shell: bash - job14: - name: clippy [windows], unit tests [x64-windows] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 permissions: contents: read id-token: write @@ -2104,14 +1892,14 @@ jobs: fetch-depth: 1 path: flowey_bootstrap - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci working-directory: flowey_bootstrap shell: bash - name: Stage flowey artifact run: | mkdir ./flowey_bootstrap_temp mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe ./flowey_bootstrap_temp/flowey.exe + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey working-directory: flowey_bootstrap shell: bash - name: Copy flowey artifact @@ -2135,7 +1923,7 @@ jobs: ${{ 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 + 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: | @@ -2143,623 +1931,481 @@ jobs: 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 + chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey.exe v 14 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 13 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 13 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 14 'param0' --update-from-stdin + cat <<'EOF' | flowey v 13 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF + mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras-release" + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-extras-release" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm-extras-release' --update-from-stdin --is-raw-string + mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-release" + echo "$AgentTempDirNormal/publish_artifacts/x64-openhcl-igvm-release" | flowey v 13 'artifact_publish_from_x64-openhcl-igvm-release' --update-from-stdin --is-raw-string + shell: bash + - name: checking if packages need to be installed + run: flowey e 13 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 13 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 13 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 13 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 13 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + - run: | + flowey v 13 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar1 }} + path: ${{ env.floweyvar2 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 13 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 13 flowey_lib_common::cache 2 + shell: bash + - name: download artifacts from github releases + run: flowey e 13 flowey_lib_common::download_gh_release 1 + shell: bash + - name: unpack mu_msvm package (x64) + run: flowey e 13 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: install Rust - run: flowey.exe e 14 flowey_lib_common::install_rust 0 + run: flowey e 13 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 14 flowey_lib_common::install_rust 1 + run: flowey e 13 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey.exe e 14 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 13 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 14 flowey_lib_common::git_checkout 0 + run: flowey e 13 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 13 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 13 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: fetch-depth: '0' path: repo0 - persist-credentials: ${{ env.floweyvar6 }} + persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 13 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 14 flowey_lib_common::git_checkout 3 + run: flowey e 13 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 13 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - - name: create gh-release-download cache dir - run: flowey.exe e 14 flowey_lib_common::download_gh_release 0 + - name: unpack protoc + run: flowey e 13 flowey_lib_common::download_protoc 0 shell: bash - - name: Pre-processing cache vars - run: flowey.exe e 14 flowey_lib_common::cache 4 - shell: bash - - run: | - flowey.exe v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey.exe v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey.exe e 14 flowey_lib_common::cache 6 - shell: bash - - name: download artifacts from github releases - run: flowey.exe e 14 flowey_lib_common::download_gh_release 1 - shell: bash - - name: unpack protoc - run: flowey.exe e 14 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey.exe e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + - name: report openvmm magicpath dir + run: flowey e 13 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 1 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 2 shell: bash - - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 3 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 2 shell: bash - - name: cargo build xtask - run: flowey.exe e 14 flowey_lib_common::run_cargo_build 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 3 + shell: bash + - name: cargo build openhcl_boot + run: flowey e 13 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 4 shell: bash - - name: report built xtask - run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 0 + - name: split debug symbols + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 5 shell: bash - - name: determine clippy exclusions - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::check_clippy 1 + - name: reporting split debug info + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 5 shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey.exe e 14 flowey_lib_hvlite::download_lxutil 0 + - name: report built openhcl_boot + run: flowey e 13 flowey_lib_hvlite::build_openhcl_boot 0 shell: bash - - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 14 flowey_lib_hvlite::download_lxutil 1 + - name: unpack kernel package + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 2 shell: bash - - name: move lxutil.dll into its magic folder - run: flowey.exe e 14 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 27 shell: bash - - name: cargo clippy - run: flowey.exe e 14 flowey_lib_common::run_cargo_clippy 0 + - name: unpack openvmm-deps archive + run: flowey e 13 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 0 + - name: extract X64 sysroot.tar.gz + run: flowey e 13 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 4 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 1 shell: bash - - name: cargo build xtask - run: flowey.exe e 14 flowey_lib_common::run_cargo_build 1 + - name: cargo build openvmm_hcl + run: flowey e 13 flowey_lib_common::run_cargo_build 2 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 1 - shell: bash - - name: report built xtask - run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 1 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 6 shell: bash - - name: determine clippy exclusions - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::check_clippy 0 - shell: bash - - name: cargo clippy - run: flowey.exe e 14 flowey_lib_common::run_cargo_clippy 1 + - name: report built openvmm_hcl + run: flowey e 13 flowey_lib_hvlite::build_openvmm_hcl 0 shell: bash - - name: create cargo-nextest cache dir - run: flowey.exe e 14 flowey_lib_common::download_cargo_nextest 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 23 shell: bash - - name: Pre-processing cache vars - run: flowey.exe e 14 flowey_lib_common::cache 0 + - name: split debug symbols + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 2 shell: bash - - run: | - flowey.exe v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 24 shell: bash - name: 🌼 Write to 'floweyvar2' - - run: | - flowey.exe v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 25 shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} - name: 'Restore cache: cargo-nextest' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey.exe e 14 flowey_lib_common::cache 2 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 28 shell: bash - - name: report cargo install persistent dir - run: flowey.exe e 14 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + - name: building openhcl initrd + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 4 shell: bash - - name: report $CARGO_HOME - run: flowey.exe e 14 flowey_lib_common::install_rust 2 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 29 shell: bash - - name: installing cargo-nextest - run: flowey.exe e 14 flowey_lib_common::download_cargo_nextest 1 + - name: enumerate igvm resources + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 30 shell: bash - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 5 + run: flowey e 13 flowey_lib_hvlite::init_cross_build 0 shell: bash - - name: cargo build xtask - run: flowey.exe e 14 flowey_lib_common::run_cargo_build 2 + - name: cargo build igvmfilegen + run: flowey e 13 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 0 shell: bash - - name: report built xtask - run: flowey.exe e 14 flowey_lib_hvlite::build_xtask 2 + - name: split debug symbols + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 6 shell: bash - - name: determine unit test exclusions - run: flowey.exe e 14 flowey_lib_hvlite::build_nextest_unit_tests 0 + - name: reporting split debug info + run: flowey e 13 flowey_lib_hvlite::run_cargo_build 1 shell: bash - - name: inject cross env - run: flowey.exe e 14 flowey_lib_hvlite::init_cross_build 2 + - name: report built igvmfilegen + run: flowey e 13 flowey_lib_hvlite::build_igvmfilegen 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 31 shell: bash - - name: run 'unit-tests' nextest tests - run: flowey.exe e 14 flowey_lib_common::run_cargo_nextest_run 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 32 shell: bash - - name: write results - run: flowey.exe e 14 flowey_lib_common::run_cargo_nextest_run 1 + - name: building igvm file + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_common::publish_test_results 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 38 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_common::publish_test_results 1 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 34 + shell: bash + - name: split debug symbols + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 3 + shell: bash + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 35 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 14 flowey_lib_common::publish_test_results 2 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 36 shell: bash - - run: | - flowey.exe v 14 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 39 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 14 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + - name: unpack kernel package + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 0 shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__3 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-unit-tests-junit-xml - path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-windows-unit-tests (JUnit XML)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: report test results to overall pipeline status - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + - name: building openhcl initrd + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 0 shell: bash - - name: run doctests for x86_64-pc-windows-msvc - run: flowey.exe e 14 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 40 shell: bash - - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 14 flowey_lib_common::cache 3 + - name: enumerate igvm resources + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 41 shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 14 flowey_lib_common::cache 7 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 42 shell: bash - job15: - name: clippy [linux, macos], unit tests [x64-linux] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB - permissions: - contents: read - id-token: write - if: github.event.pull_request.draft == false - steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 43 shell: bash - - 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.82.0 -y - . "$HOME/.cargo/env" - echo "$HOME/.cargo/bin" >> "$GITHUB_PATH" - rustup show - if: runner.os == 'Linux' - name: rustup (Linux) + - name: building igvm file + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 0 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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'X64' - name: rustup (Windows X64) + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 8 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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 49 shell: bash - - uses: actions/checkout@v4 - with: - fetch-depth: 1 - path: flowey_bootstrap - - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci - working-directory: flowey_bootstrap + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 45 shell: bash - - name: Stage flowey artifact - run: | - mkdir ./flowey_bootstrap_temp - mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey - working-directory: flowey_bootstrap + - name: split debug symbols + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - - name: Copy flowey artifact - run: | - OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') - mkdir -p $OutDirNormal - cp -r ./flowey_bootstrap_temp/* $OutDirNormal - working-directory: flowey_bootstrap + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 46 shell: bash - - name: Cleanup staged flowey artifact - run: rm -rf ./flowey_bootstrap_temp - working-directory: flowey_bootstrap + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 47 shell: bash - - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 50 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 + - name: building openhcl initrd + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 1 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 15 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 15 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 51 shell: bash - - name: install Rust - run: flowey e 15 flowey_lib_common::install_rust 0 + - name: enumerate igvm resources + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 52 shell: bash - - name: detect active toolchain - run: flowey e 15 flowey_lib_common::install_rust 1 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 53 shell: bash - - name: report common cargo flags - run: flowey e 15 flowey_lib_common::cfg_cargo_common_flags 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 54 shell: bash - - name: checking if packages need to be installed - run: flowey e 15 flowey_lib_common::install_dist_pkg 0 + - name: building igvm file + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 1 shell: bash - - name: installing packages - run: flowey e 15 flowey_lib_common::install_dist_pkg 1 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 12 shell: bash - - name: create gh-release-download cache dir - run: flowey e 15 flowey_lib_common::download_gh_release 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 5 shell: bash - - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 4 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 1 shell: bash - - run: | - flowey v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + - name: split debug symbols + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 4 shell: bash - name: 🌼 Write to 'floweyvar4' - - run: | - flowey v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 Write to 'floweyvar5' - - id: flowey_lib_common__cache__5 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar4 }} - path: ${{ env.floweyvar5 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 6 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 3 shell: bash - - name: download artifacts from github releases - run: flowey e 15 flowey_lib_common::download_gh_release 1 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 6 shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 15 flowey_lib_hvlite::download_lxutil 0 + - name: building openhcl initrd + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 2 shell: bash - - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 15 flowey_lib_hvlite::download_lxutil 1 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 7 shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 15 flowey_lib_common::git_checkout 0 + - name: enumerate igvm resources + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 8 shell: bash - - run: | - flowey v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 9 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 10 shell: bash - name: 🌼 Write to 'floweyvar6' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar6 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 15 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: move lxutil.dll into its magic folder - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: unpack protoc - run: flowey e 15 flowey_lib_common::download_protoc 0 - shell: bash - - name: symlink protoc - run: flowey e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 1 - shell: bash - - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 6 - shell: bash - - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 3 + - name: building igvm file + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 2 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 2 - shell: bash - - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 0 - shell: bash - - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 3 - shell: bash - - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 1 - shell: bash - - name: determine clippy exclusions - run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 2 - shell: bash - - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 1 - shell: bash - - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 0 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 0 shell: bash - - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 5 + - name: unpack kernel package + run: flowey e 13 flowey_lib_hvlite::download_openhcl_kernel_package 1 shell: bash - - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 2 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 16 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 12 shell: bash - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 3 + run: flowey e 13 flowey_lib_hvlite::run_split_debug_info 1 shell: bash - - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 1 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 13 shell: bash - - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 14 shell: bash - - name: determine clippy exclusions - run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 1 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 17 shell: bash - - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 0 + - name: building openhcl initrd + run: flowey e 13 flowey_lib_hvlite::build_openhcl_initrd 3 shell: bash - - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 3 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 18 shell: bash - - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 0 + - name: enumerate igvm resources + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 4 - shell: bash - - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 1 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 20 shell: bash - - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 5 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 21 shell: bash - - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 2 + - name: building igvm file + run: flowey e 13 flowey_lib_hvlite::run_igvmfilegen 3 shell: bash - - name: determine clippy exclusions - run: flowey e 15 flowey_lib_hvlite::_jobs::check_clippy 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 16 shell: bash - - name: cargo clippy - run: flowey e 15 flowey_lib_common::run_cargo_clippy 2 + - name: describe OpenHCL igvm artifact + run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::publish 0 shell: bash - - name: create cargo-nextest cache dir - run: flowey e 15 flowey_lib_common::download_cargo_nextest 0 + - name: copying OpenHCL igvm files to artifact dir + run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 1 shell: bash - - name: Pre-processing cache vars - run: flowey e 15 flowey_lib_common::cache 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 26 shell: bash - - run: | - flowey v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 22 shell: bash - name: 🌼 Write to 'floweyvar2' - - run: | - flowey v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 5 shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} - name: 'Restore cache: cargo-nextest' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 15 flowey_lib_common::cache 2 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 6 shell: bash - - name: report cargo install persistent dir - run: flowey e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 7 shell: bash - - name: report $CARGO_HOME - run: flowey e 15 flowey_lib_common::install_rust 2 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 37 shell: bash - - name: installing cargo-nextest - run: flowey e 15 flowey_lib_common::download_cargo_nextest 1 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 33 shell: bash - - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 4 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 9 shell: bash - - name: cargo build xtask - run: flowey e 15 flowey_lib_common::run_cargo_build 1 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 10 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 6 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 11 shell: bash - - name: split debug symbols - run: flowey e 15 flowey_lib_hvlite::run_split_debug_info 2 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 48 shell: bash - - name: reporting split debug info - run: flowey e 15 flowey_lib_hvlite::run_cargo_build 7 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 44 shell: bash - - name: report built xtask - run: flowey e 15 flowey_lib_hvlite::build_xtask 3 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 13 shell: bash - - name: determine unit test exclusions - run: flowey e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 14 shell: bash - - name: inject cross env - run: flowey e 15 flowey_lib_hvlite::init_cross_build 2 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 15 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 15 shell: bash - - name: run 'unit-tests' nextest tests - run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 0 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 11 shell: bash - - name: write results - run: flowey e 15 flowey_lib_common::run_cargo_nextest_run 1 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 17 shell: bash - - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 18 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 0 + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 19 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 1 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 4 shell: bash - name: 🌼 write_into Var - run: flowey e 15 flowey_lib_common::publish_test_results 2 + run: flowey e 13 flowey_lib_hvlite::build_openhcl_igvm_from_recipe 0 shell: bash - - run: | - flowey v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 1 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + - name: 🌼 Zip Vars + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 2 shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__3 - uses: actions/upload-artifact@v4 - with: - name: x64-linux-unit-tests-junit-xml - path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-linux-unit-tests (JUnit XML)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: report test results to overall pipeline status - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + - name: 🌼 write_into Var + run: flowey e 13 flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe 3 shell: bash - - name: run doctests for x86_64-unknown-linux-gnu - run: flowey e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + - name: describe OpenHCL igvm extras artifact + run: flowey e 13 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe_extras::publish 0 shell: bash - - name: 'validate cache entry: cargo-nextest' - run: flowey e 15 flowey_lib_common::cache 3 + - name: copying OpenHCL igvm extras to artifact dir + run: flowey e 13 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 15 flowey_lib_common::cache 7 + run: flowey e 13 flowey_lib_common::cache 3 shell: bash - job16: - name: clippy [linux-musl, misc nostd], unit tests [x64-linux-musl] + - name: πŸŒΌπŸ“¦ Publish x64-openhcl-igvm-extras-release + uses: actions/upload-artifact@v4 + with: + name: x64-openhcl-igvm-extras-release + path: ${{ runner.temp }}/publish_artifacts/x64-openhcl-igvm-extras-release/ + - name: πŸŒΌπŸ“¦ Publish x64-openhcl-igvm-release + uses: actions/upload-artifact@v4 + with: + name: x64-openhcl-igvm-release + path: ${{ runner.temp }}/publish_artifacts/x64-openhcl-igvm-release/ + - name: 🌼🧼 Redact bootstrap var db + run: rm $AgentTempDirNormal/bootstrapped-flowey/job13.json + shell: bash + - name: 🌼πŸ₯Ύ Publish bootstrapped flowey + uses: actions/upload-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + path: ${{ runner.temp }}/bootstrapped-flowey + job14: + name: verify openhcl binary size [x64] runs-on: - self-hosted - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 @@ -2767,76 +2413,23 @@ jobs: permissions: contents: read id-token: write + needs: + - job13 if: github.event.pull_request.draft == false steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey - shell: bash - - 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.82.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.82.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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) - shell: bash - - uses: actions/checkout@v4 + - name: 🌼πŸ₯Ύ Download bootstrapped flowey + uses: actions/download-artifact@v4 with: - fetch-depth: 1 - path: flowey_bootstrap - - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci - working-directory: flowey_bootstrap - shell: bash - - name: Stage flowey artifact - run: | - mkdir ./flowey_bootstrap_temp - mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey - working-directory: flowey_bootstrap - shell: bash - - name: Copy flowey artifact - run: | - OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') - mkdir -p $OutDirNormal - cp -r ./flowey_bootstrap_temp/* $OutDirNormal - working-directory: flowey_bootstrap - shell: bash - - name: Cleanup staged flowey artifact - run: rm -rf ./flowey_bootstrap_temp - working-directory: flowey_bootstrap - shell: bash + name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + path: ${{ runner.temp }}/bootstrapped-flowey + - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm-extras-release + uses: actions/download-artifact@v4 + with: + name: x64-openhcl-igvm-extras-release + path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm-extras-release/ - 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 }}" @@ -2845,72 +2438,67 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 14 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 14 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 16 'param0' --update-from-stdin + cat <<'EOF' | flowey v 14 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF + echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras-release" | flowey v 14 'artifact_use_from_x64-openhcl-igvm-extras-release' --update-from-stdin --is-raw-string shell: bash - name: install Rust - run: flowey e 16 flowey_lib_common::install_rust 0 + run: flowey e 14 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey e 16 flowey_lib_common::install_rust 1 + run: flowey e 14 flowey_lib_common::install_rust 1 shell: bash - name: report common cargo flags - run: flowey e 16 flowey_lib_common::cfg_cargo_common_flags 0 + run: flowey e 14 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 16 flowey_lib_common::git_checkout 0 + run: flowey e 14 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 14 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 14 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: fetch-depth: '0' path: repo0 - persist-credentials: ${{ env.floweyvar6 }} + persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 16 flowey_lib_common::git_checkout 3 + run: flowey e 14 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: checking if packages need to be installed - run: flowey e 16 flowey_lib_common::install_dist_pkg 0 + run: flowey e 14 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - - name: installing packages - run: flowey e 16 flowey_lib_common::install_dist_pkg 1 + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 14 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey e 16 flowey_lib_common::download_gh_release 0 + run: flowey e 14 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 16 flowey_lib_common::cache 4 + run: flowey e 14 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 14 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 14 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -2920,119 +2508,68 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 16 flowey_lib_common::cache 6 + run: flowey e 14 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey e 16 flowey_lib_common::download_gh_release 1 + run: flowey e 14 flowey_lib_common::download_gh_release 1 shell: bash - - name: unpack openvmm-deps archive - run: flowey e 16 flowey_lib_hvlite::download_openvmm_deps 0 - shell: bash - - name: extract X64 sysroot.tar.gz - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 - shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 - shell: bash - - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 - shell: bash - - name: move lxutil.dll into its magic folder - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + - name: checking if packages need to be installed + run: flowey e 14 flowey_lib_common::install_dist_pkg 0 shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + - name: installing packages + run: flowey e 14 flowey_lib_common::install_dist_pkg 1 shell: bash - name: unpack protoc - run: flowey e 16 flowey_lib_common::download_protoc 0 - shell: bash - - name: symlink protoc - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 - shell: bash - - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 - shell: bash - - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 1 - shell: bash - - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 - shell: bash - - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 - shell: bash - - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 - shell: bash - - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 0 - shell: bash - - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 - shell: bash - - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 - shell: bash - - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 + run: flowey e 14 flowey_lib_common::download_protoc 0 shell: bash - - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 + - name: report openvmm magicpath dir + run: flowey e 14 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - - name: extract Aarch64 sysroot.tar.gz - run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + - name: symlink protoc + run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 + - name: unpack openvmm-deps archive + run: flowey e 14 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 4 + - name: extract X64 sysroot.tar.gz + run: flowey e 14 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 shell: bash - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 + run: flowey e 14 flowey_lib_hvlite::init_cross_build 0 shell: bash - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 2 + run: flowey e 14 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 + run: flowey e 14 flowey_lib_hvlite::run_split_debug_info 0 shell: bash - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 + run: flowey e 14 flowey_lib_hvlite::run_cargo_build 1 shell: bash - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 1 - shell: bash - - name: determine clippy exclusions - run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 - shell: bash - - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 3 - shell: bash - - name: cargo clippy - run: flowey e 16 flowey_lib_common::run_cargo_clippy 5 + run: flowey e 14 flowey_lib_hvlite::build_xtask 0 shell: bash - - name: create cargo-nextest cache dir - run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 + - run: ${{ github.token }} + shell: flowey v 14 'flowey_lib_common::download_gh_artifact:0:flowey_lib_common/src/download_gh_artifact.rs:46:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' + - name: create gh cache dir + run: flowey e 14 flowey_lib_common::download_gh_cli 0 shell: bash - name: Pre-processing cache vars - run: flowey e 16 flowey_lib_common::cache 0 + run: flowey e 14 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 14 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' - run: | - flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 14 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' - id: flowey_lib_common__cache__1 @@ -3040,102 +2577,51 @@ jobs: with: key: ${{ env.floweyvar2 }} path: ${{ env.floweyvar3 }} - name: 'Restore cache: cargo-nextest' + name: 'Restore cache: gh-cli' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 14 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 16 flowey_lib_common::cache 2 - shell: bash - - name: report cargo install persistent dir - run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 - shell: bash - - name: report $CARGO_HOME - run: flowey e 16 flowey_lib_common::install_rust 2 - shell: bash - - name: installing cargo-nextest - run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 - shell: bash - - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 - shell: bash - - name: cargo build xtask - run: flowey e 16 flowey_lib_common::run_cargo_build 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 - shell: bash - - name: split debug symbols - run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 - shell: bash - - name: reporting split debug info - run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 - shell: bash - - name: report built xtask - run: flowey e 16 flowey_lib_hvlite::build_xtask 2 - shell: bash - - name: determine unit test exclusions - run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 - shell: bash - - name: inject cross env - run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 - shell: bash - - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 - shell: bash - - name: run 'unit-tests' nextest tests - run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 - shell: bash - - name: write results - run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 - shell: bash - - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 0 + run: flowey e 14 flowey_lib_common::cache 2 shell: bash - - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 1 + - name: installing gh + run: flowey e 14 flowey_lib_common::download_gh_cli 1 shell: bash - - name: 🌼 write_into Var - run: flowey e 16 flowey_lib_common::publish_test_results 2 + - name: setup gh cli + run: flowey e 14 flowey_lib_common::use_gh_cli 0 shell: bash - - run: | - flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + - run: ${{ github.token }} + shell: flowey v 14 'flowey_lib_common::gh_workflow_id:0:flowey_lib_common/src/gh_workflow_id.rs:28:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' + - run: ${{ github.event.pull_request.head.ref }} + shell: flowey v 14 'flowey_lib_common::gh_merge_commit:0:flowey_lib_common/src/gh_merge_commit.rs:26:28' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.event.pull_request.head.ref' + - run: ${{ github.event.pull_request.number }} + shell: flowey v 14 'flowey_lib_common::gh_merge_commit:1:flowey_lib_common/src/gh_merge_commit.rs:27:29' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.event.pull_request.number' + - name: get merge commit + run: flowey e 14 flowey_lib_common::gh_merge_commit 2 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + - name: get action id + run: flowey e 14 flowey_lib_common::gh_workflow_id 1 shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__3 - uses: actions/upload-artifact@v4 - with: - name: x64-linux-musl-unit-tests-junit-xml - path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-linux-musl-unit-tests (JUnit XML)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: report test results to overall pipeline status - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + - name: download artifacts from github actions run + run: flowey e 14 flowey_lib_common::download_gh_artifact 1 shell: bash - - name: run doctests for x86_64-unknown-linux-musl - run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + - name: binary size comparison + run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - - name: 'validate cache entry: cargo-nextest' - run: flowey e 16 flowey_lib_common::cache 3 + - name: 'validate cache entry: gh-cli' + run: flowey e 14 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 16 flowey_lib_common::cache 7 + run: flowey e 14 flowey_lib_common::cache 7 shell: bash - job17: - name: unit tests [aarch64-windows] + job15: + name: clippy [windows], unit tests [x64-windows] runs-on: - self-hosted - - Windows - - ARM64 - - Baremetal + - 1ES.Pool=OpenVMM-GitHub-Win-Pool-WestUS3 permissions: contents: read id-token: write @@ -3176,14 +2662,14 @@ jobs: fetch-depth: 1 path: flowey_bootstrap - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci working-directory: flowey_bootstrap shell: bash - name: Stage flowey artifact run: | mkdir ./flowey_bootstrap_temp mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/aarch64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe ./flowey_bootstrap_temp/flowey.exe + mv target/x86_64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe ./flowey_bootstrap_temp/flowey.exe working-directory: flowey_bootstrap shell: bash - name: Copy flowey artifact @@ -3217,66 +2703,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 17 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 15 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 15 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 17 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 15 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - - name: report common cargo flags - run: flowey.exe e 17 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: create cargo-nextest cache dir - run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 0 - shell: bash - - name: Pre-processing cache vars - run: flowey.exe e 17 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey.exe v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - run: | - flowey.exe v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar2 }} - path: ${{ env.floweyvar3 }} - name: 'Restore cache: cargo-nextest' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey.exe e 17 flowey_lib_common::cache 2 - shell: bash - - name: report cargo install persistent dir - run: flowey.exe e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 - shell: bash - name: install Rust - run: flowey.exe e 17 flowey_lib_common::install_rust 0 + run: flowey.exe e 15 flowey_lib_common::install_rust 0 shell: bash - name: detect active toolchain - run: flowey.exe e 17 flowey_lib_common::install_rust 1 - shell: bash - - name: report $CARGO_HOME - run: flowey.exe e 17 flowey_lib_common::install_rust 2 + run: flowey.exe e 15 flowey_lib_common::install_rust 1 shell: bash - - name: installing cargo-nextest - run: flowey.exe e 17 flowey_lib_common::download_cargo_nextest 1 + - name: report common cargo flags + run: flowey.exe e 15 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 17 flowey_lib_common::git_checkout 0 + run: flowey.exe e 15 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 15 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 15 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3289,29 +2740,29 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 15 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 17 flowey_lib_common::git_checkout 3 + run: flowey.exe e 15 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 15 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: set '-Dwarnings' in .cargo/config.toml - run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 17 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 15 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 17 flowey_lib_common::cache 4 + run: flowey.exe e 15 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 @@ -3321,456 +2772,1773 @@ jobs: path: ${{ env.floweyvar5 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 15 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 17 flowey_lib_common::cache 6 + run: flowey.exe e 15 flowey_lib_common::cache 6 shell: bash - name: download artifacts from github releases - run: flowey.exe e 17 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 15 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack protoc - run: flowey.exe e 17 flowey_lib_common::download_protoc 0 + run: flowey.exe e 15 flowey_lib_common::download_protoc 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 15 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: symlink protoc - run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: inject cross env + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 1 shell: bash - name: inject cross env - run: flowey.exe e 17 flowey_lib_hvlite::init_cross_build 1 + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 3 shell: bash - name: cargo build xtask - run: flowey.exe e 17 flowey_lib_common::run_cargo_build 0 + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_build 0 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 0 shell: bash - name: report built xtask - run: flowey.exe e 17 flowey_lib_hvlite::build_xtask 0 + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 0 shell: bash - - name: determine unit test exclusions - run: flowey.exe e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 + - name: determine clippy exclusions + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 1 + shell: bash + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 0 shell: bash - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip - run: flowey.exe e 17 flowey_lib_hvlite::download_lxutil 0 + run: flowey.exe e 15 flowey_lib_hvlite::download_lxutil 1 shell: bash - name: move lxutil.dll into its magic folder - run: flowey.exe e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + run: flowey.exe e 15 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - - name: inject cross env - run: flowey.exe e 17 flowey_lib_hvlite::init_cross_build 0 + - name: cargo clippy + run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 + - name: inject cross env + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 0 shell: bash - - name: run 'unit-tests' nextest tests - run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 0 + - name: inject cross env + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 4 shell: bash - - name: write results - run: flowey.exe e 17 flowey_lib_common::run_cargo_nextest_run 1 + - name: cargo build xtask + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 1 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 0 + - name: report built xtask + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 1 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 1 + - name: determine clippy exclusions + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::check_clippy 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 17 flowey_lib_common::publish_test_results 2 + - name: cargo clippy + run: flowey.exe e 15 flowey_lib_common::run_cargo_clippy 1 + shell: bash + - name: create cargo-nextest cache dir + run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 15 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 15 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + name: 🌼 Write to 'floweyvar2' - run: | - flowey.exe v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 15 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__3 - uses: actions/upload-artifact@v4 + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 with: - name: aarch64-windows-unit-tests-junit-xml - path: ${{ env.floweyvar1 }} - name: 'publish test results: aarch64-windows-unit-tests (JUnit XML)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: report test results to overall pipeline status - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: cargo-nextest' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey.exe v 15 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 15 flowey_lib_common::cache 2 shell: bash - - name: run doctests for aarch64-pc-windows-msvc - run: flowey.exe e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + - name: report cargo install persistent dir + run: flowey.exe e 15 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + shell: bash + - name: report $CARGO_HOME + run: flowey.exe e 15 flowey_lib_common::install_rust 2 + shell: bash + - name: installing cargo-nextest + run: flowey.exe e 15 flowey_lib_common::download_cargo_nextest 1 + shell: bash + - name: inject cross env + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 5 + shell: bash + - name: cargo build xtask + run: flowey.exe e 15 flowey_lib_common::run_cargo_build 2 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_build 2 + shell: bash + - name: report built xtask + run: flowey.exe e 15 flowey_lib_hvlite::build_xtask 2 + shell: bash + - name: determine unit test exclusions + run: flowey.exe e 15 flowey_lib_hvlite::build_nextest_unit_tests 0 + shell: bash + - name: inject cross env + run: flowey.exe e 15 flowey_lib_hvlite::init_cross_build 2 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 15 flowey_lib_hvlite::run_cargo_nextest_run 0 + shell: bash + - name: run 'unit-tests' nextest tests + run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 0 + shell: bash + - name: write results + run: flowey.exe e 15 flowey_lib_common::run_cargo_nextest_run 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 15 flowey_lib_common::publish_test_results 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 15 flowey_lib_common::publish_test_results 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 15 flowey_lib_common::publish_test_results 2 + shell: bash + - run: | + flowey.exe v 15 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 15 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__3 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-unit-tests-junit-xml + path: ${{ env.floweyvar1 }} + name: 'publish test results: x64-windows-unit-tests (JUnit XML)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: report test results to overall pipeline status + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + shell: bash + - name: run doctests for x86_64-pc-windows-msvc + run: flowey.exe e 15 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 17 flowey_lib_common::cache 3 + run: flowey.exe e 15 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 17 flowey_lib_common::cache 7 + run: flowey.exe e 15 flowey_lib_common::cache 7 shell: bash - job18: - name: run vmm-tests [x64-windows-intel] + job16: + name: clippy [linux, macos], unit tests [x64-linux] runs-on: - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Win-Pool-Intel-WestUS3 - - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB permissions: contents: read id-token: write - needs: - - job12 - - job12 - - job10 - - job8 - - job8 - - job8 if: github.event.pull_request.draft == false steps: - - name: 🌼πŸ₯Ύ Download bootstrapped flowey - uses: actions/download-artifact@v4 - with: - name: _internal-flowey-bootstrap-x86_64-windows-uid-10 - path: ${{ runner.temp }}/bootstrapped-flowey - - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi - uses: actions/download-artifact@v4 - with: - name: x64-guest_test_uefi - path: ${{ runner.temp }}/used_artifacts/x64-guest_test_uefi/ - - name: πŸŒΌπŸ“¦ Download x64-linux-musl-pipette - uses: actions/download-artifact@v4 - with: - name: x64-linux-musl-pipette - path: ${{ runner.temp }}/used_artifacts/x64-linux-musl-pipette/ - - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm - uses: actions/download-artifact@v4 - with: - name: x64-openhcl-igvm - path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm/ - - name: πŸŒΌπŸ“¦ Download x64-windows-openvmm - uses: actions/download-artifact@v4 - with: - name: x64-windows-openvmm - path: ${{ runner.temp }}/used_artifacts/x64-windows-openvmm/ - - name: πŸŒΌπŸ“¦ Download x64-windows-pipette - uses: actions/download-artifact@v4 - with: - name: x64-windows-pipette - path: ${{ runner.temp }}/used_artifacts/x64-windows-pipette/ - - name: πŸŒΌπŸ“¦ Download x64-windows-vmm-tests-archive - uses: actions/download-artifact@v4 + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 with: - name: x64-windows-vmm-tests-archive - path: ${{ runner.temp }}/used_artifacts/x64-windows-vmm-tests-archive/ + fetch-depth: 1 + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci + working-directory: flowey_bootstrap + shell: bash + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey + working-directory: flowey_bootstrap + shell: bash + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap + shell: bash + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + 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.exe + chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey.exe v 18 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 16 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 16 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin + cat <<'EOF' | flowey v 16 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 18 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 18 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 18 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 18 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 18 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 18 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - - name: create cargo-nextest cache dir - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 + - name: install Rust + run: flowey e 16 flowey_lib_common::install_rust 0 + shell: bash + - name: detect active toolchain + run: flowey e 16 flowey_lib_common::install_rust 1 + shell: bash + - name: report common cargo flags + run: 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: create gh-release-download cache dir + run: flowey e 16 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 4 + run: flowey e 16 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey v 16 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar8' + name: 🌼 Write to 'floweyvar4' - run: | - flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey v 16 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar9' + name: 🌼 Write to 'floweyvar5' - id: flowey_lib_common__cache__5 uses: actions/cache@v4 with: - key: ${{ env.floweyvar8 }} - path: ${{ env.floweyvar9 }} - name: 'Restore cache: cargo-nextest' + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} + name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 16 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 6 + run: flowey e 16 flowey_lib_common::cache 6 shell: bash - - name: installing cargo-nextest - run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 + - name: download artifacts from github releases + run: flowey e 16 flowey_lib_common::download_gh_release 1 shell: bash - - name: create gh-release-download cache dir - run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey e 16 flowey_lib_hvlite::download_lxutil 0 shell: bash - - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 8 + - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip + run: flowey e 16 flowey_lib_hvlite::download_lxutil 1 + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 16 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey v 16 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash - name: 🌼 Write to 'floweyvar10' + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 18 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey v 16 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar11' - - id: flowey_lib_common__cache__9 - uses: actions/cache@v4 + name: 🌼 Write to 'floweyvar6' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 with: - key: ${{ env.floweyvar10 }} - path: ${{ env.floweyvar11 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 10 + fetch-depth: '0' + path: repo0 + persist-credentials: ${{ env.floweyvar6 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 16 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 16 flowey_lib_common::git_checkout 3 shell: bash - - name: download artifacts from github releases - run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 + - name: resolve OpenVMM repo requests + run: flowey e 16 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey e 16 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: move lxutil.dll into its magic folder + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 16 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: unpack protoc + run: flowey e 16 flowey_lib_common::download_protoc 0 + shell: bash + - name: symlink protoc + run: flowey e 16 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: inject cross env + run: flowey e 16 flowey_lib_hvlite::init_cross_build 1 + shell: bash + - name: inject cross env + run: flowey e 16 flowey_lib_hvlite::init_cross_build 6 + shell: bash + - name: cargo build xtask + run: flowey e 16 flowey_lib_common::run_cargo_build 3 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 2 + shell: bash + - name: split debug symbols + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 0 + shell: bash + - name: reporting split debug info + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 3 + shell: bash + - name: report built xtask + run: flowey e 16 flowey_lib_hvlite::build_xtask 1 + shell: bash + - name: determine clippy exclusions + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 2 + shell: bash + - name: cargo clippy + run: flowey e 16 flowey_lib_common::run_cargo_clippy 1 + shell: bash + - name: inject cross env + run: flowey e 16 flowey_lib_hvlite::init_cross_build 0 + shell: bash + - name: inject cross env + run: flowey e 16 flowey_lib_hvlite::init_cross_build 5 + shell: bash + - name: cargo build xtask + run: flowey e 16 flowey_lib_common::run_cargo_build 2 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 0 + shell: bash + - name: split debug symbols + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 3 + shell: bash + - name: reporting split debug info + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 1 + shell: bash + - name: report built xtask + run: flowey e 16 flowey_lib_hvlite::build_xtask 0 + shell: bash + - name: determine clippy exclusions + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 1 + shell: bash + - name: cargo clippy + run: flowey e 16 flowey_lib_common::run_cargo_clippy 0 + shell: bash + - name: inject cross env + run: flowey e 16 flowey_lib_hvlite::init_cross_build 3 + shell: bash + - name: cargo build xtask + run: flowey e 16 flowey_lib_common::run_cargo_build 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 4 + shell: bash + - name: split debug symbols + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 1 + shell: bash + - name: reporting split debug info + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 5 + shell: bash + - name: report built xtask + run: flowey e 16 flowey_lib_hvlite::build_xtask 2 + shell: bash + - name: determine clippy exclusions + run: flowey e 16 flowey_lib_hvlite::_jobs::check_clippy 0 + shell: bash + - name: cargo clippy + run: flowey e 16 flowey_lib_common::run_cargo_clippy 2 + shell: bash + - name: create cargo-nextest cache dir + run: flowey e 16 flowey_lib_common::download_cargo_nextest 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 16 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 16 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 16 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: cargo-nextest' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 16 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 16 flowey_lib_common::cache 2 + shell: bash + - name: report cargo install persistent dir + run: flowey e 16 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + shell: bash + - name: report $CARGO_HOME + run: flowey e 16 flowey_lib_common::install_rust 2 + shell: bash + - name: installing cargo-nextest + run: flowey e 16 flowey_lib_common::download_cargo_nextest 1 + shell: bash + - name: inject cross env + run: flowey e 16 flowey_lib_hvlite::init_cross_build 4 + shell: bash + - name: cargo build xtask + run: flowey e 16 flowey_lib_common::run_cargo_build 1 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 6 + shell: bash + - name: split debug symbols + run: flowey e 16 flowey_lib_hvlite::run_split_debug_info 2 + shell: bash + - name: reporting split debug info + run: flowey e 16 flowey_lib_hvlite::run_cargo_build 7 + shell: bash + - name: report built xtask + run: flowey e 16 flowey_lib_hvlite::build_xtask 3 + shell: bash + - name: determine unit test exclusions + run: flowey e 16 flowey_lib_hvlite::build_nextest_unit_tests 0 + shell: bash + - name: inject cross env + run: flowey e 16 flowey_lib_hvlite::init_cross_build 2 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_hvlite::run_cargo_nextest_run 0 + shell: bash + - name: run 'unit-tests' nextest tests + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 0 + shell: bash + - name: write results + run: flowey e 16 flowey_lib_common::run_cargo_nextest_run 1 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_common::publish_test_results 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_common::publish_test_results 1 + shell: bash + - name: 🌼 write_into Var + run: flowey e 16 flowey_lib_common::publish_test_results 2 + shell: bash + - run: | + flowey v 16 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 16 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__3 + uses: actions/upload-artifact@v4 + with: + name: x64-linux-unit-tests-junit-xml + path: ${{ env.floweyvar1 }} + name: 'publish test results: x64-linux-unit-tests (JUnit XML)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: report test results to overall pipeline status + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + shell: bash + - name: run doctests for x86_64-unknown-linux-gnu + run: flowey e 16 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + shell: bash + - name: 'validate cache entry: cargo-nextest' + run: flowey e 16 flowey_lib_common::cache 3 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 16 flowey_lib_common::cache 7 + shell: bash + job17: + name: clippy [linux-musl, misc nostd], unit tests [x64-linux-musl] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB + permissions: + contents: read + id-token: write + if: github.event.pull_request.draft == false + steps: + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci + working-directory: flowey_bootstrap + shell: bash + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey + working-directory: flowey_bootstrap + shell: bash + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap + shell: bash + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + 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 17 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 17 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 17 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + shell: bash + - name: install Rust + run: flowey e 17 flowey_lib_common::install_rust 0 + shell: bash + - name: detect active toolchain + run: flowey e 17 flowey_lib_common::install_rust 1 + shell: bash + - name: report common cargo flags + run: flowey e 17 flowey_lib_common::cfg_cargo_common_flags 0 + shell: bash + - name: check if hvlite needs to be cloned + run: flowey e 17 flowey_lib_common::git_checkout 0 + shell: bash + - run: | + flowey v 17 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 17 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar6' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '0' + path: repo0 + persist-credentials: ${{ env.floweyvar6 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey v 17 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey e 17 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey e 17 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey e 17 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: checking if packages need to be installed + run: flowey e 17 flowey_lib_common::install_dist_pkg 0 + shell: bash + - name: installing packages + run: flowey e 17 flowey_lib_common::install_dist_pkg 1 + shell: bash + - name: create gh-release-download cache dir + run: flowey e 17 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 17 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey v 17 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + - run: | + flowey v 17 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey v 17 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 17 flowey_lib_common::cache 6 + shell: bash + - name: download artifacts from github releases + run: flowey e 17 flowey_lib_common::download_gh_release 1 + shell: bash + - name: unpack openvmm-deps archive + run: flowey e 17 flowey_lib_hvlite::download_openvmm_deps 0 + shell: bash + - name: extract X64 sysroot.tar.gz + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 1 + shell: bash + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey e 17 flowey_lib_hvlite::download_lxutil 0 + shell: bash + - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip + run: flowey e 17 flowey_lib_hvlite::download_lxutil 1 + shell: bash + - name: move lxutil.dll into its magic folder + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 17 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: unpack protoc + run: flowey e 17 flowey_lib_common::download_protoc 0 + shell: bash + - name: symlink protoc + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: inject cross env + run: flowey e 17 flowey_lib_hvlite::init_cross_build 4 + shell: bash + - name: inject cross env + run: flowey e 17 flowey_lib_hvlite::init_cross_build 2 + shell: bash + - name: cargo build xtask + run: flowey e 17 flowey_lib_common::run_cargo_build 1 + shell: bash + - name: 🌼 write_into Var + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 0 + shell: bash + - name: split debug symbols + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 2 + shell: bash + - name: reporting split debug info + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 1 + shell: bash + - name: report built xtask + run: flowey e 17 flowey_lib_hvlite::build_xtask 0 + shell: bash + - name: determine clippy exclusions + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 1 + shell: bash + - name: cargo clippy + run: flowey e 17 flowey_lib_common::run_cargo_clippy 0 + shell: bash + - name: cargo clippy + run: flowey e 17 flowey_lib_common::run_cargo_clippy 2 + shell: bash + - name: cargo clippy + run: flowey e 17 flowey_lib_common::run_cargo_clippy 1 + shell: bash + - name: extract Aarch64 sysroot.tar.gz + run: flowey e 17 flowey_lib_hvlite::init_openvmm_magicpath_openhcl_sysroot 0 + shell: bash + - name: inject cross env + run: flowey e 17 flowey_lib_hvlite::init_cross_build 0 + shell: bash + - name: cargo clippy + run: flowey e 17 flowey_lib_common::run_cargo_clippy 4 + shell: bash + - name: inject cross env + run: flowey e 17 flowey_lib_hvlite::init_cross_build 3 + shell: bash + - name: cargo build xtask + run: flowey e 17 flowey_lib_common::run_cargo_build 2 + shell: bash + - name: 🌼 write_into Var + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 2 + shell: bash + - name: split debug symbols + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 0 + shell: bash + - name: reporting split debug info + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 3 + shell: bash + - name: report built xtask + run: flowey e 17 flowey_lib_hvlite::build_xtask 1 + shell: bash + - name: determine clippy exclusions + run: flowey e 17 flowey_lib_hvlite::_jobs::check_clippy 0 + shell: bash + - name: cargo clippy + run: flowey e 17 flowey_lib_common::run_cargo_clippy 3 + shell: bash + - name: cargo clippy + run: flowey e 17 flowey_lib_common::run_cargo_clippy 5 + shell: bash + - name: create cargo-nextest cache dir + run: flowey e 17 flowey_lib_common::download_cargo_nextest 0 + shell: bash + - name: Pre-processing cache vars + run: flowey e 17 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey v 17 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey v 17 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: cargo-nextest' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey v 17 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey e 17 flowey_lib_common::cache 2 + shell: bash + - name: report cargo install persistent dir + run: flowey e 17 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + shell: bash + - name: report $CARGO_HOME + run: flowey e 17 flowey_lib_common::install_rust 2 + shell: bash + - name: installing cargo-nextest + run: flowey e 17 flowey_lib_common::download_cargo_nextest 1 + shell: bash + - name: inject cross env + run: flowey e 17 flowey_lib_hvlite::init_cross_build 1 + shell: bash + - name: cargo build xtask + run: flowey e 17 flowey_lib_common::run_cargo_build 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 4 + shell: bash + - name: split debug symbols + run: flowey e 17 flowey_lib_hvlite::run_split_debug_info 1 + shell: bash + - name: reporting split debug info + run: flowey e 17 flowey_lib_hvlite::run_cargo_build 5 + shell: bash + - name: report built xtask + run: flowey e 17 flowey_lib_hvlite::build_xtask 2 + shell: bash + - name: determine unit test exclusions + run: flowey e 17 flowey_lib_hvlite::build_nextest_unit_tests 0 + shell: bash + - name: inject cross env + run: flowey e 17 flowey_lib_hvlite::init_cross_build 5 + shell: bash + - name: 🌼 write_into Var + run: flowey e 17 flowey_lib_hvlite::run_cargo_nextest_run 0 + shell: bash + - name: run 'unit-tests' nextest tests + run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 0 + shell: bash + - name: write results + run: flowey e 17 flowey_lib_common::run_cargo_nextest_run 1 + shell: bash + - name: 🌼 write_into Var + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 17 flowey_lib_common::publish_test_results 0 + shell: bash + - name: 🌼 write_into Var + run: flowey e 17 flowey_lib_common::publish_test_results 1 + shell: bash + - name: 🌼 write_into Var + run: flowey e 17 flowey_lib_common::publish_test_results 2 + shell: bash + - run: | + flowey v 17 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey v 17 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__3 + uses: actions/upload-artifact@v4 + with: + name: x64-linux-musl-unit-tests-junit-xml + path: ${{ env.floweyvar1 }} + name: 'publish test results: x64-linux-musl-unit-tests (JUnit XML)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: report test results to overall pipeline status + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + shell: bash + - name: run doctests for x86_64-unknown-linux-musl + run: flowey e 17 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + shell: bash + - name: 'validate cache entry: cargo-nextest' + run: flowey e 17 flowey_lib_common::cache 3 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey e 17 flowey_lib_common::cache 7 + shell: bash + job18: + name: unit tests [aarch64-windows] + runs-on: + - self-hosted + - Windows + - ARM64 + - Baremetal + permissions: + contents: read + id-token: write + if: github.event.pull_request.draft == false + steps: + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci + working-directory: flowey_bootstrap + shell: bash + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/aarch64-pc-windows-msvc/flowey-ci/flowey_hvlite.exe ./flowey_bootstrap_temp/flowey.exe + working-directory: flowey_bootstrap + shell: bash + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap + shell: bash + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + 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-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 18 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey.exe v 18 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + shell: bash + - name: report common cargo flags + run: flowey.exe e 18 flowey_lib_common::cfg_cargo_common_flags 0 + shell: bash + - name: create cargo-nextest cache dir + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 18 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + - run: | + flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar2 }} + path: ${{ env.floweyvar3 }} + name: 'Restore cache: cargo-nextest' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 18 flowey_lib_common::cache 2 + shell: bash + - name: report cargo install persistent dir + run: flowey.exe e 18 flowey_lib_common::cfg_persistent_dir_cargo_install 0 + shell: bash + - name: install Rust + run: flowey.exe e 18 flowey_lib_common::install_rust 0 + shell: bash + - name: detect active toolchain + run: flowey.exe e 18 flowey_lib_common::install_rust 1 + shell: bash + - name: report $CARGO_HOME + run: flowey.exe e 18 flowey_lib_common::install_rust 2 + shell: bash + - name: installing cargo-nextest + run: flowey.exe e 18 flowey_lib_common::download_cargo_nextest 1 + shell: bash + - name: check if hvlite needs to be cloned + run: flowey.exe e 18 flowey_lib_common::git_checkout 0 + shell: bash + - run: | + flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar6 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar6' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '0' + path: repo0 + persist-credentials: ${{ env.floweyvar6 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey.exe e 18 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 + shell: bash + - name: create gh-release-download cache dir + run: flowey.exe e 18 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 18 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey.exe v 18 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + - run: | + flowey.exe v 18 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar5 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar5' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar4 }} + path: ${{ env.floweyvar5 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey.exe v 18 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 18 flowey_lib_common::cache 6 + shell: bash + - name: download artifacts from github releases + run: flowey.exe e 18 flowey_lib_common::download_gh_release 1 + shell: bash + - name: unpack protoc + run: flowey.exe e 18 flowey_lib_common::download_protoc 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: symlink protoc + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 + shell: bash + - name: inject cross env + run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 1 + shell: bash + - name: cargo build xtask + run: flowey.exe e 18 flowey_lib_common::run_cargo_build 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_build 0 + shell: bash + - name: report built xtask + run: flowey.exe e 18 flowey_lib_hvlite::build_xtask 0 + shell: bash + - name: determine unit test exclusions + run: flowey.exe e 18 flowey_lib_hvlite::build_nextest_unit_tests 0 + shell: bash + - name: unpack Microsoft.WSL.LxUtil.AARCH64.zip + run: flowey.exe e 18 flowey_lib_hvlite::download_lxutil 0 + shell: bash + - name: move lxutil.dll into its magic folder + run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 + shell: bash + - name: inject cross env + run: flowey.exe e 18 flowey_lib_hvlite::init_cross_build 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 + shell: bash + - name: run 'unit-tests' nextest tests + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 + shell: bash + - name: write results + run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 + shell: bash + - run: | + flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__3 + uses: actions/upload-artifact@v4 + with: + name: aarch64-windows-unit-tests-junit-xml + path: ${{ env.floweyvar1 }} + name: 'publish test results: aarch64-windows-unit-tests (JUnit XML)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: report test results to overall pipeline status + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_nextest_unit_tests 1 + shell: bash + - name: run doctests for aarch64-pc-windows-msvc + run: flowey.exe e 18 flowey_lib_hvlite::_jobs::build_and_run_doc_tests 0 + shell: bash + - name: 'validate cache entry: cargo-nextest' + run: flowey.exe e 18 flowey_lib_common::cache 3 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey.exe e 18 flowey_lib_common::cache 7 + shell: bash + job19: + name: run vmm-tests [x64-windows-intel] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Win-Pool-Intel-WestUS3 + - 1ES.ImageOverride=HvLite-CI-Win-Ge-Image-256GB + permissions: + contents: read + id-token: write + needs: + - job12 + - job12 + - job10 + - job8 + - job8 + - job8 + if: github.event.pull_request.draft == false + steps: + - name: 🌼πŸ₯Ύ Download bootstrapped flowey + uses: actions/download-artifact@v4 + with: + name: _internal-flowey-bootstrap-x86_64-windows-uid-11 + path: ${{ runner.temp }}/bootstrapped-flowey + - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi + uses: actions/download-artifact@v4 + with: + name: x64-guest_test_uefi + path: ${{ runner.temp }}/used_artifacts/x64-guest_test_uefi/ + - name: πŸŒΌπŸ“¦ Download x64-linux-musl-pipette + uses: actions/download-artifact@v4 + with: + name: x64-linux-musl-pipette + path: ${{ runner.temp }}/used_artifacts/x64-linux-musl-pipette/ + - name: πŸŒΌπŸ“¦ Download x64-openhcl-igvm + uses: actions/download-artifact@v4 + with: + name: x64-openhcl-igvm + path: ${{ runner.temp }}/used_artifacts/x64-openhcl-igvm/ + - name: πŸŒΌπŸ“¦ Download x64-windows-openvmm + uses: actions/download-artifact@v4 + with: + name: x64-windows-openvmm + path: ${{ runner.temp }}/used_artifacts/x64-windows-openvmm/ + - name: πŸŒΌπŸ“¦ Download x64-windows-pipette + uses: actions/download-artifact@v4 + with: + name: x64-windows-pipette + path: ${{ runner.temp }}/used_artifacts/x64-windows-pipette/ + - name: πŸŒΌπŸ“¦ Download x64-windows-vmm-tests-archive + uses: actions/download-artifact@v4 + with: + name: x64-windows-vmm-tests-archive + path: ${{ runner.temp }}/used_artifacts/x64-windows-vmm-tests-archive/ + - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $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/bootstrapped-flowey/flowey.exe + + echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + shell: bash + - name: create cargo-nextest cache dir + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 19 flowey_lib_common::cache 4 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar8' + - run: | + flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar9' + - id: flowey_lib_common__cache__5 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar8 }} + path: ${{ env.floweyvar9 }} + name: 'Restore cache: cargo-nextest' + - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} + shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 19 flowey_lib_common::cache 6 + shell: bash + - name: installing cargo-nextest + run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 + shell: bash + - name: create gh-release-download cache dir + run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 19 flowey_lib_common::cache 8 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar10' + - run: | + flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar11' + - id: flowey_lib_common__cache__9 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar10 }} + path: ${{ env.floweyvar11 }} + name: 'Restore cache: gh-release-download' + - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} + shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 19 flowey_lib_common::cache 10 + shell: bash + - name: download artifacts from github releases + run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 + shell: bash + - name: unpack mu_msvm package (x64) + run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 + shell: bash + - name: check if hvlite needs to be cloned + run: flowey.exe e 19 flowey_lib_common::git_checkout 0 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar5' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__git_checkout__1 + uses: actions/checkout@v4 + with: + fetch-depth: '0' + path: repo0 + persist-credentials: ${{ env.floweyvar5 }} + name: checkout repo hvlite + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - run: ${{ github.workspace }} + shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.workspace' + - name: report cloned repo directories + run: flowey.exe e 19 flowey_lib_common::git_checkout 3 + shell: bash + - name: resolve OpenVMM repo requests + run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + shell: bash + - name: report openvmm magicpath dir + run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + shell: bash + - name: move MSVM.fd into its magic folder + run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 + shell: bash + - name: creating new test content dir + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + shell: bash + - name: resolve openvmm artifact + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 + shell: bash + - name: resolve pipette artifact + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 + shell: bash + - name: resolve pipette artifact + run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 + shell: bash + - name: resolve guest_test_uefi artifact + run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + shell: bash + - name: resolve OpenHCL igvm artifact + run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + shell: bash + - name: create azcopy cache dir + run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 + shell: bash + - name: Pre-processing cache vars + run: flowey.exe e 19 flowey_lib_common::cache 0 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar6' + - run: | + flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar7' + - id: flowey_lib_common__cache__1 + uses: actions/cache@v4 + with: + key: ${{ env.floweyvar6 }} + path: ${{ env.floweyvar7 }} + name: 'Restore cache: azcopy' + - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} + shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' + - name: map Github cache-hit to flowey + run: flowey.exe e 19 flowey_lib_common::cache 2 + shell: bash + - name: installing azcopy + run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 + shell: bash + - name: calculating required VMM tests disk images + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + shell: bash + - name: downloading VMM test disk images + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + shell: bash + - name: report downloaded VMM test disk images + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + shell: bash + - name: unpack openvmm-deps archive + run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 + shell: bash + - name: setting up vmm_tests env + run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 + shell: bash + - name: resolve vmm tests archive artifact + run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + shell: bash + - name: run 'vmm_tests' nextest tests + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 + shell: bash + - name: write results + run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar2' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__6 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-intel-vmm-tests-crash-dumps + path: ${{ env.floweyvar2 }} + name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar3' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__9 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-intel-vmm-tests-logs + path: ${{ env.floweyvar3 }} + name: 'publish test results: logs (x64-windows-intel-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar4' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__12 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-intel-vmm-tests-openhcl-dumps + path: ${{ env.floweyvar4 }} + name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 + shell: bash + - name: 🌼 write_into Var + run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 + shell: bash + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + shell: bash + name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' + - run: | + flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + shell: bash + name: 🌼 Write to 'floweyvar1' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - id: flowey_lib_common__publish_test_results__3 + uses: actions/upload-artifact@v4 + with: + name: x64-windows-intel-vmm-tests-junit-xml + path: ${{ env.floweyvar1 }} + name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' + if: ${{ fromJSON(env.FLOWEY_CONDITION) }} + - name: report test results to overall pipeline status + run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + shell: bash + - name: 'validate cache entry: gh-release-download' + run: flowey.exe e 19 flowey_lib_common::cache 11 + shell: bash + - name: 'validate cache entry: azcopy' + run: flowey.exe e 19 flowey_lib_common::cache 3 + shell: bash + - name: 'validate cache entry: cargo-nextest' + run: flowey.exe e 19 flowey_lib_common::cache 7 + shell: bash + job2: + name: build and check docs [x64-linux] + runs-on: + - self-hosted + - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 + - 1ES.ImageOverride=MMSUbuntu22.04-256GB + permissions: + contents: read + id-token: write + if: github.event.pull_request.draft == false + steps: + - run: echo "injected!" + name: 🌼πŸ₯Ύ Bootstrap flowey + shell: bash + - 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.82.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.82.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.82.0 + echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH + if: runner.os == 'Windows' && runner.arch == 'ARM64' + name: rustup (Windows ARM64) + shell: bash + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + path: flowey_bootstrap + - name: Build flowey + run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci + working-directory: flowey_bootstrap + shell: bash + - name: Stage flowey artifact + run: | + mkdir ./flowey_bootstrap_temp + mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml + mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey + working-directory: flowey_bootstrap + shell: bash + - name: Copy flowey artifact + run: | + OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') + mkdir -p $OutDirNormal + cp -r ./flowey_bootstrap_temp/* $OutDirNormal + working-directory: flowey_bootstrap + shell: bash + - name: Cleanup staged flowey artifact + run: rm -rf ./flowey_bootstrap_temp + 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: unpack mu_msvm package (x64) - run: flowey.exe e 18 flowey_lib_hvlite::download_uefi_mu_msvm 0 + - 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 2 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + + cat <<'EOF' | flowey v 2 'param0' --update-from-stdin + ${{ inputs.param0 != '' && inputs.param0 || 'false' }} + EOF + mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" + echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 18 flowey_lib_common::git_checkout 0 + run: flowey e 2 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 18 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar5' + name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: fetch-depth: '0' path: repo0 - persist-credentials: ${{ env.floweyvar5 }} + persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 18 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 18 flowey_lib_common::git_checkout 3 + run: flowey e 2 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 18 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey.exe e 18 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: move MSVM.fd into its magic folder - run: flowey.exe e 18 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 0 - shell: bash - - name: creating new test content dir - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 - shell: bash - - name: resolve openvmm artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_openvmm::resolve 0 - shell: bash - - name: resolve pipette artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 1 - shell: bash - - name: resolve pipette artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_pipette::resolve 0 - shell: bash - - name: resolve guest_test_uefi artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - - name: resolve OpenHCL igvm artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + - name: set '-Dwarnings' in .cargo/config.toml + run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 shell: bash - - name: create azcopy cache dir - run: flowey.exe e 18 flowey_lib_common::download_azcopy 0 + - name: create gh-release-download cache dir + run: flowey e 2 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 18 flowey_lib_common::cache 0 + run: flowey e 2 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 18 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar6' + name: 🌼 Write to 'floweyvar1' - run: | - flowey.exe v 18 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string shell: bash - name: 🌼 Write to 'floweyvar7' + name: 🌼 Write to 'floweyvar2' - id: flowey_lib_common__cache__1 uses: actions/cache@v4 with: - key: ${{ env.floweyvar6 }} - path: ${{ env.floweyvar7 }} - name: 'Restore cache: azcopy' + key: ${{ env.floweyvar1 }} + path: ${{ env.floweyvar2 }} + name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 18 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 18 flowey_lib_common::cache 2 - shell: bash - - name: installing azcopy - run: flowey.exe e 18 flowey_lib_common::download_azcopy 1 - shell: bash - - name: calculating required VMM tests disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 - shell: bash - - name: downloading VMM test disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 - shell: bash - - name: report downloaded VMM test disk images - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 - shell: bash - - name: unpack openvmm-deps archive - run: flowey.exe e 18 flowey_lib_hvlite::download_openvmm_deps 0 - shell: bash - - name: setting up vmm_tests env - run: flowey.exe e 18 flowey_lib_hvlite::init_vmm_tests_env 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::run_cargo_nextest_run 1 - shell: bash - - name: resolve vmm tests archive artifact - run: flowey.exe e 18 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 - shell: bash - - name: run 'vmm_tests' nextest tests - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 0 - shell: bash - - name: write results - run: flowey.exe e 18 flowey_lib_common::run_cargo_nextest_run 1 - shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 4 + run: flowey e 2 flowey_lib_common::cache 2 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 5 + - name: download artifacts from github releases + run: flowey e 2 flowey_lib_common::download_gh_release 1 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: checking if packages need to be installed + run: flowey e 2 flowey_lib_common::install_dist_pkg 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + - name: installing packages + run: flowey e 2 flowey_lib_common::install_dist_pkg 1 shell: bash - name: 🌼 Write to 'floweyvar2' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__6 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-intel-vmm-tests-crash-dumps - path: ${{ env.floweyvar2 }} - name: 'publish test results: crash-dumps (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 7 + - name: unpack protoc + run: flowey e 2 flowey_lib_common::download_protoc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 8 + - name: report openvmm magicpath dir + run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: symlink protoc + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + - name: install Rust + run: flowey e 2 flowey_lib_common::install_rust 0 shell: bash - name: 🌼 Write to 'floweyvar3' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__9 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-intel-vmm-tests-logs - path: ${{ env.floweyvar3 }} - name: 'publish test results: logs (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 10 + - name: unpack Microsoft.WSL.LxUtil.x64.zip + run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 11 + - name: move lxutil.dll into its magic folder + run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + - name: detect active toolchain + run: flowey e 2 flowey_lib_common::install_rust 1 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + - name: report common cargo flags + run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 shell: bash - name: 🌼 Write to 'floweyvar4' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__12 - uses: actions/upload-artifact@v4 - with: - name: x64-windows-intel-vmm-tests-openhcl-dumps - path: ${{ env.floweyvar4 }} - name: 'publish test results: openhcl-dumps (x64-windows-intel-vmm-tests)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + - name: construct cargo doc command + run: flowey e 2 flowey_lib_common::run_cargo_doc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 0 + - name: document repo for target x86_64-unknown-linux-gnu + run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 shell: bash - - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 1 + - name: archive rustdoc dir + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 18 flowey_lib_common::publish_test_results 2 + run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 shell: bash - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + - name: copying rustdoc to artifact dir + run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey.exe v 18 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + - name: 'validate cache entry: gh-release-download' + run: flowey e 2 flowey_lib_common::cache 3 shell: bash - name: 🌼 Write to 'floweyvar1' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__publish_test_results__3 + - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc uses: actions/upload-artifact@v4 with: - name: x64-windows-intel-vmm-tests-junit-xml - path: ${{ env.floweyvar1 }} - name: 'publish test results: x64-windows-intel-vmm-tests (JUnit XML)' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - name: report test results to overall pipeline status - run: flowey.exe e 18 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 18 flowey_lib_common::cache 11 - shell: bash - - name: 'validate cache entry: azcopy' - run: flowey.exe e 18 flowey_lib_common::cache 3 - shell: bash - - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 18 flowey_lib_common::cache 7 - shell: bash - job19: + name: x64-linux-rustdoc + path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ + job20: name: run vmm-tests [x64-windows-amd] runs-on: - self-hosted @@ -3791,7 +4559,7 @@ jobs: - name: 🌼πŸ₯Ύ Download bootstrapped flowey uses: actions/download-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-windows-uid-10 + name: _internal-flowey-bootstrap-x86_64-windows-uid-11 path: ${{ runner.temp }}/bootstrapped-flowey - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi uses: actions/download-artifact@v4 @@ -3834,31 +4602,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 19 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 19 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 20 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 19 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 20 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 19 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 19 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 19 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 19 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 19 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 19 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-guest_test_uefi" | flowey.exe v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-linux-musl-pipette" | flowey.exe v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-openhcl-igvm" | flowey.exe v 20 'artifact_use_from_x64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-openvmm" | flowey.exe v 20 'artifact_use_from_x64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-pipette" | flowey.exe v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\x64-windows-vmm-tests-archive" | flowey.exe v 20 'artifact_use_from_x64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 4 + run: flowey.exe e 20 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 19 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -3868,26 +4636,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 6 + run: flowey.exe e 20 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 19 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 20 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 19 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 20 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 8 + run: flowey.exe e 20 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 19 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -3897,26 +4665,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 10 + run: flowey.exe e 20 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 19 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 20 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey.exe e 19 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 19 flowey_lib_common::git_checkout 0 + run: flowey.exe e 20 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -3929,53 +4697,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 19 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 19 flowey_lib_common::git_checkout 3 + run: flowey.exe e 20 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 19 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 19 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 19 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 19 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 20 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 19 flowey_lib_common::cache 0 + run: flowey.exe e 20 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 19 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -3985,56 +4753,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 19 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 19 flowey_lib_common::cache 2 + run: flowey.exe e 20 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 19 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 20 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 19 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 20 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 19 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 20 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 19 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 19 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 20 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4046,17 +4814,17 @@ jobs: name: 'publish test results: crash-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4068,17 +4836,17 @@ jobs: name: 'publish test results: logs (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4090,23 +4858,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-windows-amd-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 19 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 20 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 19 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4118,228 +4886,18 @@ jobs: name: 'publish test results: x64-windows-amd-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 19 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 19 flowey_lib_common::cache 11 + run: flowey.exe e 20 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 19 flowey_lib_common::cache 3 + run: flowey.exe e 20 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 19 flowey_lib_common::cache 7 - shell: bash - job2: - name: build and check docs [x64-linux] - runs-on: - - self-hosted - - 1ES.Pool=OpenVMM-GitHub-Linux-Pool-WestUS3 - - 1ES.ImageOverride=MMSUbuntu22.04-256GB - permissions: - contents: read - id-token: write - if: github.event.pull_request.draft == false - steps: - - run: echo "injected!" - name: 🌼πŸ₯Ύ Bootstrap flowey - shell: bash - - 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.82.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.82.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.82.0 - echo "$USERPROFILE\\.cargo\\bin" >> $GITHUB_PATH - if: runner.os == 'Windows' && runner.arch == 'ARM64' - name: rustup (Windows ARM64) - shell: bash - - uses: actions/checkout@v4 - with: - fetch-depth: 1 - path: flowey_bootstrap - - name: Build flowey - run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci - working-directory: flowey_bootstrap - shell: bash - - name: Stage flowey artifact - run: | - mkdir ./flowey_bootstrap_temp - mv ./.github/workflows/openvmm-pr.yaml ./flowey_bootstrap_temp/pipeline.yaml - mv target/x86_64-unknown-linux-gnu/flowey-ci/flowey_hvlite ./flowey_bootstrap_temp/flowey - working-directory: flowey_bootstrap - shell: bash - - name: Copy flowey artifact - run: | - OutDirNormal=$(echo "${{ runner.temp }}/bootstrapped-flowey" | sed -e 's|\\|\/|g' -e 's|^\([A-Za-z]\)\:/\(.*\)|/\L\1\E/\2|') - mkdir -p $OutDirNormal - cp -r ./flowey_bootstrap_temp/* $OutDirNormal - working-directory: flowey_bootstrap - shell: bash - - name: Cleanup staged flowey artifact - run: rm -rf ./flowey_bootstrap_temp - 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 2 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 2 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - - cat <<'EOF' | flowey v 2 'param0' --update-from-stdin - ${{ inputs.param0 != '' && inputs.param0 || 'false' }} - EOF - mkdir -p "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" - echo "$AgentTempDirNormal/publish_artifacts/x64-linux-rustdoc" | flowey v 2 'artifact_publish_from_x64-linux-rustdoc' --update-from-stdin --is-raw-string - shell: bash - - name: check if hvlite needs to be cloned - run: flowey e 2 flowey_lib_common::git_checkout 0 - shell: bash - - run: | - flowey v 2 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION - shell: bash - name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - - run: | - flowey v 2 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar3 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar3' - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - id: flowey_lib_common__git_checkout__1 - uses: actions/checkout@v4 - with: - fetch-depth: '0' - path: repo0 - persist-credentials: ${{ env.floweyvar3 }} - name: checkout repo hvlite - if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - - run: ${{ github.workspace }} - shell: flowey v 2 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.workspace' - - name: report cloned repo directories - run: flowey e 2 flowey_lib_common::git_checkout 3 - shell: bash - - name: resolve OpenVMM repo requests - run: flowey e 2 flowey_lib_hvlite::git_checkout_openvmm_repo 0 - shell: bash - - name: set '-Dwarnings' in .cargo/config.toml - run: flowey e 2 flowey_lib_hvlite::init_openvmm_cargo_config_deny_warnings 0 - shell: bash - - name: create gh-release-download cache dir - run: flowey e 2 flowey_lib_common::download_gh_release 0 - shell: bash - - name: Pre-processing cache vars - run: flowey e 2 flowey_lib_common::cache 0 - shell: bash - - run: | - flowey v 2 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar1 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar1' - - run: | - flowey v 2 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar2 --is-raw-string - shell: bash - name: 🌼 Write to 'floweyvar2' - - id: flowey_lib_common__cache__1 - uses: actions/cache@v4 - with: - key: ${{ env.floweyvar1 }} - path: ${{ env.floweyvar2 }} - name: 'Restore cache: gh-release-download' - - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 2 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - - name: map Github cache-hit to flowey - run: flowey e 2 flowey_lib_common::cache 2 - shell: bash - - name: download artifacts from github releases - run: flowey e 2 flowey_lib_common::download_gh_release 1 - shell: bash - - name: checking if packages need to be installed - run: flowey e 2 flowey_lib_common::install_dist_pkg 0 - shell: bash - - name: installing packages - run: flowey e 2 flowey_lib_common::install_dist_pkg 1 - shell: bash - - name: unpack protoc - run: flowey e 2 flowey_lib_common::download_protoc 0 - shell: bash - - name: report openvmm magicpath dir - run: flowey e 2 flowey_lib_hvlite::cfg_openvmm_magicpath 0 - shell: bash - - name: symlink protoc - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_protoc 0 - shell: bash - - name: install Rust - run: flowey e 2 flowey_lib_common::install_rust 0 - shell: bash - - name: unpack Microsoft.WSL.LxUtil.x64.zip - run: flowey e 2 flowey_lib_hvlite::download_lxutil 0 - shell: bash - - name: move lxutil.dll into its magic folder - run: flowey e 2 flowey_lib_hvlite::init_openvmm_magicpath_lxutil 0 - shell: bash - - name: detect active toolchain - run: flowey e 2 flowey_lib_common::install_rust 1 - shell: bash - - name: report common cargo flags - run: flowey e 2 flowey_lib_common::cfg_cargo_common_flags 0 - shell: bash - - name: construct cargo doc command - run: flowey e 2 flowey_lib_common::run_cargo_doc 0 - shell: bash - - name: document repo for target x86_64-unknown-linux-gnu - run: flowey e 2 flowey_lib_hvlite::build_rustdoc 0 + run: flowey.exe e 20 flowey_lib_common::cache 7 shell: bash - - name: archive rustdoc dir - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 0 - shell: bash - - name: 🌼 write_into Var - run: flowey e 2 flowey_lib_hvlite::artifact_rustdoc::publish 1 - shell: bash - - name: copying rustdoc to artifact dir - run: flowey e 2 flowey_lib_common::copy_to_artifact_dir 0 - shell: bash - - name: 'validate cache entry: gh-release-download' - run: flowey e 2 flowey_lib_common::cache 3 - shell: bash - - name: πŸŒΌπŸ“¦ Publish x64-linux-rustdoc - uses: actions/upload-artifact@v4 - with: - name: x64-linux-rustdoc - path: ${{ runner.temp }}/publish_artifacts/x64-linux-rustdoc/ - job20: + job21: name: run vmm-tests [x64-linux] runs-on: - self-hosted @@ -4359,7 +4917,7 @@ jobs: - name: 🌼πŸ₯Ύ Download bootstrapped flowey uses: actions/download-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + name: _internal-flowey-bootstrap-x86_64-linux-uid-7 path: ${{ runner.temp }}/bootstrapped-flowey - name: πŸŒΌπŸ“¦ Download x64-guest_test_uefi uses: actions/download-artifact@v4 @@ -4397,33 +4955,33 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 20 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 20 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 21 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 20 'param0' --update-from-stdin + cat <<'EOF' | flowey v 21 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 20 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 20 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 20 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 20 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string - echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 20 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-guest_test_uefi" | flowey v 21 'artifact_use_from_x64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-musl-pipette" | flowey v 21 'artifact_use_from_x64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-openvmm" | flowey v 21 'artifact_use_from_x64-linux-openvmm' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-linux-vmm-tests-archive" | flowey v 21 'artifact_use_from_x64-linux-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "$AgentTempDirNormal/used_artifacts/x64-windows-pipette" | flowey v 21 'artifact_use_from_x64-windows-pipette' --update-from-stdin --is-raw-string shell: bash - name: ensure /dev/kvm is accessible - run: flowey e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: create cargo-nextest cache dir - run: flowey e 20 flowey_lib_common::download_cargo_nextest 0 + run: flowey e 21 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey e 20 flowey_lib_common::cache 4 + run: flowey e 21 flowey_lib_common::cache 4 shell: bash - run: | - flowey v 20 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey v 20 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4433,32 +4991,32 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey v 20 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 20 flowey_lib_common::cache 6 + run: flowey e 21 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey e 20 flowey_lib_common::download_cargo_nextest 1 + run: flowey e 21 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: checking if packages need to be installed - run: flowey e 20 flowey_lib_common::install_dist_pkg 0 + run: flowey e 21 flowey_lib_common::install_dist_pkg 0 shell: bash - name: installing packages - run: flowey e 20 flowey_lib_common::install_dist_pkg 1 + run: flowey e 21 flowey_lib_common::install_dist_pkg 1 shell: bash - name: create gh-release-download cache dir - run: flowey e 20 flowey_lib_common::download_gh_release 0 + run: flowey e 21 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey e 20 flowey_lib_common::cache 8 + run: flowey e 21 flowey_lib_common::cache 8 shell: bash - run: | - flowey v 20 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey v 20 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4468,26 +5026,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey v 20 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 20 flowey_lib_common::cache 10 + run: flowey e 21 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey e 20 flowey_lib_common::download_gh_release 1 + run: flowey e 21 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (x64) - run: flowey e 20 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey e 20 flowey_lib_common::git_checkout 0 + run: flowey e 21 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 20 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4500,50 +5058,50 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 20 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 20 flowey_lib_common::git_checkout 3 + run: flowey e 21 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 20 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey e 20 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey e 20 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey e 20 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey e 20 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey e 20 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey e 20 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey e 20 flowey_lib_common::download_azcopy 0 + run: flowey e 21 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey e 20 flowey_lib_common::cache 0 + run: flowey e 21 flowey_lib_common::cache 0 shell: bash - run: | - flowey v 20 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey v 20 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4553,56 +5111,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey v 20 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey e 20 flowey_lib_common::cache 2 + run: flowey e 21 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey e 20 flowey_lib_common::download_azcopy 1 + run: flowey e 21 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey e 20 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey e 20 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey e 21 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey e 20 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey e 21 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey e 20 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 + run: flowey e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 1 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey e 20 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey e 20 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey e 21 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 4 + run: flowey e 21 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 5 + run: flowey e 21 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey v 20 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4614,17 +5172,17 @@ jobs: name: 'publish test results: crash-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 7 + run: flowey e 21 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 8 + run: flowey e 21 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey v 20 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4636,17 +5194,17 @@ jobs: name: 'publish test results: logs (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 10 + run: flowey e 21 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 11 + run: flowey e 21 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey v 20 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4658,23 +5216,23 @@ jobs: name: 'publish test results: openhcl-dumps (x64-linux-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 0 + run: flowey e 21 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 1 + run: flowey e 21 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey e 20 flowey_lib_common::publish_test_results 2 + run: flowey e 21 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey v 20 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 20 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4686,18 +5244,18 @@ jobs: name: 'publish test results: x64-linux-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey e 20 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey e 20 flowey_lib_common::cache 11 + run: flowey e 21 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey e 20 flowey_lib_common::cache 3 + run: flowey e 21 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey e 20 flowey_lib_common::cache 7 + run: flowey e 21 flowey_lib_common::cache 7 shell: bash - job21: + job22: name: run vmm-tests [aarch64-windows] runs-on: - self-hosted @@ -4719,7 +5277,7 @@ jobs: - name: 🌼πŸ₯Ύ Download bootstrapped flowey uses: actions/download-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-windows-uid-12 + name: _internal-flowey-bootstrap-x86_64-windows-uid-13 path: ${{ runner.temp }}/bootstrapped-flowey - name: πŸŒΌπŸ“¦ Download aarch64-guest_test_uefi uses: actions/download-artifact@v4 @@ -4762,31 +5320,31 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey.exe - echo '"debug"' | flowey.exe v 21 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey.exe v 21 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey.exe v 22 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey.exe v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey.exe v 21 'param0' --update-from-stdin + cat <<'EOF' | flowey.exe v 22 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF - echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 21 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 21 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 21 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 21 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 21 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string - echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 21 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-guest_test_uefi" | flowey.exe v 22 'artifact_use_from_aarch64-guest_test_uefi' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-linux-musl-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-linux-musl-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-openhcl-igvm" | flowey.exe v 22 'artifact_use_from_aarch64-openhcl-igvm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-openvmm" | flowey.exe v 22 'artifact_use_from_aarch64-windows-openvmm' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-pipette" | flowey.exe v 22 'artifact_use_from_aarch64-windows-pipette' --update-from-stdin --is-raw-string + echo "${{ runner.temp }}\\used_artifacts\\aarch64-windows-vmm-tests-archive" | flowey.exe v 22 'artifact_use_from_aarch64-windows-vmm-tests-archive' --update-from-stdin --is-raw-string shell: bash - name: create cargo-nextest cache dir - run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 0 + run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 4 + run: flowey.exe e 22 flowey_lib_common::cache 4 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:10:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar8 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar8' - run: | - flowey.exe v 21 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:9:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar9 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar9' - id: flowey_lib_common__cache__5 @@ -4796,26 +5354,26 @@ jobs: path: ${{ env.floweyvar9 }} name: 'Restore cache: cargo-nextest' - run: ${{ steps.flowey_lib_common__cache__5.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:12:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__5.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 6 + run: flowey.exe e 22 flowey_lib_common::cache 6 shell: bash - name: installing cargo-nextest - run: flowey.exe e 21 flowey_lib_common::download_cargo_nextest 1 + run: flowey.exe e 22 flowey_lib_common::download_cargo_nextest 1 shell: bash - name: create gh-release-download cache dir - run: flowey.exe e 21 flowey_lib_common::download_gh_release 0 + run: flowey.exe e 22 flowey_lib_common::download_gh_release 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 8 + run: flowey.exe e 22 flowey_lib_common::cache 8 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:18:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar10 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar10' - run: | - flowey.exe v 21 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:17:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar11 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar11' - id: flowey_lib_common__cache__9 @@ -4825,26 +5383,26 @@ jobs: path: ${{ env.floweyvar11 }} name: 'Restore cache: gh-release-download' - run: ${{ steps.flowey_lib_common__cache__9.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:20:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__9.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 10 + run: flowey.exe e 22 flowey_lib_common::cache 10 shell: bash - name: download artifacts from github releases - run: flowey.exe e 21 flowey_lib_common::download_gh_release 1 + run: flowey.exe e 22 flowey_lib_common::download_gh_release 1 shell: bash - name: unpack mu_msvm package (aarch64) - run: flowey.exe e 21 flowey_lib_hvlite::download_uefi_mu_msvm 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_uefi_mu_msvm 0 shell: bash - name: check if hvlite needs to be cloned - run: flowey.exe e 21 flowey_lib_common::git_checkout 0 + run: flowey.exe e 22 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string + flowey.exe v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar5 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar5' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4857,53 +5415,53 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey.exe v 21 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey.exe e 21 flowey_lib_common::git_checkout 3 + run: flowey.exe e 22 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey.exe e 21 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey.exe e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: report openvmm magicpath dir - run: flowey.exe e 21 flowey_lib_hvlite::cfg_openvmm_magicpath 0 + run: flowey.exe e 22 flowey_lib_hvlite::cfg_openvmm_magicpath 0 shell: bash - name: move MSVM.fd into its magic folder - run: flowey.exe e 21 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 + run: flowey.exe e 22 flowey_lib_hvlite::init_openvmm_magicpath_uefi_mu_msvm 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 0 + run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 0 shell: bash - name: creating new test content dir - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 0 shell: bash - name: resolve openvmm artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_openvmm::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_openvmm::resolve 0 shell: bash - name: resolve pipette artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 1 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 1 shell: bash - name: resolve pipette artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_pipette::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_pipette::resolve 0 shell: bash - name: resolve guest_test_uefi artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_guest_test_uefi::resolve 0 shell: bash - name: resolve OpenHCL igvm artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_openhcl_igvm_from_recipe::resolve 0 shell: bash - name: create azcopy cache dir - run: flowey.exe e 21 flowey_lib_common::download_azcopy 0 + run: flowey.exe e 22 flowey_lib_common::download_azcopy 0 shell: bash - name: Pre-processing cache vars - run: flowey.exe e 21 flowey_lib_common::cache 0 + run: flowey.exe e 22 flowey_lib_common::cache 0 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:2:flowey_lib_common/src/cache.rs:458:72' --write-to-gh-env floweyvar6 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar6' - run: | - flowey.exe v 21 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string + flowey.exe v 22 'flowey_lib_common::cache:1:flowey_lib_common/src/cache.rs:457:72' --write-to-gh-env floweyvar7 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar7' - id: flowey_lib_common__cache__1 @@ -4913,56 +5471,56 @@ jobs: path: ${{ env.floweyvar7 }} name: 'Restore cache: azcopy' - run: ${{ steps.flowey_lib_common__cache__1.outputs.cache-hit }} - shell: flowey.exe v 21 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string + shell: flowey.exe v 22 'flowey_lib_common::cache:4:flowey_lib_common/src/cache.rs:510:46' --update-from-file {0} --is-raw-string name: 🌼 Read from 'steps.flowey_lib_common__cache__1.outputs.cache-hit' - name: map Github cache-hit to flowey - run: flowey.exe e 21 flowey_lib_common::cache 2 + run: flowey.exe e 22 flowey_lib_common::cache 2 shell: bash - name: installing azcopy - run: flowey.exe e 21 flowey_lib_common::download_azcopy 1 + run: flowey.exe e 22 flowey_lib_common::download_azcopy 1 shell: bash - name: calculating required VMM tests disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 0 shell: bash - name: downloading VMM test disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 1 shell: bash - name: report downloaded VMM test disk images - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_vmm_tests_vhds 2 shell: bash - name: unpack openvmm-deps archive - run: flowey.exe e 21 flowey_lib_hvlite::download_openvmm_deps 0 + run: flowey.exe e 22 flowey_lib_hvlite::download_openvmm_deps 0 shell: bash - name: setting up vmm_tests env - run: flowey.exe e 21 flowey_lib_hvlite::init_vmm_tests_env 0 + run: flowey.exe e 22 flowey_lib_hvlite::init_vmm_tests_env 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::run_cargo_nextest_run 1 + run: flowey.exe e 22 flowey_lib_hvlite::run_cargo_nextest_run 1 shell: bash - name: resolve vmm tests archive artifact - run: flowey.exe e 21 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 + run: flowey.exe e 22 flowey_lib_hvlite::artifact_nextest_vmm_tests_archive::resolve 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 + run: flowey.exe e 22 flowey_lib_hvlite::test_nextest_vmm_tests_archive 0 shell: bash - name: run 'vmm_tests' nextest tests - run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 0 + run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 0 shell: bash - name: write results - run: flowey.exe e 21 flowey_lib_common::run_cargo_nextest_run 1 + run: flowey.exe e 22 flowey_lib_common::run_cargo_nextest_run 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 4 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 4 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 5 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 5 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:7:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:9:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar2 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar2' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4974,17 +5532,17 @@ jobs: name: 'publish test results: crash-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 7 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 7 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 8 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 8 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:12:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:14:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar3 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar3' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -4996,17 +5554,17 @@ jobs: name: 'publish test results: logs (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 10 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 10 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 11 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 11 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:17:flowey_lib_common/src/publish_test_results.rs:141:57' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:19:flowey_lib_common/src/publish_test_results.rs:149:62' --write-to-gh-env floweyvar4 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar4' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5018,23 +5576,23 @@ jobs: name: 'publish test results: openhcl-dumps (aarch64-windows-vmm-tests)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 0 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 0 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 1 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 1 shell: bash - name: 🌼 write_into Var - run: flowey.exe e 21 flowey_lib_common::publish_test_results 2 + run: flowey.exe e 22 flowey_lib_common::publish_test_results 2 shell: bash - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION + flowey.exe v 22 'flowey_lib_common::publish_test_results:0:flowey_lib_common/src/publish_test_results.rs:77:43' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey.exe v 21 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string + flowey.exe v 22 'flowey_lib_common::publish_test_results:4:flowey_lib_common/src/publish_test_results.rs:95:47' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5046,18 +5604,18 @@ jobs: name: 'publish test results: aarch64-windows-vmm-tests (JUnit XML)' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - name: report test results to overall pipeline status - run: flowey.exe e 21 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 + run: flowey.exe e 22 flowey_lib_hvlite::_jobs::consume_and_test_nextest_vmm_tests_archive 2 shell: bash - name: 'validate cache entry: gh-release-download' - run: flowey.exe e 21 flowey_lib_common::cache 11 + run: flowey.exe e 22 flowey_lib_common::cache 11 shell: bash - name: 'validate cache entry: azcopy' - run: flowey.exe e 21 flowey_lib_common::cache 3 + run: flowey.exe e 22 flowey_lib_common::cache 3 shell: bash - name: 'validate cache entry: cargo-nextest' - run: flowey.exe e 21 flowey_lib_common::cache 7 + run: flowey.exe e 22 flowey_lib_common::cache 7 shell: bash - job22: + job23: name: test flowey local backend runs-on: - self-hosted @@ -5144,22 +5702,22 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 22 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 22 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 23 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 22 'param0' --update-from-stdin + cat <<'EOF' | flowey v 23 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: check if hvlite needs to be cloned - run: flowey e 22 flowey_lib_common::git_checkout 0 + run: flowey e 23 flowey_lib_common::git_checkout 0 shell: bash - run: | - flowey v 22 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION + flowey v 23 'flowey_lib_common::git_checkout:1:flowey_lib_common/src/git_checkout.rs:470:46' --write-to-gh-env FLOWEY_CONDITION shell: bash name: πŸŒΌβ“ Write to 'FLOWEY_CONDITION' - run: | - flowey v 22 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string + flowey v 23 'flowey_lib_common::git_checkout:0:flowey_lib_common/src/git_checkout.rs:469:80' --write-to-gh-env floweyvar1 --is-raw-string shell: bash name: 🌼 Write to 'floweyvar1' if: ${{ fromJSON(env.FLOWEY_CONDITION) }} @@ -5172,30 +5730,31 @@ jobs: name: checkout repo hvlite if: ${{ fromJSON(env.FLOWEY_CONDITION) }} - run: ${{ github.workspace }} - shell: flowey v 22 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string + shell: flowey v 23 'flowey_lib_common::git_checkout:4:flowey_lib_common/src/git_checkout.rs:524:31' --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.workspace' - name: report cloned repo directories - run: flowey e 22 flowey_lib_common::git_checkout 3 + run: flowey e 23 flowey_lib_common::git_checkout 3 shell: bash - name: resolve OpenVMM repo requests - run: flowey e 22 flowey_lib_hvlite::git_checkout_openvmm_repo 0 + run: flowey e 23 flowey_lib_hvlite::git_checkout_openvmm_repo 0 shell: bash - name: install Rust - run: flowey e 22 flowey_lib_common::install_rust 0 + run: flowey e 23 flowey_lib_common::install_rust 0 shell: bash - run: ${{ github.token }} - shell: flowey v 22 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string + shell: flowey v 23 'flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm:2:flowey_lib_hvlite/src/_jobs/test_local_flowey_build_igvm.rs:32:28' --is-secret --update-from-file {0} --is-raw-string name: 🌼 Read from 'github.token' - name: test cargo xflowey build-igvm x64 --install-missing-deps - run: flowey e 22 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 + run: flowey e 23 flowey_lib_hvlite::_jobs::test_local_flowey_build_igvm 1 shell: bash - job23: + job24: name: openvmm checkin gates runs-on: ubuntu-latest permissions: contents: read id-token: write needs: + - job23 - job22 - job21 - job20 @@ -5226,7 +5785,7 @@ jobs: - name: 🌼πŸ₯Ύ Download bootstrapped flowey uses: actions/download-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-linux-uid-6 + name: _internal-flowey-bootstrap-x86_64-linux-uid-7 path: ${{ runner.temp }}/bootstrapped-flowey - run: echo "${{ runner.temp }}/bootstrapped-flowey" >> $GITHUB_PATH shell: bash @@ -5239,15 +5798,15 @@ jobs: chmod +x $AgentTempDirNormal/bootstrapped-flowey/flowey - echo '"debug"' | flowey v 23 'FLOWEY_LOG' --update-from-stdin - echo "${{ runner.temp }}/work" | flowey v 23 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string + echo '"debug"' | flowey v 24 'FLOWEY_LOG' --update-from-stdin + echo "${{ runner.temp }}/work" | flowey v 24 '_internal_WORKING_DIR' --update-from-stdin --is-raw-string - cat <<'EOF' | flowey v 23 'param0' --update-from-stdin + cat <<'EOF' | flowey v 24 'param0' --update-from-stdin ${{ inputs.param0 != '' && inputs.param0 || 'false' }} EOF shell: bash - name: Check if any jobs failed - run: flowey e 23 flowey_lib_hvlite::_jobs::all_good_job 0 + run: flowey e 24 flowey_lib_hvlite::_jobs::all_good_job 0 shell: bash job3: name: xtask fmt (windows) @@ -6237,7 +6796,7 @@ jobs: - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-windows-uid-12 + name: _internal-flowey-bootstrap-x86_64-windows-uid-13 path: ${{ runner.temp }}/bootstrapped-flowey job7: name: build artifacts (not for VMM tests) [x64-windows] @@ -6837,7 +7396,7 @@ jobs: - name: 🌼πŸ₯Ύ Publish bootstrapped flowey uses: actions/upload-artifact@v4 with: - name: _internal-flowey-bootstrap-x86_64-windows-uid-10 + name: _internal-flowey-bootstrap-x86_64-windows-uid-11 path: ${{ runner.temp }}/bootstrapped-flowey job9: name: build artifacts [aarch64-linux] diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index b0b24954a..d5b0ad84b 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -629,9 +629,9 @@ impl IntoPipeline for CheckinGatesCli { OpenvmmHclBuildProfile::Debug }; - let (pub_openhcl_igvm, use_openhcl_igvm) = + let (pub_openhcl_igvm_dev, use_openhcl_igvm_dev) = pipeline.new_artifact(format!("{arch_tag}-openhcl-igvm")); - let (pub_openhcl_igvm_extras, use_openhcl_igvm_extras) = + let (pub_openhcl_igvm_extras_dev, _use_openhcl_igvm_extras_dev) = pipeline.new_artifact(format!("{arch_tag}-openhcl-igvm-extras")); // also build pipette musl on this job, as until we land the // refactor that allows building musl without the full openhcl @@ -644,7 +644,7 @@ impl IntoPipeline for CheckinGatesCli { match arch { CommonArch::X86_64 => { vmm_tests_artifacts_windows_x86.use_openhcl_igvm_files = - Some(use_openhcl_igvm.clone()); + Some(use_openhcl_igvm_dev.clone()); vmm_tests_artifacts_windows_x86.use_pipette_linux_musl = Some(use_pipette_linux_musl.clone()); vmm_tests_artifacts_linux_x86.use_pipette_linux_musl = @@ -652,7 +652,7 @@ impl IntoPipeline for CheckinGatesCli { } CommonArch::Aarch64 => { vmm_tests_artifacts_windows_aarch64.use_openhcl_igvm_files = - Some(use_openhcl_igvm.clone()); + Some(use_openhcl_igvm_dev.clone()); vmm_tests_artifacts_windows_aarch64.use_pipette_linux_musl = Some(use_pipette_linux_musl.clone()); } @@ -685,6 +685,7 @@ impl IntoPipeline for CheckinGatesCli { .dep_on(|ctx| { flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe::Params { igvm_files: igvm_recipes + .clone() .into_iter() .map(|recipe| OpenhclIgvmBuildParams { profile: openvmm_hcl_profile, @@ -694,9 +695,9 @@ impl IntoPipeline for CheckinGatesCli { ))), }) .collect(), - artifact_dir_openhcl_igvm: ctx.publish_artifact(pub_openhcl_igvm), + artifact_dir_openhcl_igvm: ctx.publish_artifact(pub_openhcl_igvm_dev), artifact_dir_openhcl_igvm_extras: ctx - .publish_artifact(pub_openhcl_igvm_extras), + .publish_artifact(pub_openhcl_igvm_extras_dev), done: ctx.new_done_handle(), } }) @@ -714,7 +715,43 @@ impl IntoPipeline for CheckinGatesCli { all_jobs.push(job.finish()); - if arch == CommonArch::X86_64 { + if arch == CommonArch::X86_64 && !release { + let (pub_openhcl_igvm_release, _use_openhcl_igvm_release) = + pipeline.new_artifact(format!("{arch_tag}-openhcl-igvm-release")); + let (pub_openhcl_igvm_extras_release, use_openhcl_igvm_extras_release) = + pipeline.new_artifact(format!("{arch_tag}-openhcl-igvm-extras-release")); + + // Do an underhill-ship build for binary size comparison + let job = pipeline + .new_job( + FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), + FlowArch::X86_64, + format!("build openhcl [{arch_tag}-linux] release"), + ) + .gh_set_pool(crate::pipelines_shared::gh_pools::default_x86_pool( + FlowPlatform::Linux(FlowPlatformLinuxDistro::Ubuntu), + )) + .dep_on(|ctx| { + flowey_lib_hvlite::_jobs::build_and_publish_openhcl_igvm_from_recipe::Params { + igvm_files: igvm_recipes + .into_iter() + .map(|recipe| OpenhclIgvmBuildParams { + profile: OpenvmmHclBuildProfile::OpenvmmHclShip, + recipe, + custom_target: Some(CommonTriple::Custom(openhcl_musl_target( + arch, + ))), + }) + .collect(), + artifact_dir_openhcl_igvm: ctx.publish_artifact(pub_openhcl_igvm_release), + artifact_dir_openhcl_igvm_extras: ctx + .publish_artifact(pub_openhcl_igvm_extras_release), + done: ctx.new_done_handle(), + } + }); + + all_jobs.push(job.finish()); + // emit openvmm verify-size job let job = pipeline .new_job( @@ -731,7 +768,7 @@ impl IntoPipeline for CheckinGatesCli { arch, platform: CommonPlatform::LinuxMusl, }, - new_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras), + new_openhcl: ctx.use_artifact(&use_openhcl_igvm_extras_release), done: ctx.new_done_handle(), }, ) From 3d00b0d670cf1585c4a61a8c1278bcd9ea491e87 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 15:04:06 -0800 Subject: [PATCH 34/42] loop through commits --- flowey/flowey_lib_common/src/gh_workflow_id.rs | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/flowey/flowey_lib_common/src/gh_workflow_id.rs b/flowey/flowey_lib_common/src/gh_workflow_id.rs index 0a9156bb9..8d4effea4 100644 --- a/flowey/flowey_lib_common/src/gh_workflow_id.rs +++ b/flowey/flowey_lib_common/src/gh_workflow_id.rs @@ -46,11 +46,25 @@ impl SimpleFlowNode for Node { sh, "gh run list --commit {commit} -w '[flowey] OpenVMM CI' -s 'completed' -L 1 --json databaseId --jq '.[].databaseId'" ) - .env("GITHUB_TOKEN", gh_token) + .env("GITHUB_TOKEN", gh_token.clone()) .read() }; - let action_id = get_action_id(github_commit_hash); + let mut github_commit_hash = github_commit_hash.clone(); + let mut action_id = get_action_id(github_commit_hash.clone()); + let mut loop_count = 0; + + // CI may not have finished the build for the merge base, so loop through commits + // until we find a finished build or fail after 5 attempts + while let Err(ref e) = action_id { + if loop_count > 4 { + anyhow::bail!("Failed to get action id after 5 attempts: {}", e); + } + + github_commit_hash = xshell::cmd!(sh, "git rev-parse {github_commit_hash}^").read()?; + action_id = get_action_id(github_commit_hash.clone()); + loop_count += 1; + } if let Ok(id) = action_id { print!("Got action id: {}", id); From 0711d494d0aad4e1fa7690c7bbb3e25837555980 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 15:18:55 -0800 Subject: [PATCH 35/42] use gh cli to comment on PR --- .github/workflows/openvmm-pr.yaml | 8 ++++++- .../src/_jobs/check_openvmm_hcl_size.rs | 22 +++++++++++++++---- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 57c501eec..f7b976a70 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -2446,6 +2446,9 @@ jobs: EOF echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras-release" | flowey v 14 'artifact_use_from_x64-openhcl-igvm-extras-release' --update-from-stdin --is-raw-string shell: bash + - run: ${{ github.token }} + shell: flowey v 14 'flowey_lib_hvlite::_jobs::check_openvmm_hcl_size:0:flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs:36:28' --is-secret --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.token' - name: install Rust run: flowey e 14 flowey_lib_common::install_rust 0 shell: bash @@ -2608,8 +2611,11 @@ jobs: - name: download artifacts from github actions run run: flowey e 14 flowey_lib_common::download_gh_artifact 1 shell: bash + - run: ${{ github.event.pull_request.number }} + shell: flowey v 14 'flowey_lib_hvlite::_jobs::check_openvmm_hcl_size:6:flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs:68:25' --update-from-file {0} --is-raw-string + name: 🌼 Read from 'github.event.pull_request.number' - name: binary size comparison - run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 + run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 2 shell: bash - name: 'validate cache entry: gh-cli' run: flowey e 14 flowey_lib_common::cache 3 diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 02776c85a..64f7ac4f4 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -33,6 +33,8 @@ impl SimpleFlowNode for Node { done, } = request; + let gh_token = ctx.get_gh_context_var(GhContextVar::GITHUB__TOKEN); + let xtask = ctx.reqv(|v| crate::build_xtask::Request { target: target.clone(), xtask: v, @@ -63,12 +65,16 @@ impl SimpleFlowNode for Node { run_id: merge_run_id, }); + let pr_id = ctx.get_gh_context_var(GhContextVar::GITHUB__PR_NUMBER); + ctx.emit_rust_step("binary size comparison", |ctx| { done.claim(ctx); let xtask = xtask.claim(ctx); let openvmm_repo_path = openvmm_repo_path.claim(ctx); let old_openhcl = merge_head_artifact.claim(ctx); let new_openhcl = new_openhcl.claim(ctx); + let pr_id = pr_id.claim(ctx); + let gh_token = gh_token.claim(ctx); move |rt| { let xtask = match rt.read(xtask) { @@ -82,8 +88,6 @@ impl SimpleFlowNode for Node { let old_openhcl = rt.read(old_openhcl); let new_openhcl = rt.read(new_openhcl); - xshell::cmd!(sh, "find {new_openhcl}").run()?; - let arch = target.common_arch().unwrap(); let old_path = match arch { @@ -98,11 +102,21 @@ impl SimpleFlowNode for Node { CommonArch::Aarch64 => new_openhcl.join("openhcl-aarch64/openhcl"), }; - xshell::cmd!( + let output = xshell::cmd!( sh, "{xtask} verify-size --original {old_path} --new {new_path}" ) - .run()?; + .read()?; + + let output = format!("## Binary size comparison\n\n```\n{}\n```\n", output); + + let pr_id = rt.read(pr_id); + let gh_token = rt.read(gh_token); + + xshell::cmd!(sh, "gh pr comment {pr_id} -F -") + .stdin(output) + .env("GITHUB_TOKEN", gh_token) + .run()?; Ok(()) } From 2fc057a6b2ae34a822d8245039eb1901c52ba756 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Tue, 7 Jan 2025 16:34:51 -0800 Subject: [PATCH 36/42] try adding pr write permissions --- .github/workflows/openvmm-pr.yaml | 1 + flowey/flowey_hvlite/src/pipelines/checkin_gates.rs | 3 +++ 2 files changed, 4 insertions(+) diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index f7b976a70..be3d3b918 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -2413,6 +2413,7 @@ jobs: permissions: contents: read id-token: write + pull-requests: write needs: - job13 if: github.event.pull_request.draft == false diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index d5b0ad84b..5214c9016 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -772,6 +772,9 @@ impl IntoPipeline for CheckinGatesCli { done: ctx.new_done_handle(), }, ) + .gh_grant_permissions::( + [(GhPermission::PullRequests, GhPermissionValue::Write)], + ) .finish(); all_jobs.push(job); } From 1a6c3418d763c47ed608c449f9a0f68a18f6ee8f Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Wed, 8 Jan 2025 13:25:18 -0800 Subject: [PATCH 37/42] Revert "try adding pr write permissions" This reverts commit 2fc057a6b2ae34a822d8245039eb1901c52ba756. --- .github/workflows/openvmm-pr.yaml | 1 - flowey/flowey_hvlite/src/pipelines/checkin_gates.rs | 3 --- 2 files changed, 4 deletions(-) diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index be3d3b918..f7b976a70 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -2413,7 +2413,6 @@ jobs: permissions: contents: read id-token: write - pull-requests: write needs: - job13 if: github.event.pull_request.draft == false diff --git a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs index 5214c9016..d5b0ad84b 100644 --- a/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs +++ b/flowey/flowey_hvlite/src/pipelines/checkin_gates.rs @@ -772,9 +772,6 @@ impl IntoPipeline for CheckinGatesCli { done: ctx.new_done_handle(), }, ) - .gh_grant_permissions::( - [(GhPermission::PullRequests, GhPermissionValue::Write)], - ) .finish(); all_jobs.push(job); } From 2acb5be79474737deba34f3b2af9bdba3d53d53b Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Wed, 8 Jan 2025 13:25:29 -0800 Subject: [PATCH 38/42] Revert "use gh cli to comment on PR" This reverts commit 0711d494d0aad4e1fa7690c7bbb3e25837555980. --- .github/workflows/openvmm-pr.yaml | 8 +------ .../src/_jobs/check_openvmm_hcl_size.rs | 22 ++++--------------- 2 files changed, 5 insertions(+), 25 deletions(-) diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index f7b976a70..57c501eec 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -2446,9 +2446,6 @@ jobs: EOF echo "$AgentTempDirNormal/used_artifacts/x64-openhcl-igvm-extras-release" | flowey v 14 'artifact_use_from_x64-openhcl-igvm-extras-release' --update-from-stdin --is-raw-string shell: bash - - run: ${{ github.token }} - shell: flowey v 14 'flowey_lib_hvlite::_jobs::check_openvmm_hcl_size:0:flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs:36:28' --is-secret --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.token' - name: install Rust run: flowey e 14 flowey_lib_common::install_rust 0 shell: bash @@ -2611,11 +2608,8 @@ jobs: - name: download artifacts from github actions run run: flowey e 14 flowey_lib_common::download_gh_artifact 1 shell: bash - - run: ${{ github.event.pull_request.number }} - shell: flowey v 14 'flowey_lib_hvlite::_jobs::check_openvmm_hcl_size:6:flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs:68:25' --update-from-file {0} --is-raw-string - name: 🌼 Read from 'github.event.pull_request.number' - name: binary size comparison - run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 2 + run: flowey e 14 flowey_lib_hvlite::_jobs::check_openvmm_hcl_size 0 shell: bash - name: 'validate cache entry: gh-cli' run: flowey e 14 flowey_lib_common::cache 3 diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 64f7ac4f4..02776c85a 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -33,8 +33,6 @@ impl SimpleFlowNode for Node { done, } = request; - let gh_token = ctx.get_gh_context_var(GhContextVar::GITHUB__TOKEN); - let xtask = ctx.reqv(|v| crate::build_xtask::Request { target: target.clone(), xtask: v, @@ -65,16 +63,12 @@ impl SimpleFlowNode for Node { run_id: merge_run_id, }); - let pr_id = ctx.get_gh_context_var(GhContextVar::GITHUB__PR_NUMBER); - ctx.emit_rust_step("binary size comparison", |ctx| { done.claim(ctx); let xtask = xtask.claim(ctx); let openvmm_repo_path = openvmm_repo_path.claim(ctx); let old_openhcl = merge_head_artifact.claim(ctx); let new_openhcl = new_openhcl.claim(ctx); - let pr_id = pr_id.claim(ctx); - let gh_token = gh_token.claim(ctx); move |rt| { let xtask = match rt.read(xtask) { @@ -88,6 +82,8 @@ impl SimpleFlowNode for Node { let old_openhcl = rt.read(old_openhcl); let new_openhcl = rt.read(new_openhcl); + xshell::cmd!(sh, "find {new_openhcl}").run()?; + let arch = target.common_arch().unwrap(); let old_path = match arch { @@ -102,21 +98,11 @@ impl SimpleFlowNode for Node { CommonArch::Aarch64 => new_openhcl.join("openhcl-aarch64/openhcl"), }; - let output = xshell::cmd!( + xshell::cmd!( sh, "{xtask} verify-size --original {old_path} --new {new_path}" ) - .read()?; - - let output = format!("## Binary size comparison\n\n```\n{}\n```\n", output); - - let pr_id = rt.read(pr_id); - let gh_token = rt.read(gh_token); - - xshell::cmd!(sh, "gh pr comment {pr_id} -F -") - .stdin(output) - .env("GITHUB_TOKEN", gh_token) - .run()?; + .run()?; Ok(()) } From b1f5fa60bf5f0b06c8d9ee43cb16c24e23c0c0d7 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Wed, 8 Jan 2025 13:56:41 -0800 Subject: [PATCH 39/42] more rigorous size diff --- .../src/_jobs/check_openvmm_hcl_size.rs | 2 - xtask/src/tasks/verify_size.rs | 45 ++++++++++++------- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs index 02776c85a..6714e63b4 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/check_openvmm_hcl_size.rs @@ -82,8 +82,6 @@ impl SimpleFlowNode for Node { let old_openhcl = rt.read(old_openhcl); let new_openhcl = rt.read(new_openhcl); - xshell::cmd!(sh, "find {new_openhcl}").run()?; - let arch = target.common_arch().unwrap(); let old_path = match arch { diff --git a/xtask/src/tasks/verify_size.rs b/xtask/src/tasks/verify_size.rs index 010b4811c..1aceed828 100644 --- a/xtask/src/tasks/verify_size.rs +++ b/xtask/src/tasks/verify_size.rs @@ -6,7 +6,7 @@ use crate::Xtask; use object::read::Object; use object::read::ObjectSection; -use std::collections::HashMap; +use std::collections::HashSet; /// Runs a size comparison and outputs a diff of two given binaries #[derive(Debug, clap::Parser)] @@ -33,27 +33,38 @@ fn verify_sections_size( let mut total_diff: u64 = 0; let mut total_size: u64 = 0; - let expected_sections: HashMap<_, _> = original + let all_original_sections: Vec<_> = original .sections() - .filter_map(|s| { - s.name() - .ok() - .map(|name| (name.to_string(), (s.size() as i64) / 1024)) - }) - .filter(|(_, size)| *size > 0) + .filter_map(|s| s.name().ok().map(|name| name.to_string())) + .collect(); + let all_new_sections: Vec<_> = new + .sections() + .filter_map(|s| s.name().ok().map(|name| name.to_string())) + .collect(); + + let all_sections: HashSet<_> = all_original_sections + .into_iter() + .chain(all_new_sections.into_iter()) .collect(); - for section in new.sections() { - let name = section.name().unwrap(); - let size = (section.size() / 1024) as i64; - let expected_size = *expected_sections.get(name).unwrap_or(&0); - let diff = size - expected_size; + for section in all_sections { + let name = section; + + let new_size = new + .section_by_name(name.as_str()) + .map(|s| s.size() / 1024) + .unwrap_or(0); + let original_size = original + .section_by_name(name.as_str()) + .map(|s| s.size() / 1024) + .unwrap_or(0); + let diff = (new_size as i64) - (original_size as i64); total_diff += diff.unsigned_abs(); - total_size += size as u64; + total_size += new_size; - // Print any non-zero sections in the newer binary and any sections that differ in size from the original. - if size != 0 || diff != 0 { - println!("{name:20} {expected_size:15} {size:15} {diff:16}"); + // Print any sections that have changed in size + if new_size != original_size { + println!("{name:20} {original_size:15} {new_size:15} {diff:16}"); } } From 5a537f24febd5532780565e6d44f349b5e81991b Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Wed, 8 Jan 2025 14:41:12 -0800 Subject: [PATCH 40/42] clippy --- xtask/src/tasks/verify_size.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xtask/src/tasks/verify_size.rs b/xtask/src/tasks/verify_size.rs index 1aceed828..8b2f288aa 100644 --- a/xtask/src/tasks/verify_size.rs +++ b/xtask/src/tasks/verify_size.rs @@ -44,7 +44,7 @@ fn verify_sections_size( let all_sections: HashSet<_> = all_original_sections .into_iter() - .chain(all_new_sections.into_iter()) + .chain(all_new_sections) .collect(); for section in all_sections { From ad99ffc6233684a869334d93e4ae380db4acaf52 Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Wed, 8 Jan 2025 15:16:45 -0800 Subject: [PATCH 41/42] misc fixes --- .github/workflows/openvmm-ci.yaml | 62 ++++++----------- .github/workflows/openvmm-pr.yaml | 67 +++++++------------ flowey/flowey_core/src/node.rs | 3 +- .../gh_flowey_bootstrap_template.yml | 1 - .../src/_jobs/cfg_hvlite_reposource.rs | 2 +- 5 files changed, 48 insertions(+), 87 deletions(-) diff --git a/.github/workflows/openvmm-ci.yaml b/.github/workflows/openvmm-ci.yaml index 70d2e87eb..9a5a33aa6 100644 --- a/.github/workflows/openvmm-ci.yaml +++ b/.github/workflows/openvmm-ci.yaml @@ -56,7 +56,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -168,7 +167,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -247,7 +246,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -315,7 +313,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -451,7 +449,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -576,7 +573,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -813,7 +810,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -940,7 +936,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -1238,7 +1234,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1357,7 +1352,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -1654,7 +1649,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1773,7 +1767,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -2242,7 +2236,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -2317,7 +2310,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -2568,7 +2561,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -2684,7 +2676,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -2942,7 +2934,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3017,7 +3008,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3314,7 +3305,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci @@ -3424,7 +3414,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3705,7 +3695,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -4064,7 +4054,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -4313,7 +4303,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -4381,7 +4370,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -4643,7 +4632,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5000,7 +4989,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5249,7 +5238,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5315,7 +5303,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -5461,7 +5449,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -5527,7 +5514,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -5652,7 +5639,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5718,7 +5704,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -5854,7 +5840,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -5939,7 +5924,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -6155,7 +6140,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6268,7 +6252,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -6451,7 +6435,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6536,7 +6519,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -6755,7 +6738,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6868,7 +6850,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite diff --git a/.github/workflows/openvmm-pr.yaml b/.github/workflows/openvmm-pr.yaml index 57c501eec..dd8b4e7e6 100644 --- a/.github/workflows/openvmm-pr.yaml +++ b/.github/workflows/openvmm-pr.yaml @@ -64,7 +64,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -176,7 +175,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -255,7 +254,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -323,7 +321,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -459,7 +457,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -586,7 +583,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -884,7 +881,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1003,7 +999,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -1300,7 +1296,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -1419,7 +1414,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -1889,7 +1884,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -2006,7 +2000,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -2470,7 +2464,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -2659,7 +2653,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -2734,7 +2727,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -2985,7 +2978,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3101,7 +3093,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3359,7 +3351,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -3434,7 +3425,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -3731,7 +3722,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target aarch64-pc-windows-msvc --profile flowey-ci @@ -3841,7 +3831,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar6 }} name: checkout repo hvlite @@ -4122,7 +4112,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -4371,7 +4361,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -4439,7 +4428,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -4691,7 +4680,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5052,7 +5041,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5409,7 +5398,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar5 }} name: checkout repo hvlite @@ -5658,7 +5647,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -5724,7 +5712,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -5850,7 +5838,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -5916,7 +5903,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -6041,7 +6028,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -6107,7 +6093,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -6243,7 +6229,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6328,7 +6313,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -6544,7 +6529,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6657,7 +6641,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -6840,7 +6824,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -6925,7 +6908,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite @@ -7144,7 +7127,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-pc-windows-msvc --profile flowey-ci @@ -7257,7 +7239,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar1 }} name: checkout repo hvlite @@ -7441,7 +7423,6 @@ jobs: shell: bash - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap - name: Build flowey run: CARGO_INCREMENTAL=0 RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z threads=8" cargo build -p flowey_hvlite --target x86_64-unknown-linux-gnu --profile flowey-ci @@ -7566,7 +7547,7 @@ jobs: - id: flowey_lib_common__git_checkout__1 uses: actions/checkout@v4 with: - fetch-depth: '0' + fetch-depth: '1' path: repo0 persist-credentials: ${{ env.floweyvar3 }} name: checkout repo hvlite diff --git a/flowey/flowey_core/src/node.rs b/flowey/flowey_core/src/node.rs index 6514bee94..b1b9356b5 100644 --- a/flowey/flowey_core/src/node.rs +++ b/flowey/flowey_core/src/node.rs @@ -1794,8 +1794,7 @@ pub mod steps { /// `github.token` pub const GITHUB__TOKEN: GhContextVar = GhContextVar::new_secret("github.token"); - /// Head ref of a pull request - this is different from `github.head_ref`, which - /// is something like `/pull/ID/merge`. This gives `/pull/ID/head` + /// `github.event.pull_request.head.ref` pub const GITHUB__HEAD_REF: GhContextVar = GhContextVar::new("github.event.pull_request.head.ref"); diff --git a/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml b/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml index 93fe9fac1..ca16012eb 100644 --- a/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml +++ b/flowey/flowey_hvlite/src/pipelines_shared/gh_flowey_bootstrap_template.yml @@ -52,7 +52,6 @@ - uses: actions/checkout@v4 with: - fetch-depth: 1 path: flowey_bootstrap # - CARGO_INCREMENTAL=0 - no need to waste time on incremental artifacts in CI diff --git a/flowey/flowey_lib_hvlite/src/_jobs/cfg_hvlite_reposource.rs b/flowey/flowey_lib_hvlite/src/_jobs/cfg_hvlite_reposource.rs index 6b49b5685..0feb147e8 100644 --- a/flowey/flowey_lib_hvlite/src/_jobs/cfg_hvlite_reposource.rs +++ b/flowey/flowey_lib_hvlite/src/_jobs/cfg_hvlite_reposource.rs @@ -40,7 +40,7 @@ impl SimpleFlowNode for Node { repo_id: "hvlite".into(), repo_src: hvlite_repo_source, allow_persist_credentials: false, - depth: Some(0), + depth: Some(1), // shallow fetch pre_run_deps: Vec::new(), // no special auth required }); From ffbcee757c75824017f8d205e65a6ee56af6092b Mon Sep 17 00:00:00 2001 From: Justus Camp Date: Wed, 8 Jan 2025 15:43:14 -0800 Subject: [PATCH 42/42] fetch main? --- flowey/flowey_lib_common/src/gh_merge_commit.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/flowey/flowey_lib_common/src/gh_merge_commit.rs b/flowey/flowey_lib_common/src/gh_merge_commit.rs index e012b3ffa..a7a41406b 100644 --- a/flowey/flowey_lib_common/src/gh_merge_commit.rs +++ b/flowey/flowey_lib_common/src/gh_merge_commit.rs @@ -41,6 +41,7 @@ impl SimpleFlowNode for Node { sh.change_dir(repo_path); // TODO: Make this work for non-main PRs + xshell::cmd!(sh, "git fetch origin main").run()?; xshell::cmd!(sh, "git fetch origin pull/{pr_number}/head:{head_ref}").run()?; let commit = xshell::cmd!(sh, "git merge-base {head_ref} origin/main").read()?; rt.write(merge_commit, &commit);