Actions

Deploy OCR Contract: Difference between revisions

From Chainlink Community Wiki

No edit summary
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 6: Line 6:
In the section after this one, Detailed Contract Deployment Instructions, you'll find links to other pages with in depth details and examples.
In the section after this one, Detailed Contract Deployment Instructions, you'll find links to other pages with in depth details and examples.


* Deploy two <code>SimpleWriteAccessController.sol</code> contracts
* Deploy two <code>'''SimpleWriteAccessController.sol'''</code> contracts
** One will be used as your <code>'''_BILLINGACCESSCONTROLLER'''</code>
** One will be used as your <code>'''_BILLINGACCESSCONTROLLER'''</code>
*** This Contract controls which addresses have the access to update the OCR billing values
*** This Contract controls which addresses have the access to update the OCR billing values
Line 35: Line 35:
=== '''Detailed Contract Deployment Instructions''' ===
=== '''Detailed Contract Deployment Instructions''' ===
{| class="wikitable sortable"
{| class="wikitable sortable"
!Deploy Two <code>SimpleWriteAccessController.sol</code> contracts
![[SimpleWriteAccessController Deployment|Deploying your  Two <code>SimpleWriteAccessController.sol</code> contracts]]
|-
|-
!Deploy <code>AccessControlledOffchainAggregator.sol</code> contract
![[AccessControlledOffchainAggregator Deployment|Deploying your <code>AccessControlledOffchainAggregator.sol</code> contract]]
|-
|-
!Add your Chainlink Nodes to the Offchain Aggregator
![[Adding Nodes to OCR AccessController|Addin/Removing Chainlink Nodes to Your OCR Contract's Requester AccessController]]
|-
|-
!Update The Offchain Aggregator's Billing Values
!Adding your Addresses to your OCR Contracts Billing Access Controller
|}
|}

Latest revision as of 15:25, 30 May 2022

This Page will provide the information necessary to deploy an OCR Aggregator.

Process Overview:

The below is a high level overview of the process.

In the section after this one, Detailed Contract Deployment Instructions, you'll find links to other pages with in depth details and examples.

  • Deploy two SimpleWriteAccessController.sol contracts
    • One will be used as your _BILLINGACCESSCONTROLLER
      • This Contract controls which addresses have the access to update the OCR billing values
    • The other will be used as your _REQUESTERACCESSCONTROLLER
      • This Contract controls which addresses have access to respond to the OCR contract (It whitelists the Nodes)
  • Be sure to track which of the contract addresses you'll use for each purpose.
  • With the SimpleWtriteAccessController.sol contract deployed, we will then be able to deploy the OCR Aggregator contract., or the AccessControlledOffchainAggregator.sol contract
    • The contract is available, in it's flattened version, here
    • When deploying the AccessControlledOffchainAggregator.sol contract, you'll need to specify the below constructor variables (for details, see the below section)
      • _MAXIMUMGASPRICE
      • _REASONABLEGASPRICE
      • _MICROLINKPERETH
      • _LINKGWEIPEROBSERVATION
      • _LINKGWEIPERTRANSMISSION
      • _LINK
      • _MINANSWER
      • _MAXANSWER
      • _BILLINGACCESSCONTROLLER
      • _REQUESTERACCESSCONTROLLER
      • _DECIMALS
      • DESCRIPTION
  • Once you have deployed the AccessControlledOffchainAggregator.sol contract, you'll need to update additional variables to enable the Chainlink Nodes to submit their observations.
    • you can find specific instructions to accomplish this in the section below.

Detailed Contract Deployment Instructions

Deploying your Two SimpleWriteAccessController.sol contracts
Deploying your AccessControlledOffchainAggregator.sol contract
Addin/Removing Chainlink Nodes to Your OCR Contract's Requester AccessController
Adding your Addresses to your OCR Contracts Billing Access Controller