fix: eslint #84
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: Tests | |
on: | |
schedule: | |
- cron: '0 0 * * SUN' | |
push: | |
branches: [master] | |
pull_request: | |
branches: [master] | |
jobs: | |
validations: | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
.venv | |
.cache | |
.wdm | |
.npm | |
node_modules | |
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json', '**/poetry.lock') }} | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- run: git checkout ${{ env.BRANCH }} | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: "3.11" | |
- uses: abatilo/actions-poetry@v2 | |
with: | |
poetry-version: latest | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: '*' | |
check-latest: true | |
- run: | | |
python -m pip install --upgrade pip | |
npm ci --cache .npm --prefer-offline | |
npm install --global npm | |
npm install | |
- name: flowjs | |
run: npx flow check | |
- name: eslint | |
run: npx eslint --color . | |
- name: Build dist/ files | |
run: npm run prod:build | |
- name: web-ext | |
run: npx -c "web-ext lint --ignore-files=src/js/**" | |
selenium: | |
name: Selenium Tests | |
needs: validations | |
strategy: | |
matrix: | |
# Use only lower and active versions | |
instance: [11.0, 15.0, 16.0, 17.0] | |
browser: [chrome, firefox] | |
fail-fast: true | |
runs-on: ubuntu-latest | |
timeout-minutes: 20 | |
steps: | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
.venv | |
.cache | |
.wdm | |
.npm | |
node_modules | |
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json', '**/poetry.lock') }} | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Switch to current branch | |
run: git checkout ${{ env.BRANCH }} | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: "3.11" | |
- uses: abatilo/actions-poetry@v2 | |
with: | |
poetry-version: latest | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: '*' | |
check-latest: true | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install poetry | |
npm ci --cache .npm --prefer-offline | |
npm install --global npm | |
poetry config virtualenvs.in-project true | |
poetry install | |
npm install | |
- name: Install browser firefox | |
uses: browser-actions/setup-firefox@latest | |
with: | |
firefox-version: "latest" | |
if: ${{ matrix.browser == 'firefox' }} | |
- name: Install browser chrome | |
uses: browser-actions/setup-chrome@latest | |
with: | |
chrome-version: "stable" | |
if: ${{ matrix.browser == 'chrome' }} | |
- name: Install xvfb | |
run: sudo apt-get install -y xvfb | |
- name: Create .zip package | |
run: npm run prod:build | |
- name: Run test for ${{ matrix.instance }} (${{ matrix.browser }}) | |
id: xtests | |
run: xvfb-run --auto-servernum npm run dev:tests -- --capture=no --browser ${{ matrix.browser }} --odoo-version ${{ matrix.instance }} |