Auto relay exchange transactions (#227)

* auto relay exchange transactions

* docker + auto-relay-tx

* clippy

* jsonrpsee in Cargo.lock ???

* fix tests compilation

* Show sccache

* mute clippy

* move

* Update relays/ethereum/src/exchange.rs

Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>

* finish comment

* (bool, String) -> StringifiedMaybeConnectionError

* Update deployments/rialto/docker-compose.yml

Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>

Co-authored-by: Denis S. Soldatov aka General-Beck <general.beck@gmail.com>
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>
This commit is contained in:
Svyatoslav Nikolsky
2020-07-27 14:58:14 +03:00
committed by Bastian Köcher
parent 112eb86b8f
commit c4424e5b73
17 changed files with 1165 additions and 231 deletions
-13
View File
@@ -14,7 +14,6 @@
// You should have received a copy of the GNU General Public License
// along with Parity Bridges Common. If not, see <http://www.gnu.org/licenses/>.
use crate::ethereum_types::{EthereumHeaderId, TransactionHash as EthereumTransactionHash};
use crate::sync_types::MaybeConnectionError;
use jsonrpsee::client::RequestError;
@@ -103,10 +102,6 @@ pub enum EthereumNodeError {
/// An invalid Substrate block number was received from
/// an Ethereum node.
InvalidSubstrateBlockNumber,
/// Block includes the same transaction more than once.
DuplicateBlockTransaction(EthereumHeaderId, EthereumTransactionHash),
/// Block is missing transaction we believe is a part of this block.
BlockMissingTransaction(EthereumHeaderId, EthereumTransactionHash),
}
impl ToString for EthereumNodeError {
@@ -122,14 +117,6 @@ impl ToString for EthereumNodeError {
}
Self::IncompleteTransaction => "Incomplete Ethereum Transaction (missing required field - raw)".to_string(),
Self::InvalidSubstrateBlockNumber => "Received an invalid Substrate block from Ethereum Node".to_string(),
Self::DuplicateBlockTransaction(header_id, tx_hash) => format!(
"Ethereum block {}/{} includes Ethereum transaction {} more than once",
header_id.0, header_id.1, tx_hash,
),
Self::BlockMissingTransaction(header_id, tx_hash) => format!(
"Ethereum block {}/{} is missing Ethereum transaction {} which we believe is a part of this block",
header_id.0, header_id.1, tx_hash,
),
}
}
}