From 395957f016b4f7507b9c7f6ca43f622897c4891b Mon Sep 17 00:00:00 2001 From: armfazh Date: Tue, 2 Jun 2020 14:47:14 -0700 Subject: [PATCH 01/15] Using x/sys/cpu only with build tag amd64. --- .github/workflows/ci-actions.yml | 11 ++++++++--- dh/csidh/fp511_amd64.go | 9 +++------ dh/sidh/internal/p434/arith_amd64.go | 6 ++++++ dh/sidh/internal/p434/params.go | 4 ---- dh/sidh/internal/p503/arith_amd64.go | 13 +++++++++++++ dh/sidh/internal/p503/params.go | 8 -------- dh/sidh/internal/p751/arith_amd64.go | 10 ++++++++++ dh/sidh/internal/p751/params.go | 5 ----- .../internal/common/{amd64.go => util_amd64.go} | 0 .../internal/common/{amd64.s => util_amd64.s} | 0 10 files changed, 40 insertions(+), 26 deletions(-) create mode 100644 dh/sidh/internal/p434/arith_amd64.go create mode 100644 dh/sidh/internal/p503/arith_amd64.go create mode 100644 dh/sidh/internal/p751/arith_amd64.go rename sign/dilithium/internal/common/{amd64.go => util_amd64.go} (100%) rename sign/dilithium/internal/common/{amd64.s => util_amd64.s} (100%) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index b7f390df4..525c6e5c7 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -38,7 +38,7 @@ jobs: runs-on: ubuntu-18.04 strategy: matrix: - CFG: [ [arm64,arm64v8,1.14] ] + CFG: [ [s390x,s390x,1.14.0], [arm64,arm64v8,1.14.0] ] steps: - uses: actions/checkout@v2 - name: Enabling Docker Experimental @@ -49,10 +49,15 @@ jobs: run: | docker pull -q multiarch/qemu-user-static docker pull -q --platform linux/${{matrix.CFG[0]}} ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - name: Testing run: | - docker run --rm -v `pwd`:`pwd` -w `pwd` ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go test -v ./... + docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + docker run --rm -v `pwd`:`pwd` -w `pwd` \ + -e "GODEBUG=asyncpreemptoff=1" \ + -e "GOPROXY=direct" \ + -e "GOFLAGS=-insecure" \ + ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ + go test -v ./... coverage_amd64_job: needs: [ amd64_job ] if: github.event_name == 'push' diff --git a/dh/csidh/fp511_amd64.go b/dh/csidh/fp511_amd64.go index bdc5b103b..495c6e3fd 100644 --- a/dh/csidh/fp511_amd64.go +++ b/dh/csidh/fp511_amd64.go @@ -1,4 +1,4 @@ -// +build amd64,!noasm +// +build amd64 package csidh @@ -11,12 +11,9 @@ import ( var ( // Signals support for BMI2 (MULX) hasBMI2 = cpu.X86.HasBMI2 - // Signals support for ADX and BMI2 - hasADXandBMI2 = cpu.X86.HasBMI2 && cpu.X86.HasADX + _ = hasBMI2 ) -var _ = hasBMI2 - func mul512(r, m1 *fp, m2 uint64) { mul512Amd64(r, m1, m2) } func cswap512(x, y *fp, choice uint8) { cswap512Amd64(x, y, choice) } func mulRdc(r, x, y *fp) { mulRdcAmd64(r, x, y) } @@ -36,7 +33,7 @@ func mulRdcAmd64(r, x, y *fp) { var t fp var c uint64 - if hasADXandBMI2 { + if cpu.X86.HasBMI2 && cpu.X86.HasADX { mulBmiAsm(r, x, y) } else { mulGeneric(r, x, y) diff --git a/dh/sidh/internal/p434/arith_amd64.go b/dh/sidh/internal/p434/arith_amd64.go new file mode 100644 index 000000000..302f7fc83 --- /dev/null +++ b/dh/sidh/internal/p434/arith_amd64.go @@ -0,0 +1,6 @@ +package p434 + +import "golang.org/x/sys/cpu" + +// HasADXandBMI2 signals support for ADX and BMI2 +var HasADXandBMI2 = cpu.X86.HasBMI2 && cpu.X86.HasADX diff --git a/dh/sidh/internal/p434/params.go b/dh/sidh/internal/p434/params.go index bf6261cb8..53337a20a 100644 --- a/dh/sidh/internal/p434/params.go +++ b/dh/sidh/internal/p434/params.go @@ -4,7 +4,6 @@ package p434 import ( "github.com/cloudflare/circl/dh/sidh/internal/common" - "golang.org/x/sys/cpu" ) const ( @@ -13,9 +12,6 @@ const ( ) var ( - // HasADXandBMI2 signals support for ADX and BMI2 - HasADXandBMI2 = cpu.X86.HasBMI2 && cpu.X86.HasADX - // P434 is a prime used by field Fp434 P434 = common.Fp{ 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFDC1767AE2FFFFFF, diff --git a/dh/sidh/internal/p503/arith_amd64.go b/dh/sidh/internal/p503/arith_amd64.go new file mode 100644 index 000000000..a4101ee6e --- /dev/null +++ b/dh/sidh/internal/p503/arith_amd64.go @@ -0,0 +1,13 @@ +package p503 + +import "golang.org/x/sys/cpu" + +// According to https://github.com/golang/go/issues/28230, +// variables referred from the assembly must be in the same package. +var ( + // HasBMI2 signals support for MULX which is in BMI2 + HasBMI2 = cpu.X86.HasBMI2 + + // HasADXandBMI2 signals support for ADX and BMI2 + HasADXandBMI2 = cpu.X86.HasBMI2 && cpu.X86.HasADX +) diff --git a/dh/sidh/internal/p503/params.go b/dh/sidh/internal/p503/params.go index 5bf811d6b..f19049678 100644 --- a/dh/sidh/internal/p503/params.go +++ b/dh/sidh/internal/p503/params.go @@ -4,7 +4,6 @@ package p503 import ( "github.com/cloudflare/circl/dh/sidh/internal/common" - "golang.org/x/sys/cpu" ) const ( @@ -14,13 +13,6 @@ const ( // P503 is a prime used by field Fp503 var ( - // According to https://github.com/golang/go/issues/28230, - // variables referred from the assembly must be in the same package. - // HasBMI2 signals support for MULX which is in BMI2 - HasBMI2 = cpu.X86.HasBMI2 - // HasADXandBMI2 signals support for ADX and BMI2 - HasADXandBMI2 = cpu.X86.HasBMI2 && cpu.X86.HasADX - // P503 is a prime used by field Fp503 P503 = common.Fp{ 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xABFFFFFFFFFFFFFF, diff --git a/dh/sidh/internal/p751/arith_amd64.go b/dh/sidh/internal/p751/arith_amd64.go new file mode 100644 index 000000000..83ca176a6 --- /dev/null +++ b/dh/sidh/internal/p751/arith_amd64.go @@ -0,0 +1,10 @@ +package p751 + +import "golang.org/x/sys/cpu" + +var ( + // HasBMI2 signals support for MULX which is in BMI2 + HasBMI2 = cpu.X86.HasBMI2 + // HasADXandBMI2 signals support for ADX and BMI2 + HasADXandBMI2 = cpu.X86.HasBMI2 && cpu.X86.HasADX +) diff --git a/dh/sidh/internal/p751/params.go b/dh/sidh/internal/p751/params.go index 65d6c5ba0..139918df3 100644 --- a/dh/sidh/internal/p751/params.go +++ b/dh/sidh/internal/p751/params.go @@ -4,7 +4,6 @@ package p751 import ( "github.com/cloudflare/circl/dh/sidh/internal/common" - "golang.org/x/sys/cpu" ) const ( @@ -13,10 +12,6 @@ const ( ) var ( - // HasBMI2 signals support for MULX which is in BMI2 - HasBMI2 = cpu.X86.HasBMI2 - // HasADXandBMI2 signals support for ADX and BMI2 - HasADXandBMI2 = cpu.X86.HasBMI2 && cpu.X86.HasADX // P751 is a prime used by field Fp751 P751 = common.Fp{ 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, diff --git a/sign/dilithium/internal/common/amd64.go b/sign/dilithium/internal/common/util_amd64.go similarity index 100% rename from sign/dilithium/internal/common/amd64.go rename to sign/dilithium/internal/common/util_amd64.go diff --git a/sign/dilithium/internal/common/amd64.s b/sign/dilithium/internal/common/util_amd64.s similarity index 100% rename from sign/dilithium/internal/common/amd64.s rename to sign/dilithium/internal/common/util_amd64.s From d27a94b426e71e8571c8fe1361c78901b6323062 Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Tue, 2 Jun 2020 23:30:37 -0700 Subject: [PATCH 02/15] teste --- .github/workflows/ci-actions.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 525c6e5c7..41317f05e 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -52,12 +52,13 @@ jobs: - name: Testing run: | docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + docker run --rm -v `pwd`:`pwd` -w `pwd` ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go get -x docker run --rm -v `pwd`:`pwd` -w `pwd` \ -e "GODEBUG=asyncpreemptoff=1" \ -e "GOPROXY=direct" \ -e "GOFLAGS=-insecure" \ ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ - go test -v ./... + go test -x -v ./dh/x448/... coverage_amd64_job: needs: [ amd64_job ] if: github.event_name == 'push' From 72cdf57ae73b6b956029e9539d9813b8746cd723 Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Tue, 2 Jun 2020 23:42:49 -0700 Subject: [PATCH 03/15] get --- .github/workflows/ci-actions.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 41317f05e..57694e533 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -9,6 +9,7 @@ on: jobs: amd64_job: name: Go-${{matrix.GOVER}}/amd64 + if: 1==0 runs-on: ubuntu-18.04 strategy: matrix: @@ -49,10 +50,15 @@ jobs: run: | docker pull -q multiarch/qemu-user-static docker pull -q --platform linux/${{matrix.CFG[0]}} ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} - - name: Testing + - name: Multiarch run: | docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - docker run --rm -v `pwd`:`pwd` -w `pwd` ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go get -x + - name: Getting + run: | + docker run --rm -v `pwd`:`pwd` -w `pwd` ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go get -x -v + - name: Testing + if: 1==0 + run: | docker run --rm -v `pwd`:`pwd` -w `pwd` \ -e "GODEBUG=asyncpreemptoff=1" \ -e "GOPROXY=direct" \ From 7520983857ae4efa7250ec957be1e13cff023d0d Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Tue, 2 Jun 2020 23:47:23 -0700 Subject: [PATCH 04/15] flags --- .github/workflows/ci-actions.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 57694e533..d57d56e32 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -55,7 +55,11 @@ jobs: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - name: Getting run: | - docker run --rm -v `pwd`:`pwd` -w `pwd` ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go get -x -v + docker run --rm -v `pwd`:`pwd` -w `pwd` \ + -e "GODEBUG=asyncpreemptoff=1" \ + -e "GOPROXY=direct" \ + -e "GOFLAGS=-insecure" \ + ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go get -x -v - name: Testing if: 1==0 run: | From 00645a0668467ecb39ea58ecdafa2ed270b7c6ab Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 00:07:04 -0700 Subject: [PATCH 05/15] clean --- .github/workflows/ci-actions.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index d57d56e32..ba1482f1b 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -58,8 +58,8 @@ jobs: docker run --rm -v `pwd`:`pwd` -w `pwd` \ -e "GODEBUG=asyncpreemptoff=1" \ -e "GOPROXY=direct" \ - -e "GOFLAGS=-insecure" \ - ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go get -x -v + -e "GOFLAGS=-insecure -modcacherw" \ + ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} bash -c "go clean -modcache && go get -x -v" - name: Testing if: 1==0 run: | From 8f640dd77bcf5fbafbdfe92ebede39fe6aa679eb Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 00:36:33 -0700 Subject: [PATCH 06/15] json --- .github/workflows/ci-actions.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index ba1482f1b..3f92c5cd0 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -39,7 +39,7 @@ jobs: runs-on: ubuntu-18.04 strategy: matrix: - CFG: [ [s390x,s390x,1.14.0], [arm64,arm64v8,1.14.0] ] + CFG: [ [s390x,s390x,1.14.0] ] steps: - uses: actions/checkout@v2 - name: Enabling Docker Experimental @@ -53,13 +53,15 @@ jobs: - name: Multiarch run: | docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + go env + env - name: Getting run: | - docker run --rm -v `pwd`:`pwd` -w `pwd` \ - -e "GODEBUG=asyncpreemptoff=1" \ - -e "GOPROXY=direct" \ - -e "GOFLAGS=-insecure -modcacherw" \ - ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} bash -c "go clean -modcache && go get -x -v" + docker run --rm -v `pwd`:`pwd` -w `pwd` \ + -e "GODEBUG=asyncpreemptoff=1" \ + -e "GOPROXY=direct" \ + -e "GOFLAGS=-insecure" \ + ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go list -m -x -json golang.org/x/sys - name: Testing if: 1==0 run: | From 332ac9c4d5747e62e07ed76f38d5c2fa51f202ba Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 00:43:04 -0700 Subject: [PATCH 07/15] env --- .github/workflows/ci-actions.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 3f92c5cd0..9818ead06 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -61,7 +61,8 @@ jobs: -e "GODEBUG=asyncpreemptoff=1" \ -e "GOPROXY=direct" \ -e "GOFLAGS=-insecure" \ - ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} go list -m -x -json golang.org/x/sys + ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ + bash -c "env && go env " - name: Testing if: 1==0 run: | From 447d9264280e8660ca11bc4b912bc81b9b39ada3 Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 00:49:46 -0700 Subject: [PATCH 08/15] version --- .github/workflows/ci-actions.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 9818ead06..dc551b217 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -39,7 +39,7 @@ jobs: runs-on: ubuntu-18.04 strategy: matrix: - CFG: [ [s390x,s390x,1.14.0] ] + CFG: [ [s390x,s390x,1.14] ] steps: - uses: actions/checkout@v2 - name: Enabling Docker Experimental @@ -62,7 +62,15 @@ jobs: -e "GOPROXY=direct" \ -e "GOFLAGS=-insecure" \ ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ - bash -c "env && go env " + bash -c "env " + - name: go Versoin + run: | + docker run --rm -v `pwd`:`pwd` -w `pwd` \ + -e "GODEBUG=asyncpreemptoff=1" \ + -e "GOPROXY=direct" \ + -e "GOFLAGS=-insecure" \ + ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ + bash -c "go version" - name: Testing if: 1==0 run: | From ed073d3fb384051c35599a1e6346b9cb0d8b1796 Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 00:53:21 -0700 Subject: [PATCH 09/15] envy --- .github/workflows/ci-actions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index dc551b217..54def4d37 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -70,7 +70,7 @@ jobs: -e "GOPROXY=direct" \ -e "GOFLAGS=-insecure" \ ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ - bash -c "go version" + bash -c "go env" - name: Testing if: 1==0 run: | From bcd16db877bb3f8901de494f16c22b08e8f8d42e Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 01:01:30 -0700 Subject: [PATCH 10/15] arch --- .github/workflows/ci-actions.yml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 54def4d37..f548fe591 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -65,12 +65,8 @@ jobs: bash -c "env " - name: go Versoin run: | - docker run --rm -v `pwd`:`pwd` -w `pwd` \ - -e "GODEBUG=asyncpreemptoff=1" \ - -e "GOPROXY=direct" \ - -e "GOFLAGS=-insecure" \ - ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ - bash -c "go env" + GODEBUG=asyncpreemptoff=1 GOPROXY=direct GOFLAGS=-insecure GOARCH=${{matrix.CFG[1]}} go env + GODEBUG=asyncpreemptoff=1 GOPROXY=direct GOFLAGS=-insecure GOARCH=${{matrix.CFG[1]}} go list -u -m all - name: Testing if: 1==0 run: | From 301924876531efa4fa95904c2d00dcfd19d7bc80 Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 01:06:41 -0700 Subject: [PATCH 11/15] tes --- .github/workflows/ci-actions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index f548fe591..6f797597a 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -66,7 +66,7 @@ jobs: - name: go Versoin run: | GODEBUG=asyncpreemptoff=1 GOPROXY=direct GOFLAGS=-insecure GOARCH=${{matrix.CFG[1]}} go env - GODEBUG=asyncpreemptoff=1 GOPROXY=direct GOFLAGS=-insecure GOARCH=${{matrix.CFG[1]}} go list -u -m all + GODEBUG=asyncpreemptoff=1 GOPROXY=direct GOFLAGS=-insecure GOARCH=${{matrix.CFG[1]}} go test -x -v ./dh/x448/... - name: Testing if: 1==0 run: | From 4332b464de45f3e798b12fe7faecb42446ee9cec Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 01:16:47 -0700 Subject: [PATCH 12/15] all --- .github/workflows/ci-actions.yml | 28 +++------------------------- 1 file changed, 3 insertions(+), 25 deletions(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 6f797597a..5c9ccb099 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -39,7 +39,7 @@ jobs: runs-on: ubuntu-18.04 strategy: matrix: - CFG: [ [s390x,s390x,1.14] ] + CFG: [ [s390x,s390x,1.14], [arm64,arm64v8,1.14] ] steps: - uses: actions/checkout@v2 - name: Enabling Docker Experimental @@ -49,33 +49,11 @@ jobs: - name: Pulling Images run: | docker pull -q multiarch/qemu-user-static - docker pull -q --platform linux/${{matrix.CFG[0]}} ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} - - name: Multiarch - run: | docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - go env - env - - name: Getting - run: | - docker run --rm -v `pwd`:`pwd` -w `pwd` \ - -e "GODEBUG=asyncpreemptoff=1" \ - -e "GOPROXY=direct" \ - -e "GOFLAGS=-insecure" \ - ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ - bash -c "env " - - name: go Versoin - run: | - GODEBUG=asyncpreemptoff=1 GOPROXY=direct GOFLAGS=-insecure GOARCH=${{matrix.CFG[1]}} go env - GODEBUG=asyncpreemptoff=1 GOPROXY=direct GOFLAGS=-insecure GOARCH=${{matrix.CFG[1]}} go test -x -v ./dh/x448/... - name: Testing - if: 1==0 run: | - docker run --rm -v `pwd`:`pwd` -w `pwd` \ - -e "GODEBUG=asyncpreemptoff=1" \ - -e "GOPROXY=direct" \ - -e "GOFLAGS=-insecure" \ - ${{matrix.CFG[1]}}/golang:${{matrix.CFG[2]}} \ - go test -x -v ./dh/x448/... + GOARCH=${{matrix.CFG[0]}} go build -v ./... + GOARCH=${{matrix.CFG[0]}} go test -v ./... coverage_amd64_job: needs: [ amd64_job ] if: github.event_name == 'push' From a3e3806eff3ac038bb6cce5dbce1252ae29e589f Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 01:41:24 -0700 Subject: [PATCH 13/15] tr --- .github/workflows/ci-actions.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 5c9ccb099..850c4aff6 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -50,10 +50,9 @@ jobs: run: | docker pull -q multiarch/qemu-user-static docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - - name: Testing - run: | - GOARCH=${{matrix.CFG[0]}} go build -v ./... - GOARCH=${{matrix.CFG[0]}} go test -v ./... + - uses: docker://s390x/golang:1.14 + with: + args: go version coverage_amd64_job: needs: [ amd64_job ] if: github.event_name == 'push' From 3e6b098b525a04bb9a4272b4c6cfc189d9fe74e0 Mon Sep 17 00:00:00 2001 From: Armando Faz Date: Wed, 3 Jun 2020 01:45:44 -0700 Subject: [PATCH 14/15] tre --- .github/workflows/ci-actions.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 850c4aff6..8241e833b 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -52,6 +52,7 @@ jobs: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - uses: docker://s390x/golang:1.14 with: + options: --platform linux/s390x args: go version coverage_amd64_job: needs: [ amd64_job ] From c5de9ade30449ad9475a0f0bb4da96b6bd44bd75 Mon Sep 17 00:00:00 2001 From: armfazh Date: Thu, 11 Jun 2020 13:29:41 -0700 Subject: [PATCH 15/15] Trying with fedora. --- .github/actions/fedora-s390x/Dockerfile | 8 ++++++++ .github/actions/fedora-s390x/action.yml | 7 +++++++ .github/actions/fedora-s390x/entry.sh | 10 ++++++++++ .github/workflows/ci-actions.yml | 19 ++++++++----------- 4 files changed, 33 insertions(+), 11 deletions(-) create mode 100644 .github/actions/fedora-s390x/Dockerfile create mode 100644 .github/actions/fedora-s390x/action.yml create mode 100755 .github/actions/fedora-s390x/entry.sh diff --git a/.github/actions/fedora-s390x/Dockerfile b/.github/actions/fedora-s390x/Dockerfile new file mode 100644 index 000000000..b2a0030e1 --- /dev/null +++ b/.github/actions/fedora-s390x/Dockerfile @@ -0,0 +1,8 @@ +FROM --platform=linux/s390x multiarch/fedora:29-s390x + +COPY entry.sh /entry.sh + +RUN sh -c 'curl https://dl.google.com/go/go1.14.4.linux-s390x.tar.gz | tar xz -C /usr/local' +RUN ln -s /usr/local/go/bin/go /usr/local/bin/go + +ENTRYPOINT ["sh", "/entry.sh"] diff --git a/.github/actions/fedora-s390x/action.yml b/.github/actions/fedora-s390x/action.yml new file mode 100644 index 000000000..43f5d8218 --- /dev/null +++ b/.github/actions/fedora-s390x/action.yml @@ -0,0 +1,7 @@ +--- +name: 'fedora-s390x' +description: 'builds golang inside linux/s390x' + +runs: + using: 'docker' + image: 'Dockerfile' diff --git a/.github/actions/fedora-s390x/entry.sh b/.github/actions/fedora-s390x/entry.sh new file mode 100755 index 000000000..dcd6f306c --- /dev/null +++ b/.github/actions/fedora-s390x/entry.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +sh -c "echo $*" +echo "Hello" +date +pwd +ls +uname -a +GODEBUG=asyncpreemptoff=1 go test -v ./math/... +date diff --git a/.github/workflows/ci-actions.yml b/.github/workflows/ci-actions.yml index 8241e833b..a8bdcef83 100644 --- a/.github/workflows/ci-actions.yml +++ b/.github/workflows/ci-actions.yml @@ -1,3 +1,4 @@ +--- name: CIRCL on: push: @@ -34,28 +35,24 @@ jobs: run: go build -v ./... - name: Testing run: go test -v ./... - exotic_job: - name: Go-${{matrix.CFG[2]}}/${{matrix.CFG[0]}} + s390x_job: + name: Go-1.14/s390x runs-on: ubuntu-18.04 - strategy: - matrix: - CFG: [ [s390x,s390x,1.14], [arm64,arm64v8,1.14] ] steps: - uses: actions/checkout@v2 - name: Enabling Docker Experimental run: | - echo $'{\n "experimental": true\n}' | sudo tee /etc/docker/daemon.json + echo $'{\n\t"experimental": true\n}' | sudo tee /etc/docker/daemon.json sudo service docker restart - name: Pulling Images run: | docker pull -q multiarch/qemu-user-static + docker pull -q multiarch/fedora:29-s390x docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - - uses: docker://s390x/golang:1.14 - with: - options: --platform linux/s390x - args: go version + - name: Testing + uses: ./.github/actions/fedora-s390x coverage_amd64_job: - needs: [ amd64_job ] + needs: [amd64_job] if: github.event_name == 'push' runs-on: ubuntu-18.04 name: amd64/coverage