1#!/bin/sh
2set -e
3FILES="
4 asn1.js oids.js defs.js base64.js hex.js int10.js dom.js rfcdef.js test.js tags.js
5 index.css index-dark.css index.js index.html
6 README.md LICENSE
7 updateOID.sh check.sh
8 examples
9"
10mtn automate tags it.lapo.asn1js | \
11 awk '/^revision/ { print substr($2, 2, length($2) - 2)}' | \
12 while read rev; do
13 mtn automate certs $rev | awk -v q='"' '
14 $2 == q "date" q { rdate=NR+1 }
15 $2 == q "tag" q { rtag=NR+1 }
16 NR == rdate { date=substr($2, 2, 10) }
17 NR == rtag { tag=substr($2, 2, length($2)-2) }
18 END { print date " " tag }
19 '
20 done | sort -r | awk -v q='"' '
21 BEGIN {
22 print "(typeof define != " q "undefined" q " ? define : function (factory) { " q "use strict" q ";";
23 print " if (typeof module == " q "object" q ") module.exports = factory();";
24 print " else window.tags = factory();";
25 print "})(function () {";
26 print q "use strict" q ";";
27 print "return {"
28 }
29 { print " " q $2 q ":" q $1 q "," }
30 END { print "};});" }
31 ' > tags.js
32type gsha256sum >/dev/null && SHA256=gsha256sum || SHA256=sha256sum
33$SHA256 -t $FILES | gpg --clearsign > sha256sums.asc
347z a -tzip -mx=9 asn1js.zip $FILES sha256sums.asc
35rsync -Pvrtz asn1js.zip $FILES lapo.it:www/asn1js/