aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/workflows/test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/workflows/test.go')
-rw-r--r--internal/workflows/test.go86
1 files changed, 86 insertions, 0 deletions
diff --git a/internal/workflows/test.go b/internal/workflows/test.go
new file mode 100644
index 00000000..b0819916
--- /dev/null
+++ b/internal/workflows/test.go
@@ -0,0 +1,86 @@
+//go:build workflows
+
+package main
+
+var _ = (&Workflow{
+ Name: "Test",
+ On: []any{"push"},
+
+ Jobs: Map[Job]{
+ {"hakurei", Job{
+ Name: "Hakurei",
+ On: "rosa",
+
+ Steps: []Step{
+ checkout,
+ dist,
+ install,
+ newTestsuite("hakurei/testsuite", "unshare -n "),
+ },
+ }},
+
+ {"hakurei-race", Job{
+ Name: "Hakurei (with race instrument)",
+ On: "rosa",
+
+ Steps: []Step{
+ checkout,
+ _dist,
+ install,
+ newTestsuite("hakurei/testsuite", "unshare -n "),
+ },
+ }},
+
+ {"sandbox", Job{
+ Name: "Sandbox",
+ On: "rosa",
+
+ Steps: []Step{
+ checkout,
+ dist,
+ install,
+ newTestsuite("hakurei/testsuite/sandbox", "unshare -n "),
+ },
+ }},
+
+ {"sandbox-race", Job{
+ Name: "Sandbox (with race instrument)",
+ On: "rosa",
+
+ Steps: []Step{
+ checkout,
+ _dist,
+ install,
+ newTestsuite("hakurei/testsuite/sandbox", "unshare -n "),
+ },
+ }},
+
+ {"sharefs", Job{
+ Name: "ShareFS",
+ On: "rosa",
+
+ Steps: []Step{
+ checkout,
+ dist,
+ install,
+
+ {
+ Name: "Mount sharefs",
+ Run: "useradd " +
+ "-ru 1023 " +
+ "-md /var/lib/sdcard " +
+ "-k /var/empty " +
+ "-s /sbin/nologin " +
+ "media_rw && install -dm0 /sdcard && " +
+ "sharefs " +
+ "-o rw,noexec,nosuid,nodev,noatime," +
+ "allow_other,mkdir,source=/var/lib/sdcard," +
+ "setuid=1023,setgid=1023 /sdcard",
+ },
+
+ newTestsuite("sharefs/testsuite", "sharefs -V && "),
+ newUploadArtifact("test output", "fs_mark"),
+ },
+ }},
+ },
+}).mustWriteFile("test")