name: Push to Main CI on: push: branches: - main permissions: contents: write packages: write jobs: build-and-package: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Setup Deno uses: denoland/setup-deno@v2 with: deno-version: v2.x - name: Install Dependencies run: deno install - name: Cache Deno dependencies uses: actions/cache@v4 with: path: | ~/.cache/deno ./deno.lock key: ${{ runner.os }}-deno-${{ hashFiles('**/deno.lock') }} restore-keys: | ${{ runner.os }}-deno- - name: Cache Dependencies run: deno cache src/index.tsx - name: Run linter run: deno task lint - name: Check formatter run: deno task format --check - name: Run tests run: deno task test - name: Build Package run: deno task build