From 25c90f2b139b740210c873ee9f8d6116be9fb4a4 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Tue, 5 Sep 2023 08:35:51 -0500 Subject: [PATCH] Revert "feat: add boringcrypto builds for linux (#9528)" This reverts commit 79cd6047dc82994113bececd0f8686dc255ca5b4. --- Makefile | 9 --------- buildinfo/boring.go | 7 ------- buildinfo/buildinfo.go | 4 ---- buildinfo/notboring.go | 5 ----- cli/version.go | 25 ++++++++++--------------- cli/version_test.go | 3 +-- scripts/build_go.sh | 22 +++------------------- 7 files changed, 14 insertions(+), 61 deletions(-) delete mode 100644 buildinfo/boring.go delete mode 100644 buildinfo/notboring.go diff --git a/Makefile b/Makefile index 088acdbefbb8c..65196d0a4bd1d 100644 --- a/Makefile +++ b/Makefile @@ -105,9 +105,6 @@ CODER_ARCH_IMAGE_PREREQUISITES := \ build/coder_$(VERSION)_%.tar.gz endif -# used to decide if we can build with boringcrypto -local_os:=$(shell go env GOHOSTOS) -local_arch:=$(shell go env GOHOSTARCH) clean: rm -rf build site/out @@ -225,12 +222,6 @@ $(CODER_ALL_BINARIES): go.mod go.sum \ build_args+=(--slim) fi - # boringcrypto is only supported on Linux - # boringcrypto uses CGO, which isn't supported when cross compiling architectures - if [[ "$$os" == "linux" ]] && [[ "${local_os}" == "linux" ]] && [[ "$$arch" == "${local_arch}" ]]; then - build_args+=(--boringcrypto) - fi - ./scripts/build_go.sh "$${build_args[@]}" if [[ "$$mode" == "slim" ]]; then diff --git a/buildinfo/boring.go b/buildinfo/boring.go deleted file mode 100644 index ec2f0b4e3c286..0000000000000 --- a/buildinfo/boring.go +++ /dev/null @@ -1,7 +0,0 @@ -//go:build boringcrypto - -package buildinfo - -import "crypto/boring" - -var boringcrypto = boring.Enabled() diff --git a/buildinfo/buildinfo.go b/buildinfo/buildinfo.go index bf35d4eca5143..bafd3a916bcf2 100644 --- a/buildinfo/buildinfo.go +++ b/buildinfo/buildinfo.go @@ -87,10 +87,6 @@ func IsAGPL() bool { return strings.Contains(agpl, "t") } -func IsBoringCrypto() bool { - return boringcrypto -} - // ExternalURL returns a URL referencing the current Coder version. // For production builds, this will link directly to a release. // For development builds, this will link to a commit. diff --git a/buildinfo/notboring.go b/buildinfo/notboring.go deleted file mode 100644 index 70799b2c8d1eb..0000000000000 --- a/buildinfo/notboring.go +++ /dev/null @@ -1,5 +0,0 @@ -//go:build !boringcrypto - -package buildinfo - -var boringcrypto = false diff --git a/cli/version.go b/cli/version.go index 70cac4f78d8e6..84e45fb74fe22 100644 --- a/cli/version.go +++ b/cli/version.go @@ -13,12 +13,11 @@ import ( // versionInfo wraps the stuff we get from buildinfo so that it's // easier to emit in different formats. type versionInfo struct { - Version string `json:"version"` - BuildTime time.Time `json:"build_time"` - ExternalURL string `json:"external_url"` - Slim bool `json:"slim"` - AGPL bool `json:"agpl"` - BoringCrypto bool `json:"boring_crypto"` + Version string `json:"version"` + BuildTime time.Time `json:"build_time"` + ExternalURL string `json:"external_url"` + Slim bool `json:"slim"` + AGPL bool `json:"agpl"` } // String() implements Stringer @@ -29,9 +28,6 @@ func (vi versionInfo) String() string { _, _ = str.WriteString("(AGPL) ") } _, _ = str.WriteString(vi.Version) - if vi.BoringCrypto { - _, _ = str.WriteString(" BoringCrypto") - } if !vi.BuildTime.IsZero() { _, _ = str.WriteString(" " + vi.BuildTime.Format(time.UnixDate)) @@ -49,12 +45,11 @@ func (vi versionInfo) String() string { func defaultVersionInfo() *versionInfo { buildTime, _ := buildinfo.Time() return &versionInfo{ - Version: buildinfo.Version(), - BuildTime: buildTime, - ExternalURL: buildinfo.ExternalURL(), - Slim: buildinfo.IsSlim(), - AGPL: buildinfo.IsAGPL(), - BoringCrypto: buildinfo.IsBoringCrypto(), + Version: buildinfo.Version(), + BuildTime: buildTime, + ExternalURL: buildinfo.ExternalURL(), + Slim: buildinfo.IsSlim(), + AGPL: buildinfo.IsAGPL(), } } diff --git a/cli/version_test.go b/cli/version_test.go index 76c4f4392fbd7..20068d29bf124 100644 --- a/cli/version_test.go +++ b/cli/version_test.go @@ -34,8 +34,7 @@ Full build of Coder, supports the  server  subcomm "build_time": "0001-01-01T00:00:00Z", "external_url": "https://github.com/coder/coder", "slim": false, - "agpl": false, - "boring_crypto": false + "agpl": false } ` for _, tt := range []struct { diff --git a/scripts/build_go.sh b/scripts/build_go.sh index bf435477fcb3e..df5ea96085242 100755 --- a/scripts/build_go.sh +++ b/scripts/build_go.sh @@ -2,7 +2,7 @@ # This script builds a single Go binary of Coder with the given parameters. # -# Usage: ./build_go.sh [--version 1.2.3-devel+abcdef] [--os linux] [--arch amd64] [--output path/to/output] [--slim] [--agpl] [--boringcrypto] +# Usage: ./build_go.sh [--version 1.2.3-devel+abcdef] [--os linux] [--arch amd64] [--output path/to/output] [--slim] [--agpl] # # Defaults to linux:amd64 with slim disabled, but can be controlled with GOOS, # GOARCH and CODER_SLIM_BUILD=1. If no version is specified, defaults to the @@ -22,9 +22,6 @@ # # If the --agpl parameter is specified, builds only the AGPL-licensed code (no # Coder enterprise features). -# -# If the --boringcrypto parameter is specified, builds use boringcrypto instead of -# the standard go crypto libraries. set -euo pipefail # shellcheck source=scripts/lib.sh @@ -37,9 +34,8 @@ slim="${CODER_SLIM_BUILD:-0}" sign_darwin="${CODER_SIGN_DARWIN:-0}" output_path="" agpl="${CODER_BUILD_AGPL:-0}" -boringcrypto=${CODER_BUILD_BORINGCRYPTO:-0} -args="$(getopt -o "" -l version:,os:,arch:,output:,slim,agpl,sign-darwin,boringcrypto -- "$@")" +args="$(getopt -o "" -l version:,os:,arch:,output:,slim,agpl,sign-darwin -- "$@")" eval set -- "$args" while true; do case "$1" in @@ -72,10 +68,6 @@ while true; do sign_darwin=1 shift ;; - --boringcrypto) - boringcrypto=1 - shift - ;; --) shift break @@ -148,15 +140,7 @@ cmd_path="./enterprise/cmd/coder" if [[ "$agpl" == 1 ]]; then cmd_path="./cmd/coder" fi - -cgo=0 -goexp="" -if [[ "$boringcrypto" == 1 ]]; then - cgo=1 - goexp="boringcrypto" -fi - -GOEXPERIMENT="$goexp" CGO_ENABLED="$cgo" GOOS="$os" GOARCH="$arch" GOARM="$arm_version" go build \ +CGO_ENABLED=0 GOOS="$os" GOARCH="$arch" GOARM="$arm_version" go build \ "${build_args[@]}" \ "$cmd_path" 1>&2