Skip to content
This repository has been archived by the owner on Mar 19, 2024. It is now read-only.

Commit

Permalink
ci: init github actions workflows
Browse files Browse the repository at this point in the history
  • Loading branch information
hanspagel committed Jan 29, 2024
1 parent b9a6146 commit a1127a5
Show file tree
Hide file tree
Showing 13 changed files with 232 additions and 0 deletions.
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: 2

updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
open-pull-requests-limit: 5
21 changes: 21 additions & 0 deletions .github/workflows/auto-approve.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# https://github.com/marketplace/actions/auto-approve
name: Auto Approve

on:
pull_request:
branches:
- main

jobs:
auto-approve:
runs-on: ubuntu-20.04
permissions:
pull-requests: write

steps:
- name: Dump GitHub context
env:
GITHUB_CONTEXT: ${{ toJson(github) }}
run: echo "$GITHUB_CONTEXT"
- uses: hmarr/auto-approve-action@v3
if: github.actor == 'hanspagel' && github.head_ref == 'changeset-release/main'
37 changes: 37 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: CI

on:
pull_request:
branches:
- main

jobs:
lint:
runs-on: ubuntu-20.04
strategy:
matrix:
node-version: [18, 20, 21]

steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
with:
version: 8
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
- name: Turborepo cache
uses: dtinth/setup-github-actions-caching-for-turbo@v1
- if: matrix.node-version == 20
name: Check code style
run: pnpm format:check
- name: Build
run: pnpm turbo build
- name: Check types
run: pnpm turbo types:check
- name: Run tests
run: pnpm turbo test
21 changes: 21 additions & 0 deletions .github/workflows/lint-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Lint the PR Title

on:
pull_request_target:
types:
- opened
- edited
- synchronize

permissions:
pull-requests: read

jobs:
lint:
name: Validate PR title
runs-on: ubuntu-latest
steps:
# https://github.com/marketplace/actions/semantic-pull-request
- uses: amannn/action-semantic-pull-request@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
48 changes: 48 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Release

on:
push:
branches:
- main

concurrency: ${{ github.workflow }}-${{ github.ref }}

jobs:
release:
name: Release
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20]

steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
with:
version: 8
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
- name: Turborepo cache
uses: dtinth/setup-github-actions-caching-for-turbo@v1
- name: Build
run: pnpm turbo build
- name: Create Release Pull Request or Publish to npm
id: changesets
uses: changesets/action@v1
with:
# The pull request title.
title: 'chore: release'
# The command to update version, edit CHANGELOG, read and delete changesets.
version: 'pnpm run bump'
# The commit message to use.
commit: 'chore: version packages'
# The command to use to build and publish packages
publish: 'pnpm -r publish --access public'
env:
GITHUB_TOKEN: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
Empty file added .turbo/cookies/0.cookie
Empty file.
Empty file added .turbo/cookies/1.cookie
Empty file.
Empty file added .turbo/cookies/2.cookie
Empty file.
Empty file added .turbo/cookies/3.cookie
Empty file.
3 changes: 3 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,8 @@
},
"dependencies": {
"@changesets/cli": "^2.27.1"
},
"devDependencies": {
"turbo": "^1.11.3"
}
}
10 changes: 10 additions & 0 deletions packages/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,21 @@
{
"name": "@scalar/cli",
"description": "A command-line interface to work with OpenAPI files",
"license": "MIT",
"author": "Scalar (https://github.com/scalar)",
"homepage": "https://github.com/scalar/scalar",
"bugs": "https://github.com/scalar/scalar/issues/new/choose",
"keywords": ["scalar", "openapi", "swagger", "cli"],
"engines": {
"node": ">=18"
},
"scripts": {
"@scalar/cli": "pnpm vite-node src/index.ts",
"test": "vitest",
"lint": "pnpm dlx @biomejs/biome lint .",
"format": "pnpm dlx @biomejs/biome check . --apply",
"cli:link": "pnpm run build && npm unlink -g && npm link",
"types:check": "tsc --noEmit --skipLibCheck",
"build": "rm -Rf dist/ && tsc && rollup -c"
},
"type": "module",
Expand Down
64 changes: 64 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions turbo.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"$schema": "https://turbo.build/schema.json",
"pipeline": {
"lint": {},
"build": {
"outputs": ["dist/**"],
"dependsOn": ["^build"]
},
"types:check": {
"dependsOn": ["^build"]
},
"test": {
"dependsOn": ["^build"]
}
}
}

0 comments on commit a1127a5

Please sign in to comment.