build_test.rs 714 B

1234567891011121314151617181920212223242526272829
  1. use clap::Parser;
  2. use std::process::Command;
  3. use crate::build_ebpf;
  4. #[derive(Parser)]
  5. pub struct Options {
  6. /// Whether to compile for the musl libc target
  7. #[clap(short, long)]
  8. pub musl: bool,
  9. #[clap(flatten)]
  10. pub ebpf_options: build_ebpf::BuildEbpfOptions,
  11. }
  12. pub fn build_test(opts: Options) -> anyhow::Result<()> {
  13. build_ebpf::build_ebpf(opts.ebpf_options)?;
  14. let mut args = vec!["build", "-p", "integration-test", "--verbose"];
  15. if opts.musl {
  16. args.push("--target=x86_64-unknown-linux-musl");
  17. }
  18. let status = Command::new("cargo")
  19. .args(&args)
  20. .status()
  21. .expect("failed to build bpf program");
  22. assert!(status.success());
  23. Ok(())
  24. }