annotate build_upload_web_nightly @ 2625:672540d71ea5

Add nightly build script for web builds
author Michael Pavone <pavone@retrodev.com>
date Sat, 22 Feb 2025 22:46:48 -0800
parents
children 0d7b538990f0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2625
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
1 #!/bin/sh
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
2 name=$1
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
3 . "$HOME/$name.params"
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
4 cd $HOME/$DIR
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
5 hg revert -a
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
6 hg pull
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
7 hg up
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
8 rev=`hg summary | sed -E -n 's/^parent: [^:]+:([^ ]+) .*$/\1/p'`
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
9 sed -i -E "s/(define BLASTEM_VERSION \"[^-]+)-pre\"/\1-pre-$rev\"/" version.inc
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
10 . $HOME/software/emsdk/emsdk_env.sh
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
11 make CC=emcc CPU=wasm m68k.o z80.o -j2
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
12 result=$?
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
13 if [ $result -ne 0 ]; then
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
14 echo Build falied with return code $result
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
15 curdate=`date -Iseconds`
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
16 curl -d'@-' -H 'Content-Type: application/json' "$WEBHOOKURL" <<WEBHOOKEOF
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
17 {
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
18 "embeds": [
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
19 {
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
20 "title": "Build $name failed!",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
21 "type": "rich",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
22 "description": "Build falied with return code $result",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
23 "timestamp": "$curdate",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
24 "color": 16711680
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
25 }
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
26 ]
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
27 }
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
28 WEBHOOKEOF
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
29 exit $result
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
30 make CC=emcc CPU=wasm blastem.html -j4
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
31 result=$?
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
32 if [ $result -ne 0 ]; then
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
33 echo Build falied with return code $result
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
34 curdate=`date -Iseconds`
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
35 curl -d'@-' -H 'Content-Type: application/json' "$WEBHOOKURL" <<WEBHOOKEOF
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
36 {
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
37 "embeds": [
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
38 {
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
39 "title": "Build $name failed!",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
40 "type": "rich",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
41 "description": "Build falied with return code $result",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
42 "timestamp": "$curdate",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
43 "color": 16711680
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
44 }
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
45 ]
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
46 }
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
47 WEBHOOKEOF
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
48 exit $result
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
49 fi
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
50 . $HOME/remote.params
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
51 echo "Uploaing blastem.wasm and blastem.js to $REMOTE_HOST"
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
52 scp -i "$REMOTE_IDENT" "$HOME/$DIR/$blastem.wasm" "$HOME/$DIR/$blastem.js" $REMOTE_USER@$REMOTE_HOST:/home/$REMOTE_USER/web
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
53 curdate=`date -Iseconds`
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
54 version=`sed -E 's/^[^"]+"([^"]+)"$/\1/' version.inc`
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
55 curl -d'@-' -H 'Content-Type: application/json' "$WEBHOOKURL" <<WEBHOOKEOF
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
56 {
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
57 "embeds": [
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
58 {
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
59 "title": "BlastEm Web (emscripten)",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
60 "type": "rich",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
61 "url": "https://www.retrodev.com/blastem/web/",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
62 "description": "New build of $name succeeded!",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
63 "timestamp": "$curdate",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
64 "color": 65280,
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
65 "fields": [
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
66 {
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
67 "name": "Version",
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
68 "value": "$version"
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
69 }
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
70 ]
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
71 }
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
72 ]
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
73 }
672540d71ea5 Add nightly build script for web builds
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
74 WEBHOOKEOF