blob: 5f18f6248ec1f0303f37ba9a859873a2aa3fd75a [file] [log] [blame]
Matthias Andreas Benkardd31973a2026-08-22 21:38:29 +02001#!/bin/sh
Matthias Andreas Benkarda5d55442026-08-23 08:31:49 +02002# SPDX-FileCopyrightText: 2020 Matthias Andreas Benkard <code@mail.matthias.benkard.de>
3# SPDX-License-Identifier: AGPL-3.0-or-later
4
Matthias Andreas Benkardd31973a2026-08-22 21:38:29 +02005# Baut die Browserfassung und schiebt sie zu Cloudflare Workers (README § 15).
6#
7# 1. ./mvnw -Pwasm package — erzeugt target/web und lässt deploy/webpaket.sh darüber
8# laufen (wasm-opt, Quelltext-Tarball, 25-MiB-Prüfung). Bricht bei uneingecheckten
9# Änderungen ab, denn der beigelegte Quelltext muss der gebaute sein.
10# 2. wrangler deploy — lädt target/web nach wrangler.toml hoch.
11#
12# JAVA_HOME muss auf Oracle GraalVM 25.1 oder neuer zeigen; ist es nicht gesetzt, wird
13# /Library/Java/JavaVirtualMachines/graalvm-25.jdk genommen.
14#
15# Aufruf: deploy/cloudflare.sh [--nur-bauen | --nur-hochladen]
16
17set -eu
18
19wurzel="$(CDPATH='' cd -- "$(dirname -- "$0")/.." && pwd)"
20cd "$wurzel"
21
22: "${JAVA_HOME:=/Library/Java/JavaVirtualMachines/graalvm-25.jdk/Contents/Home}"
23export JAVA_HOME
24
25bauen=1
26hochladen=1
27case "${1:-}" in
28 --nur-bauen) hochladen=0 ;;
29 --nur-hochladen) bauen=0 ;;
30 '') ;;
31 *) echo "cloudflare: unbekannte Angabe „$1“ (--nur-bauen | --nur-hochladen)" >&2; exit 2 ;;
32esac
33
34if [ "$bauen" = 1 ]; then
35 ./mvnw -Pwasm package
36fi
37
38if [ "$hochladen" = 1 ]; then
39 if command -v wrangler >/dev/null 2>&1; then
40 wrangler deploy
41 else
42 npx --yes wrangler deploy
43 fi
44fi