diff --git a/cyphernodeconf_docker/templates/installer/docker/docker-compose.yaml b/cyphernodeconf_docker/templates/installer/docker/docker-compose.yaml index cddc003..f1a4bbe 100644 --- a/cyphernodeconf_docker/templates/installer/docker/docker-compose.yaml +++ b/cyphernodeconf_docker/templates/installer/docker/docker-compose.yaml @@ -160,6 +160,9 @@ services: environment: - "TRACING=1" - "OTSCLIENT_LISTENING_PORT=6666" + <% if (net === 'testnet') { %> + - "TESTNET=1" + <% } %> volumes: - "<%= otsclient_datapath %>:/otsfiles" - "<%= otsclient_datapath %>/bitcoin.conf:/.bitcoin/bitcoin.conf" diff --git a/otsclient_docker/script/otsclient.sh b/otsclient_docker/script/otsclient.sh index 50caaa4..66d9a09 100644 --- a/otsclient_docker/script/otsclient.sh +++ b/otsclient_docker/script/otsclient.sh @@ -1,5 +1,7 @@ #!/bin/sh +# There an OTS server on testnet: ots.test4mind.com + . ./trace.sh stamp() { @@ -12,9 +14,15 @@ stamp() { local returncode local data - trace "[stamp] ots-cli.js stamp -d ${hash}" - result=$(cd /otsfiles && ots-cli.js stamp -d ${hash} 2>&1) - returncode=$? + if [ "${TESTNET}" -eq "1" ]; then + trace "[stamp] ots-cli.js stamp -c \"https://ots.testnet.kexkey.com\" -d ${hash}" + result=$(cd /otsfiles && ots-cli.js stamp -c "https://ots.testnet.kexkey.com" -d ${hash} 2>&1) + returncode=$? + else + trace "[stamp] ots-cli.js stamp -d ${hash}" + result=$(cd /otsfiles && ots-cli.js stamp -d ${hash} 2>&1) + returncode=$? + fi trace_rc ${returncode} trace "[stamp] result=${result}" @@ -51,9 +59,15 @@ upgrade() { local result local returncode - trace "[upgrade] ots-cli.js upgrade ${hash}.ots" - result=$(cd /otsfiles && ots-cli.js upgrade ${hash}.ots 2>&1) - returncode=$? + if [ "${TESTNET}" -eq "1" ]; then + trace "[upgrade] ots-cli.js -l \"https://testnet.calendar.kexkey.com/\" upgrade -c \"https://testnet.calendar.kexkey.com/\" ${hash}.ots" + result=$(cd /otsfiles && ots-cli.js -l "https://testnet.calendar.kexkey.com/" upgrade -c "https://testnet.calendar.kexkey.com/" ${hash}.ots 2>&1) + returncode=$? + else + trace "[upgrade] ots-cli.js upgrade ${hash}.ots" + result=$(cd /otsfiles && ots-cli.js upgrade ${hash}.ots 2>&1) + returncode=$? + fi trace_rc ${returncode} trace "[upgrade] result=${result}" @@ -97,12 +111,22 @@ verify() { # Let's create the OTS file locally from the base64 trace "[verify] Creating /otsfiles/otsfile-$$.ots" echo "${base64otsfile}" | base64 -d > /otsfiles/otsfile-$$.ots - trace "[verify] ots-cli.js verify -d ${hash} /otsfiles/otsfile-$$.ots" - result=$(ots-cli.js verify -d ${hash} /otsfiles/otsfile-$$.ots 2>&1) - returncode=$? + + if [ "${TESTNET}" -eq "1" ]; then + trace "[verify] ots-cli.js -l \"https://testnet.calendar.kexkey.com/\" verify -d ${hash} /otsfiles/otsfile-$$.ots" + result=$(ots-cli.js -l "https://testnet.calendar.kexkey.com/" verify -d ${hash} /otsfiles/otsfile-$$.ots 2>&1) + returncode=$? + else + trace "[verify] ots-cli.js verify -d ${hash} /otsfiles/otsfile-$$.ots" + result=$(ots-cli.js verify -d ${hash} /otsfiles/otsfile-$$.ots 2>&1) + returncode=$? + fi trace_rc ${returncode} trace "[verify] result=${result}" + trace "[verify] Removing temporary file /otsfiles/otsfile-$$.ots..." + rm /otsfiles/otsfile-$$.ots + # /script $ ots-cli.js -v v -d 7d694f669d6da235a5fb9ef8c89da55e30b59eb662a7131f85344d798fc3280c /otsfiles/Order_10019_1543447088465.ots # Assuming target hash is '7d694f669d6da235a5fb9ef8c89da55e30b59eb662a7131f85344d798fc3280c' # Success! Bitcoin block 551876 attests existence as of 2018-11-28 GMT diff --git a/proxy_docker/app/script/ots.sh b/proxy_docker/app/script/ots.sh index f034adf..55e94fd 100644 --- a/proxy_docker/app/script/ots.sh +++ b/proxy_docker/app/script/ots.sh @@ -202,14 +202,23 @@ serve_ots_backoffice() { url=$(echo "${row}" | cut -d '|' -f2) trace "[serve_ots_backoffice] url=${url}" - # Call back newly upgraded stamps - notify_web "${url}" - returncode=$? - trace_rc ${returncode} + # Call back newly upgraded stamps if url provided + if [ -n ${url} ]; then + trace "[serve_ots_backoffice] url is not empty, now trying to call it!" - # Even if curl executed ok, we need to make sure the http return code is also ok + notify_web "${url}" + returncode=$? + trace_rc ${returncode} + + # Even if curl executed ok, we need to make sure the http return code is also ok + + if [ "${returncode}" -eq "0" ]; then + sql "UPDATE stamp SET calledback=1 WHERE id=${id}" + trace_rc $? + fi + else + trace "[serve_ots_backoffice] url is empty, obviously won't try to call it!" - if [ "${returncode}" -eq "0" ]; then sql "UPDATE stamp SET calledback=1 WHERE id=${id}" trace_rc $? fi