...
1# release
2
3## _install.sh
4
5The template for the install script in the root of the d2 repository.
6
7### gen_install.sh
8
9Generates the install.sh script in the root of the repository by prepending the libraries
10it depends on from ../sub/lib.
11
12## release.sh
13
14- ./release.sh is the top level script to generate a new release.
15 Run with --help for usage.
16
17## build.sh
18
19- ./build.sh builds the release archives for each platform into ./build/<VERSION>/*.tar.gz
20 Run with --help for usage.
21
22> note: Remember for production releases you need to set the $TSTRUCT_OS_ARCH_BUILDER
23> variables as we must compile d2 directly on each release target to include dagre.
24> See https://github.com/terrastruct/d2/issues/31
25
26Use `--host-only` to build only the release for the host's `$OS-$ARCH` pair.
27
28### build_docker.sh
29
30Helper script called by build.sh to build D2 on each linux runner inside Docker.
31The Dockerfile is in ./linux/Dockerfile
32
33### _build.sh
34
35Called by build.sh (with --local or macOS) or build_docker.sh (on linux) to create the
36release archive.
37
38Do not invoke directly. If you want to produce a build for a single platform run build.sh
39as so:
40
41```sh
42 # To only build the linux-amd64 release.
43./build.sh --run=linux-amd64
44```
45
46```sh
47 # To only build the linux-amd64 release locally.
48./build.sh --local --run=linux-amd64
49```
View as plain text