diff options
author | Allen Wild <aswild@users.noreply.github.com> | 2021-03-20 13:37:50 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-20 13:37:50 -0400 |
commit | 6a1c3253e02427d3e7ad6389b624b1a38eae61e1 (patch) | |
tree | 9ef3eb77ee77a060b67b4478249689b8fc2f9353 /ci | |
parent | c7730d1f3a366e42fdd497a1e0db4bf090de415c (diff) |
ci: fix deb build script in clean checkout
If ripgrep hasn't been built yet (i.e. target/debug/ doesn't exist),
then cargo-out-dir can't find OUT_DIR and the copy commands fail. Fix by
running cargo build before finding OUT_DIR.
Also add a check to fail early with a sensible error message when
asciidoctor isn't installed, rather than failing because of a missing
rg.1 file after the build.
PR #1831
Diffstat (limited to 'ci')
-rwxr-xr-x | ci/build-deb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/ci/build-deb b/ci/build-deb index 4ea1308d..31f9b719 100755 --- a/ci/build-deb +++ b/ci/build-deb @@ -17,16 +17,21 @@ if ! command -V cargo-deb > /dev/null 2>&1; then exit 1 fi +if ! command -V asciidoctor > /dev/null 2>&1; then + echo "asciidoctor command missing" >&2 + exit 1 +fi + # 'cargo deb' does not seem to provide a way to specify an asset that is # created at build time, such as ripgrep's man page. To work around this, # we force a debug build, copy out the man page (and shell completions) # produced from that build, put it into a predictable location and then build # the deb, which knows where to look. +cargo build DEPLOY_DIR=deployment/deb OUT_DIR="$("$D"/cargo-out-dir target/debug/)" mkdir -p "$DEPLOY_DIR" -cargo build # Copy man page and shell completions. cp "$OUT_DIR"/{rg.1,rg.bash,rg.fish} "$DEPLOY_DIR/" |