Add GitHub Actions for tool setup and code quality checks

Introduced new GitHub Actions workflows for installing necessary tools (PNPM, Node.js) and dependencies. Also added jobs to perform code quality checks using Astro and ESLint to ensure code quality and standards.
This commit is contained in:
Emil Gulamov 2024-03-19 17:22:09 +04:00
parent 87cf339241
commit 400022bd8d
2 changed files with 61 additions and 0 deletions

18
.github/actions/install/action.yml vendored Normal file
View file

@ -0,0 +1,18 @@
name: Install Tools & Dependencies
description: Installs pnpm, Node.js & package dependencies
runs:
using: composite
steps:
- name: Setup PNPM
uses: pnpm/action-setup@v3
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 18
cache: pnpm
- name: Install dependencies
run: pnpm install
shell: bash

43
.github/workflows/ci.yml vendored Normal file
View file

@ -0,0 +1,43 @@
name: Code Quality Check
on:
push:
branches: [main]
pull_request:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request_target' && github.head_ref || github.ref }}
cancel-in-progress: true
env:
NODE_OPTIONS: "--max_old_space_size=4096"
jobs:
astrocheck:
name: Check for type issues with astro check
runs-on: ubuntu-latest
env:
FORCE_COLOR: true
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Tools & Dependencies
uses: ./.github/actions/install
- name: Run Astro Check
run: pnpm run check
eslint:
name: Check for code issues with ESLint
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Tools & Dependencies
uses: ./.github/actions/install
- name: Run ESLint
run: pnpm run lint:eslint