45 lines
1.2 KiB
Go
45 lines
1.2 KiB
Go
package main
|
|
|
|
//
|
|
// Generates the Windows workflow.
|
|
//
|
|
|
|
import (
|
|
"io"
|
|
|
|
"github.com/ooni/probe-cli/v3/internal/runtimex"
|
|
)
|
|
|
|
func buildAndPublishCLIWindows(w io.Writer, job *Job) {
|
|
runtimex.Assert(len(job.ArchsMatrix) <= 0, "expected no architecture matrix")
|
|
|
|
buildJob := "build_windows_cli"
|
|
artifacts := []string{
|
|
"./CLI/ooniprobe-windows-386.exe",
|
|
"./CLI/ooniprobe-windows-amd64.exe",
|
|
"./CLI/miniooni-windows-386.exe",
|
|
"./CLI/miniooni-windows-amd64.exe",
|
|
}
|
|
testJob := "test_windows_cli"
|
|
publishJob := "publish_windows_cli"
|
|
|
|
newJob(w, buildJob, runsOnUbuntu, noDependencies, noPermissions)
|
|
newStepCheckout(w)
|
|
newStepSetupGo(w, "windows")
|
|
newStepInstallMingwW64(w)
|
|
newStepSetupPsiphon(w)
|
|
newStepMake(w, "EXPECTED_MINGW_W64_VERSION=\"9.3-win32\" CLI/windows")
|
|
|
|
newStepUploadArtifacts(w, artifacts)
|
|
|
|
newJob(w, testJob, runsOnWindows, buildJob, noPermissions)
|
|
newStepCheckout(w)
|
|
newStepDownloadArtifacts(w, []string{"ooniprobe-windows-amd64.exe"})
|
|
newStepRunOONIProbeIntegrationTests(w, "windows", "amd64", ".exe")
|
|
|
|
newJob(w, publishJob, runsOnUbuntu, testJob, contentsWritePermissions)
|
|
newStepCheckout(w)
|
|
newStepDownloadArtifacts(w, artifacts)
|
|
newStepGHPublish(w, artifacts)
|
|
}
|