Skip to content

Commit

Permalink
ci: add test and validation pipeline
Browse files Browse the repository at this point in the history
  • Loading branch information
danijelTxFusion committed Jan 10, 2024
1 parent b1b2e14 commit c9871bd
Show file tree
Hide file tree
Showing 4 changed files with 115 additions and 2 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/publish.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Set up Python 3
uses: actions/setup-python@v4
with:
python-version: '3.9'
python-version: '3.10'
cache: 'pip' # caching pip dependencies
- name: Prepare build
run: python3 -m pip install --upgrade build
Expand Down
38 changes: 38 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Run tests
on:
workflow_dispatch:
pull_request:
branch: main
types: [ opened, reopened, synchronize ]

permissions:
contents: read # for checkout

jobs:
test:
name: Test
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up Python 3
uses: actions/setup-python@v4
with:
python-version: '3.10'
cache: 'pip' # caching pip dependencies
- name: Install dependencies
run: pip install -r requirements.txt
- name: Run local-setup
run: |
git clone https://github.com/matter-labs/local-setup.git
pushd local-setup
docker-compose up -d
popd
- name: Wait for local-setup to be ready
run: python scripts/wait.py
- name: Prepare environment
run: echo "Prepare env"
- name: Run tests
run: python -m unittest discover -s tests
74 changes: 74 additions & 0 deletions .github/workflows/validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: Validate
on:
pull_request:
branch: main
types: [ opened, reopened, synchronize ]

permissions:
contents: read # for checkout

jobs:
lint:
name: Check code format
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up Python 3
uses: actions/setup-python@v4
with:
python-version: '3.10'
cache: 'pip' # caching pip dependencies
- name: Install dependencies
run: pip install black
- name: Check code format
run: black --check zksync2
commits:
name: Check commits
runs-on: ubuntu-latest
if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: "lts/*"
- name: Install dependencies
run: npm install -g @commitlint/cli @commitlint/config-conventional
- name: Configure
run: |
echo 'module.exports = {"extends": ["@commitlint/config-conventional"]}' > commitlint.config.js
- name: Validate
run: |
git fetch
npx commitlint \
--from ${{ github.event.pull_request.head.sha }}~${{ github.event.pull_request.commits }} \
--to ${{ github.event.pull_request.head.sha }} \
--verbose
commits-fork:
name: Check commits from forks
runs-on: ubuntu-latest
if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: "lts/*"
- name: Install dependencies
run: npm install -g @commitlint/cli @commitlint/config-conventional
- name: Configure
run: |
echo 'module.exports = {"extends": ["@commitlint/config-conventional"]}' > commitlint.config.js
- name: Validate
run: |
git fetch origin "+refs/pull/${{ github.event.pull_request.number }}/head:refs/pull/${{ github.event.pull_request.number }}/head"
git checkout "refs/pull/${{ github.event.pull_request.number }}/head"
npx commitlint \
--from HEAD~${{ github.event.pull_request.commits }} \
--to HEAD \
--verbose
3 changes: 2 additions & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
eip712_structs == 1.1.0
web3==6.0.0
eth-tester
eth-tester
black

0 comments on commit c9871bd

Please sign in to comment.