ooni-probe-cli/GHGEN/macos.go

43 lines
1.1 KiB
Go

package main
//
// Generates the macOS workflow.
//
import (
"io"
"github.com/ooni/probe-cli/v3/internal/runtimex"
)
func buildAndPublishCLIMacOS(w io.Writer, job *Job) {
runtimex.Assert(len(job.ArchsMatrix) <= 0, "expected no architecture matrix")
buildJob := "build_darwin_cli"
artifacts := []string{
"./CLI/ooniprobe-darwin-amd64",
"./CLI/ooniprobe-darwin-arm64",
"./CLI/miniooni-darwin-amd64",
"./CLI/miniooni-darwin-arm64",
}
testJob := "test_darwin_cli"
publishJob := "publish_darwin_cli"
newJob(w, buildJob, runsOnMacOS, noDependencies, noPermissions)
newStepCheckout(w)
newStepSetupGo(w, "macos")
newStepSetupPsiphon(w)
newStepMake(w, "CLI/darwin")
newStepUploadArtifacts(w, artifacts)
newJob(w, testJob, runsOnMacOS, buildJob, noPermissions)
newStepCheckout(w)
newStepDownloadArtifacts(w, []string{"ooniprobe-darwin-amd64"})
newStepRunOONIProbeIntegrationTests(w, "darwin", "amd64", "")
newJob(w, publishJob, runsOnMacOS, testJob, contentsWritePermissions)
newStepCheckout(w)
newStepDownloadArtifacts(w, artifacts)
newStepGHPublish(w, artifacts)
}