tracking PR, do not merge #1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Check Storage Layout Changes | |
on: | |
pull_request: | |
branches: [main] | |
paths: | |
- 'solidity/**' | |
workflow_dispatch: | |
jobs: | |
diff-check: | |
runs-on: ubuntu-latest | |
steps: | |
# Checkout the PR branch | |
- name: Checkout PR branch | |
uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
submodules: recursive | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 18 | |
- name: yarn-cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
**/node_modules | |
.yarn | |
key: ${{ runner.os }}-yarn-cache-${{ hashFiles('./yarn.lock') }} | |
- name: yarn-install | |
run: yarn install | |
- name: foundry-install | |
uses: onbjerg/foundry-toolchain@v1 | |
# Run the command on PR branch | |
- name: Run command on PR branch | |
run: yarn workspace @hyperlane-xyz/core storage HEAD-storage | |
# Checkout the target branch (base) | |
- name: Checkout target branch (base) contracts | |
env: | |
BASE_REF: ${{ github.event.pull_request.base.sha }} | |
run: | | |
git fetch origin $BASE_REF | |
git checkout $BASE_REF -- solidity/contracts | |
# Run the command on the target branch | |
- name: Run command on target branch | |
run: yarn workspace @hyperlane-xyz/core storage base-storage | |
# Compare outputs | |
- name: Compare outputs | |
run: diff --unified solidity/base-storage solidity/HEAD-storage > layout.diff | |
- name: Comment PR with layout diff | |
uses: yorhodes/[email protected] | |
with: | |
header: Storage Layout Diff | |
filePath: layout.diff | |
mdLanguage: diff | |
comment_tag: storagelayoutdiff |