Update typescript-eslint monorepo to v6 #463
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
name: Lint and Test | |
on: | |
push: | |
branches-ignore: ['main'] | |
jobs: | |
repo_ids: | |
runs-on: ubuntu-latest | |
outputs: | |
repo_name: ${{ steps.repo_ids.outputs.REPO_NAME }} | |
org_name: ${{ steps.repo_ids.outputs.ORG_NAME }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Get repository identifiers | |
id: repo_ids | |
run: | | |
REPO_NAME=$(echo "${{ github.event.repository.name }}" | tr '[:upper:]' '[:lower:]') | |
ORG_NAME=$(echo "${{ github.event.repository.owner.name }}" | tr '[:upper:]' '[:lower:]') | |
echo "REPO_NAME=$REPO_NAME" >> $GITHUB_OUTPUT | |
echo "ORG_NAME=$ORG_NAME" >> $GITHUB_OUTPUT | |
lint: | |
name: Run lint | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@master | |
with: | |
node-version: 18.x | |
- name: Use npm latest | |
run: npm install -g npm@latest | |
- name: Cache Node.js modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.npm # npm cache files are stored in `~/.npm` on Linux/macOS | |
key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.OS }}-node- | |
${{ runner.OS }}- | |
- name: Install Packages | |
run: npm ci | |
- name: Lint | |
run: npm run lint | |
dependency-check: | |
name: Run dependency check | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@master | |
with: | |
node-version: 18.x | |
- name: Use npm latest | |
run: npm install -g npm@latest | |
- name: Cache Node.js modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.npm # npm cache files are stored in `~/.npm` on Linux/macOS | |
key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.OS }}-node- | |
${{ runner.OS }}- | |
- name: Install Packages | |
run: npm ci | |
- name: Dependency Check | |
run: npm run depcheck | |
check-version: | |
name: 'Check version' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- run: git fetch --depth=1 --tags origin | |
- name: Install yq | |
run: sudo snap install yq | |
- name: Check Build Version | |
id: get_version | |
run: ./scripts/check-version.sh | |
shell: bash | |
- name: Error if version is not increased | |
shell: bash | |
run: | | |
exit $([[ "${{steps.get_version.outputs.IS_NEW_VERSION}}" = "true" ]] && echo 0 || echo 1) | |
tests: | |
name: Run tests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@master | |
with: | |
node-version: 18.x | |
- name: Use npm latest | |
run: npm install -g npm@latest | |
- name: Cache Node.js modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.npm # npm cache files are stored in `~/.npm` on Linux/macOS | |
key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.OS }}-node- | |
${{ runner.OS }}- | |
- name: Install Packages | |
run: npm ci | |
- name: Setup dependencies | |
run: docker-compose up -d | |
- name: Sleep | |
uses: kibertoad/wait-action@1.0.1 | |
with: | |
time: '30s' | |
- name: Run unit tests | |
run: npm run test:unit | |
- name: Run integration tests | |
run: npm run test |