Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
115 changes: 0 additions & 115 deletions .circleci/config.yml

This file was deleted.

28 changes: 28 additions & 0 deletions .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: 'Setup Environment'
description: 'Common setup steps for all jobs'
inputs:
node-version:
description: 'Node.js version to use'
required: false
default: '18.20.5'

runs:
using: 'composite'
steps:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ inputs.node-version }}
cache: 'yarn'

- name: Install dependencies
shell: bash
run: |
yarn install --frozen-lockfile
yarn install --cwd sample --frozen-lockfile

- name: Inject env file
shell: bash
run: |
echo "export const APP_ID = 'app_id';" >> sample/src/env.ts
echo "export const INITIAL_ROUTE = 'route';" >> sample/src/env.ts
76 changes: 76 additions & 0 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
name: Build and Test

on:
pull_request:
branches:
- '**'
push:
branches:
- main

jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup environment
uses: ./.github/actions/setup

- name: Run linting
run: yarn lint

typescript:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup environment
uses: ./.github/actions/setup

- name: TypeScript check
run: yarn typescript

sample-typescript:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup environment
uses: ./.github/actions/setup

- name: Sample TypeScript check
run: yarn sample:tsc

unit-tests:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup environment
uses: ./.github/actions/setup

- name: Run unit tests
run: yarn test --coverage

- name: Upload coverage reports
uses: actions/upload-artifact@v4
with:
name: coverage
path: coverage

build-package:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup environment
uses: ./.github/actions/setup

- name: Build package
run: yarn build
Loading