ソースを参照

Use slither action (#3278)

Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
JulissaDantes 3 年 前
コミット
f85eb5b725
4 ファイル変更33 行追加25 行削除
  1. 28 0
      .github/workflows/slither.yml
  2. 0 23
      .github/workflows/test.yml
  3. 1 2
      package.json
  4. 4 0
      slither.config.json

+ 28 - 0
.github/workflows/slither.yml

@@ -0,0 +1,28 @@
+name: Slither Analysis
+on:
+  push:
+    branches:
+      - master
+      - release-v*
+  pull_request: {}
+  workflow_dispatch: {}
+
+jobs:
+  analyze:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v3
+      - uses: actions/setup-node@v3
+        with:
+          node-version: 12.x
+      - uses: actions/cache@v3
+        id: cache
+        with:
+          path: '**/node_modules'
+          key: npm-v2-${{ hashFiles('**/package-lock.json') }}
+          restore-keys: npm-v2-
+      - run: npm ci
+        if: steps.cache.outputs.cache-hit != 'true'
+      - name: Clean project         
+        run: npm run clean
+      - uses: crytic/slither-action@v0.1.0

+ 0 - 23
.github/workflows/test.yml

@@ -54,26 +54,3 @@ jobs:
         env:
           NODE_OPTIONS: --max_old_space_size=4096
       - uses: codecov/codecov-action@v2
-
-  slither:
-    runs-on: ubuntu-latest
-    steps:
-      - uses: actions/checkout@v3
-      - uses: actions/setup-node@v3
-        with:
-          node-version: 12.x
-      - uses: actions/cache@v3
-        id: cache
-        with:
-          path: '**/node_modules'
-          key: npm-v2-${{ hashFiles('**/package-lock.json') }}
-          restore-keys: npm-v2-
-      - run: npm ci
-        if: steps.cache.outputs.cache-hit != 'true'
-      - name: Set up Python
-        uses: actions/setup-python@v2
-
-      - name: Install dependencies
-        run: pip3 install slither-analyzer
-      - name: Summary of static analysis
-        run: npm run slither

+ 1 - 2
package.json

@@ -29,8 +29,7 @@
     "version": "scripts/release/version.sh",
     "test": "hardhat test",
     "test:inheritance": "node scripts/inheritanceOrdering artifacts/build-info/*",
-    "gas-report": "env ENABLE_GAS_REPORT=true npm run test",
-    "slither": "npm run clean && slither . --detect reentrancy-eth,reentrancy-no-eth,reentrancy-unlimited-gas --filter-paths contracts/mocks"
+    "gas-report": "env ENABLE_GAS_REPORT=true npm run test"
   },
   "repository": {
     "type": "git",

+ 4 - 0
slither.config.json

@@ -0,0 +1,4 @@
+{
+    "detectors_to_run": "reentrancy-eth,reentrancy-no-eth,reentrancy-unlimited-gas",
+    "filter_paths": "contracts/mocks"
+}