Bump @typescript-eslint/eslint-plugin from 7.0.0 to 8.8.0 in /{{cookiecutter.repo_name}} #1272
Workflow file for this run
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
# In YAML, 'raw' and 'endraw' can't come at the beginning of a token or at the end of a quoted value, which is why they're in weird places. They are | |
# needed to escape YAML templating variables, which still allowing cookiecutter to replace the value of the repository name. | |
# Instructions to clear caches: | |
# 1) List all caches for this repo using the Github CLI: gh api -H "Accept: application/vnd.github+json" /repos/Lightmatter/django-hydra/actions/caches | |
# 2) Delete each cache id from the list, e.g.: gh api --method DELETE -H "Accept: application/vnd.github+json" /repos/Lightmatter/django-hydra/actions/caches/1 | |
name: Project CI | |
on: | |
push: | |
branches: | |
- 'master' | |
- 'develop' | |
pull_request: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
create_and_test_project: | |
name: Create and test Django project | |
runs-on: ubuntu-latest | |
env: | |
DATABASE_URL: "psql://postgres:postgres@localhost/postgres" | |
DJANGO_SECRET_KEY: "!!!! Change me !!!!" | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Install and configure Poetry | |
run: | | |
pipx install poetry==1.3.2 | |
poetry config virtualenvs.create true | |
poetry config virtualenvs.in-project false | |
poetry config installer.parallel true | |
- name: Install Python | |
uses: actions/setup-python@v4 | |
id: setup_python | |
with: | |
python-version-file: ".python-version" | |
cache: "poetry" | |
- name: Install Hydra dependencies | |
run: | | |
poetry env use ${{ steps.setup_python.outputs.python-version }} | |
poetry install --no-interaction --no-root | |
- name: Instantiate project using the values in cookiecutter.json | |
run: poetry run cookiecutter . --no-input --accept-hooks no | |
- name: Install Node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: lts/* | |
cache: "npm" | |
cache-dependency-path: "**/package-lock.json" | |
- name: Install + build NPM | |
working-directory: ./sampleapp | |
run: | | |
npm ci | |
npm run build | |
- name: Install Sample App dependencies | |
working-directory: ./sampleapp | |
run: | | |
poetry env use ${{ steps.setup_python.outputs.python-version }} | |
poetry install --no-interaction --no-root | |
poetry run playwright install chromium | |
- name: Run tests | |
working-directory: ./sampleapp | |
run: poetry run coverage run --source='.' -m pytest | |
services: | |
postgres: | |
image: postgres | |
env: | |
POSTGRES_PASSWORD: postgres | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
- 5432:5432 | |
dependabot_approve: | |
name: Approve Dependabot prs | |
runs-on: ubuntu-latest | |
permissions: | |
pull-requests: write | |
if: ${{ github.actor == 'dependabot[bot]' }} | |
needs: create_and_test_project | |
steps: | |
- name: Dependabot metadata | |
id: metadata | |
uses: dependabot/fetch-metadata@v1.1.1 | |
with: | |
github-token: "${{ secrets.GITHUB_TOKEN }}" | |
- name: Approve a PR | |
run: gh pr review --approve "$PR_URL" | |
env: | |
PR_URL: ${{github.event.pull_request.html_url}} | |
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | |
dependabot_merge: | |
name: Auto Merge Dependabot prs | |
runs-on: ubuntu-latest | |
permissions: | |
pull-requests: write | |
contents: write | |
if: ${{ github.actor == 'dependabot[bot]' }} | |
needs: dependabot_approve | |
steps: | |
- name: Dependabot metadata | |
id: metadata | |
uses: dependabot/fetch-metadata@v1.1.1 | |
with: | |
github-token: "${{ secrets.GITHUB_TOKEN }}" | |
- name: Enable auto-merge for Dependabot PRs | |
run: gh pr merge --auto --squash "$PR_URL" | |
env: | |
PR_URL: ${{github.event.pull_request.html_url}} | |
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} |