Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update migration page and small fixes #1776

Merged
merged 8 commits into from
Feb 22, 2024
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
34 changes: 29 additions & 5 deletions src/content/chainlink-automation/guides/migrate-to-v2.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,6 @@ If your upkeep is restricted to a single address calling it, you must give permi

The Chainlink Automation App offers a streamlined migration process for upkeeps using registry versions 1.2 and later. To migrate upkeeps with older versions, follow the [manual migration process](#migrating-older-upkeeps-manually) instead.

You can use the Chainlink Automation App to migrate one upkeep at a time, or [migrate multiple upkeeps using the block scanner](#migrating-upkeeps-using-block-scanner).

1. Navigate to the Chainlink Automation App, select the supported blockchain you're using, and connect your wallet.

<div class="remix-callout">
Expand All @@ -47,14 +45,33 @@ Upkeeps that are successfully migrated will show the following [transaction logs

<ClickToZoom src="/images/automation/v2-migration/migration-txn.png" />

### Migrating multiple upkeeps

If you have multiple upkeeps to migrate, you can do so in the Chainlink Automation App.

1. Click the link displays on your upkeeps dashboard. This link only displays if you have one or more upkeeps to migrate:
thedriftofwords marked this conversation as resolved.
Show resolved Hide resolved

<ClickToZoom src="/images/automation/v2-migration/1-bulk-migration-ui.png" />

1. Follow the prompts to approve and confirm the transactions to migrate your upkeep(s).
thedriftofwords marked this conversation as resolved.
Show resolved Hide resolved

<ClickToZoom src="/images/automation/v2-migration/approve-migration.png" />

### Updating permissions
thedriftofwords marked this conversation as resolved.
Show resolved Hide resolved

Your new upkeep has a new [unique forwarder](#unique-forwarder) to increase security for your upkeep. This address will be the unique `msg.sender` for your upkeep. If your upkeep is restricted to a single address calling it, you must give permission to the forwarder address. Otherwise, Automation will no longer be able to execute your function.

1. The forwarder address becomes available after migrating your upkeep. You can find this in the Chainlink Automation App, within the upkeep's **Details** section:

<ClickToZoom src="/images/automation/v2-migration/forwarder-address.png" />

1. Update your contract to use the forwarder address by following the instructions in the [Forwarder](/chainlink-automation/guides/forwarder) page.

When the migration is complete:

- Your balance is transferred to the new registry automatically.
- The new upkeep details page shows the updated registry address and a forwarder address. The forwarder address is a new [unique forwarder](#unique-forwarder) to increase security for your upkeep. This address will be the unique `msg.sender` for your upkeep. If your upkeep is restricted to a single address calling it, you must give permission to the forwarder address. Otherwise, Automation will no longer be able to execute your function.
- Read the [migration checklist](#migration-checklist) to understand further updates you may need to make in your contracts.

<ClickToZoom src="/images/automation/v2-migration/details-with-forwarder.png" />

## Migrating upkeeps using block scanner

To migrate one or more upkeeps using the scanner:
Expand All @@ -69,6 +86,13 @@ To migrate one or more upkeeps using the scanner:

1. Execute the `migrateUpkeeps` function and confirm the transaction. When this transaction is confirmed, your upkeeps will be migrated to the latest registry, and each upkeep will have a [unique forwarder](#unique-forwarder) address.

1. Update your contract to use the forwarder address by following the instructions in the [Forwarder](/chainlink-automation/guides/forwarder) page.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Update your contract to use the forwarder address by following the instructions in the [Forwarder](/chainlink-automation/guides/forwarder) page.
1. Update your contract to use the forwarder address by following the instructions on the [Forwarder](/chainlink-automation/guides/forwarder) page.


When the migration is complete:
thedriftofwords marked this conversation as resolved.
Show resolved Hide resolved

- Your balance is transferred to the new registry automatically.
- Read the [migration checklist](#migration-checklist) to understand further updates you may need to make in your contracts.
thedriftofwords marked this conversation as resolved.
Show resolved Hide resolved

## Migrating older upkeeps manually

For upkeeps on registry versions 1.0 and 1.1, you must migrate upkeeps manually:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ Click the tabs below to use Chainlink Automation with each type of trigger:

1. Navigate to the [Chainlink Automation app](https://automation.chain.link/) and connect to **Arbitrum Sepolia** in the top dropdown menu.

1. Connect your cryptocurrency wallet to the app if you haven't done so already. You may also need to fetch Arbitrum Sepolia testnet LINK [here](https://automation.chain.link/arbitrum-sepolia).
1. Connect your cryptocurrency wallet to the app if you haven't done so already. You may also need to fetch Arbitrum Sepolia testnet LINK [here](https://faucets.chain.link/arbitrum-sepolia).
thedriftofwords marked this conversation as resolved.
Show resolved Hide resolved

1. Click **Register new Upkeep** and select **Custom logic** trigger.

Expand All @@ -92,9 +92,9 @@ Click the tabs below to use Chainlink Automation with each type of trigger:

1. Navigate to the [Chainlink Automation app](https://automation.chain.link/) and connect to **Arbitrum Sepolia** in the top dropdown menu.

1. Connect your cryptocurrency wallet to the app if you haven't done so already. You may also need to fetch Arbitrum Sepolia testnet LINK [here](https://automation.chain.link/arbitrum-sepolia).
1. Connect your cryptocurrency wallet to the app if you haven't done so already. You may also need to fetch Arbitrum Sepolia testnet LINK [here](https://faucets.chain.link/arbitrum-sepolia).
thedriftofwords marked this conversation as resolved.
Show resolved Hide resolved

1. Click **Register new Upkeep** and select **log trigger**.
1. Click **Register new Upkeep** and select **Log trigger**.

1. Under _Contract to automate_, enter <Address contractUrl="https://sepolia.arbiscan.io/address/0xe817e4A71C69C72C01B31906F9F8591FbaB6b448" />. This is a simple `iLogAutomation`-compatible example contract that increments a counter when a log is detected. View the source code [here](https://sepolia.arbiscan.io/address/0xe817e4A71C69C72C01B31906F9F8591FbaB6b448#code). Click **Next**.

Expand Down
Loading