//go:build workflows package main // checkout is the standard actions/checkout step. var checkout = Step{Name: "Checkout", Uses: "actions/checkout@v4"} // newUploadArtifact returns an actions/upload-artifact step uploading // everything in the result directory as the specified name. func newUploadArtifact(display, name string) Step { return Step{ Name: "Upload " + display, Uses: "actions/upload-artifact@v3", With: Map[any]{ {K: "name", V: name}, {K: "path", V: "result/*"}, {K: "retention-days", V: 1}, }, } } // newNixOSTest returns a step for running the named NixOS test. func newNixOSTest(name string) Step { return Step{ Name: "Run NixOS test", Run: "nix build " + "--out-link result " + "--print-out-paths " + "--print-build-logs " + "./test#checks.x86_64-linux." + name, } }