influxdb/scripts/ci/xcc-builds
Daniel Moran 9b02820a0f
build: upgrade to go1.16 (#21642)
* build: bump to go 1.16
* build: go mod tidy & update godeps CI step
2021-06-09 12:59:05 -04:00
..
.gitignore build: rewrite our CI/CD pipeline to make ARM64 docker build work (#20484) 2021-01-11 15:01:09 -08:00
README.md build: rewrite our CI/CD pipeline to make ARM64 docker build work (#20484) 2021-01-11 15:01:09 -08:00
build-aarch64-musl-gcc.sh build: rewrite our CI/CD pipeline to make ARM64 docker build work (#20484) 2021-01-11 15:01:09 -08:00
build-amd64-musl-gcc.sh build: rewrite our CI/CD pipeline to make ARM64 docker build work (#20484) 2021-01-11 15:01:09 -08:00
build-osxcross-clang.sh build: upgrade to go1.16 (#21642) 2021-06-09 12:59:05 -04:00

README.md

Cross-compiler Builds

The scripts in this directory are used to build cross-compilers for InfluxDB from source. We build & cache these artifacts separately to speed up cross-builds in CI.

Building archives

The build scripts are stand-alone, any required variables are defined as constants within their shell code. Running a script will produce a new .tar.gz archive under out/ in this directory. Archives are named after the version(s) of the software they contain + a build timestamp.

Uploading builds

After building a new archive, follow these steps to add it to our CI image:

  1. Log into the Errplane AWS console. Credentials are hosted in 1Password, within the Engineering vault.
  2. Navigate to dl.influxdata.com/influxdb-ci in the S3 console.
  3. Navigate to the appropriate sub-directory of influxdb-ci for the archive you're uploading. The path varies by cross-compiler.
    • Native AMD64 musl-gcc is hosted under musl/<musl-version>/
    • Cross-compilers for musl-gcc (i.e. ARM64) are hosted under musl/<musl-version>/musl-cross/<musl-cross-make-version>/
    • Cross-compilers for macOS clang are hosted under osxcross/<osxcross-hash>/
  4. Use the S3 console to upload the .tar.gz archive into the directory.
  5. Update our CircleCI config to point at the new archive.