Skip to content

CI: Aderyn Analysis #10

CI: Aderyn Analysis

CI: Aderyn Analysis #10

name: Aderyn Analyze
on:
push:
branches:
- mainnet
- testnet
- "feature/*"
- "features/*"
- "feat/*"
- "feats/*"
pull_request:
branches:
- mainnet
- testnet
- "feature/*"
- "features/*"
- "feat/*"
- "feats/*"
- "release/*"
env:
FOUNDRY_PROFILE: ci
jobs:
check:
strategy:
fail-fast: true
name: Foundry project
runs-on: ubuntu-latest
env:
ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY }}
INFURA_API_KEY: ${{ secrets.INFURA_API_KEY }}
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
with:
version: nightly-2b1f8d6dd90f9790faf0528e05e60e573a7569ce
- name: Install package with soldeer
run: forge soldeer install
- name: Recursively update dependencies
run: |
chmod +x ./update-deps.sh
./update-deps.sh
id: update-deps
- name: Install and Run Aderyn
run: |
# Install cyfrinup
curl -L https://raw.githubusercontent.com/Cyfrin/aderyn/dev/cyfrinup/install | bash
# Add cyfrinup and aderyn to PATH
# echo "$HOME/.cyfrin/bin" >> $GITHUB_PATH
export PATH="$HOME/.cyfrin/bin:$PATH"
cyfrinup
# Ensure aderyn is in PATH
# export PATH="$HOME/.local/bin:$PATH"
aderyn --no-snippets --highs-only --output report.md
- name: Find Comment
uses: peter-evans/find-comment@v2
if: github.event_name == 'pull_request'
id: fc
with:
issue-number: ${{ github.event.pull_request.number }}
comment-author: 'github-actions[bot]'
body-includes: Aderyn Analysis Report
- name: Create or Update Comment
uses: peter-evans/create-or-update-comment@v3
if: github.event_name == 'pull_request'
with:
comment-id: ${{ steps.fc.outputs.comment-id }}
issue-number: ${{ github.event.pull_request.number }}
body-file: report.md
edit-mode: replace
permissions:
pull-requests: write