diff --git a/{{project-name}}-go/.ebpf/toto b/{{project-name}}-go/.ebpf/toto new file mode 100644 index 0000000..e69de29 diff --git a/{{project-name}}-go/main.go b/{{project-name}}-go/main.go index 9a3a6e7..b360346 100644 --- a/{{project-name}}-go/main.go +++ b/{{project-name}}-go/main.go @@ -8,14 +8,20 @@ import ( "os" "os/signal" "syscall" + "bytes" "github.com/cilium/ebpf" "github.com/cilium/ebpf/link" "github.com/cilium/ebpf/ringbuf" + + _ "embed" ) const progName = "{{crate_name}}" +//go:embed .ebpf/{{project-name}} +var ebpfBytes []byte + func main() { if len(os.Args) < 2 { fmt.Printf("Usage: %s \n", os.Args[0]) @@ -23,7 +29,7 @@ func main() { } ifaceName := os.Args[1] - spec, err := ebpf.LoadCollectionSpec("/tmp/{{project-name}}") + spec, err := ebpf.LoadCollectionSpecFromReader(bytes.NewReader(ebpfBytes)) if err != nil { log.Fatalf("LoadCollectionSpec failed: %v", err) } diff --git a/{{project-name}}/src/main.rs b/{{project-name}}/src/main.rs index 8c2fe02..9b6f59f 100644 --- a/{{project-name}}/src/main.rs +++ b/{{project-name}}/src/main.rs @@ -15,7 +15,7 @@ fn main() -> anyhow::Result<()> { } let src = concat!(env!("OUT_DIR"), "/{{project-name}}"); - let dst = "/tmp/{{project-name}}"; + let dst = "{{project-name}}-go/.ebpf/{{project-name}}"; fs::copy(src, dst)?; Ok(())