Skip to content

feat: Add support for parsing and loading an object diff representation #57

feat: Add support for parsing and loading an object diff representation

feat: Add support for parsing and loading an object diff representation #57

name: lint-test-release
on:
push:
branches:
- main
pull_request:
permissions:
checks: write
contents: read
jobs:
# Run linter and tests against JS, TS, and YAML files
linttest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1
with:
node-version: "lts/*"
- uses: pnpm/action-setup@d882d12c64e032187b2edb46d3a0d003b7a43598
name: Install pnpm
with:
version: 8
run_install: false
- name: install dependencies
run: pnpm install --frozen-lockfile
- name: lint
run: pnpm lint
- name: test
run: pnpm test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: report
uses: mikepenz/action-junit-report@75b84e78b3f0aaea7ed7cf8d1d100d7f97f963ec # v4.0.0
if: always()
with:
report_paths: "junit.xml"
check_name: "test report"
# Cut a release tag based on conventional-commits and semantic-release, and publish it.
release:
runs-on: ubuntu-latest
needs: linttest
if: github.ref == 'refs/heads/main'
steps:
- name: Auth as CI/CD bot
id: generate_token
uses: tibdex/github-app-token@3beb63f4bd073e61482598c45c71c1019b59b73a # v2.1.0
with:
app_id: ${{ secrets.FENSAK_CICD_BOT_APP_ID }}
private_key: ${{ secrets.FENSAK_CICD_BOT_PRIVATE_KEY }}
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
with:
fetch-depth: 0
token: ${{ steps.generate_token.outputs.token }}
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1
with:
node-version: "lts/*"
- uses: pnpm/action-setup@d882d12c64e032187b2edb46d3a0d003b7a43598
name: Install pnpm
with:
version: 8
run_install: false
- name: install dependencies
run: pnpm install --frozen-lockfile
- name: build
run: pnpm build
- name: release
run: pnpm release
env:
GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
NPM_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}