d2/ci/release
2022-11-14 04:33:33 -08:00
..
builders ci: --dryrun -> --dry-run 2022-11-13 22:59:09 -08:00
changelogs 2022-11-12 10:29:39am 2022-11-13 22:49:45 -08:00
template install.sh: Get installs working 2022-11-14 02:13:37 -08:00
_build.sh install.sh: Get installs working 2022-11-14 02:13:37 -08:00
_install.sh install.sh: d2plugin-tala -> tala 2022-11-14 04:33:33 -08:00
build.sh install.sh: Get installs working 2022-11-14 02:13:37 -08:00
build_docker.sh ci/release: DRYRUN -> DRY_RUN 2022-11-13 23:20:30 -08:00
gen_install.sh install.sh: Add --tala support 2022-11-14 04:02:23 -08:00
README.md install.sh: Get installs working 2022-11-14 02:13:37 -08:00
release.sh install.sh: Get installs working 2022-11-14 02:13:37 -08:00
upload_assets.sh install.sh: Get installs working 2022-11-14 02:13:37 -08:00

release

_install.sh

The template for the install script in the root of the repository.

gen_install.sh

Generates the install.sh script in the root of the repository by prepending the libraries it depends on from ../sub/lib.

release.sh

  • ./release.sh is the top level script to generate a new release. Run with --help for usage.

upload_assets.sh

  • Called by ./release.sh to upload the assets for the release in $VERSION

build.sh

  • ./build.sh builds the release archives for each platform into ./build//*.tar.gz Run with --help for usage.

note: Remember for production releases you need to set the $TSTRUCT_OS_ARCH_BUILDER variables as we must compile d2 directly on each release target to include dagre. See https://github.com/terrastruct/d2/issues/31

Use --host-only to build only the release for the host's OS-ARCH pair.

build_docker.sh

Helper script called by build.sh to build D2 on each linux runner inside Docker. The Dockerfile is in ./builders/Dockerfile

_build.sh

Called by build.sh (with --local or macOS) or build_docker.sh (on linux) to create the release archive.

Do not invoke directly. If you want to produce a build for a single platform run build.sh as so:

 # To only build the linux-amd64 release.
./build.sh --run=linux-amd64
 # To only build the linux-amd64 release locally.
./build.sh --local --run=linux-amd64