Update your oracle

The easy way

Run this unique command where the environment variables file is located (env_oracle). By default it is in the home directory.

curl -L https://moneyonchain.com/omoc_update.sh | bash

Basically this is a script that performs the procedure described in the next section but in a single step.

Procedure

To be transparent, this section explains the whole procedure. We recommend use the easy way.

Where docker runs, you need to execute these commands to update the oracle node. You must run them step by step in the following order:

1. Pull the new docker image

docker pull moneyonchain/omoc_node:latest 

2. Stop your oracle service

docker stop omoc-node

3. Remove your current oracle instance

docker rm omoc-node

4. Rebuild your oracle instance and run it

docker run -d --restart always --log-driver json-file --log-opt max-size=50M --log-opt max-file=15 --log-opt compress=true -p 5556:5556 --name omoc-node --env-file=/home/ubuntu/env_oracle moneyonchain/omoc_node:latest 

5. View the oracle log to make sure it is working properly (Optional)

docker logs -n 1 -t -f omoc-node

When you have seen enough press Ctrl + C to exit.

How to check the oracle version

Since 1.3.6.3version an oracle endpoint has been added to expose which version is running. The endpoint is http://<server-ip-address>:<port>/version where <server-ip-address> is the oracle's IP and <port> is the oracle's port number (by default it is 5556).

You can execute this command where docker runs:

curl http://localhost:<port>/version

Replacing <port> by the port number (usually 5556) and you get something like this:

user@host:~$ curl http://localhost:5556/version
{"version":"1.3.6.8"}

If you try to obtain this data in an prior 1.3.6.3 version oracle you will get as an answer. "The request was not made by a selected oracle."

Changelog

1.3.6.8 (latest) - Minor fixes related to security

  • Fix coinpair switch round gas price

1.3.6.7 - Minor fixes related to security

  • Fix coinpair switch round gas limit

  • Fix FastAPI DoS

1.3.6.6 - Minor updates related to the gas price and RIF prices source

  • Adds hard limits to the gas price

  • Adds local copy of contracts ABI

  • Adds new gas price log

  • Fix some RIF price sources

1.3.6.5 - Fix gas price issues

Related to the 20 Gwei spikes in the gas price that the RSK network node announces.

1.3.6.4 - Minor updates in doc and requirements

Minimal wording changes in readme.md and invalid and unrequired dependency removed from requisites.txt.

1.3.6.3 - Add endpoints for node version and information

Two endpoints were added:

  • /version returns json-formatted version of the oracle-node

  • /info returns extra-information about oracle-node state

1.3.6.2 - Improve error responses when a sign request is rejected

When an oracle-node is requested to sign a price, and a publishing required condition isn’t meet it will report back which condition fails. In case an exception is produced it will report the exception. Also if there’s no information about the exception the message was improved.

1.3.6.1 - Owner address instead of oracle address

With this change the oracle-node invokes a contract requiring the oracle’s owner address not only with the oracle itself address but also with its owner address. In this way, we made it compatible with newer and older contract versions.

Last updated