chore(deps): bump tar from 6.1.11 to 6.2.1 #21
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Main | |
on: | |
push: | |
branches: | |
- master | |
- "push-action/**" | |
pull_request: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
main-build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Node and pnpm | |
uses: silverhand-io/actions-node-pnpm-run-steps@v4 | |
- name: Build | |
run: pnpm ci:build | |
main-lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Node and pnpm | |
uses: silverhand-io/actions-node-pnpm-run-steps@v4 | |
- name: Prepack | |
run: pnpm prepack | |
- name: Lint | |
run: pnpm ci:lint | |
- name: Stylelint | |
run: pnpm ci:stylelint | |
main-test: | |
runs-on: buildjet-4vcpu-ubuntu-2204 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Node and pnpm | |
uses: silverhand-io/actions-node-pnpm-run-steps@v4 | |
- name: Build for test | |
run: pnpm -r build:test | |
- name: Test | |
run: pnpm ci:test | |
- name: Codecov core | |
uses: codecov/codecov-action@v4 | |
with: | |
flags: core | |
directory: ./packages/core | |
- name: Codecov ui | |
uses: codecov/codecov-action@v4 | |
with: | |
flags: ui | |
directory: ./packages/ui | |
main-dockerize: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
build-args: | # Test cloud build | |
additional_connector_args=--cloud | |
main-alteration: | |
runs-on: ubuntu-latest | |
steps: | |
# ** Checkout fresh and alteration ref ** | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
path: ./fresh | |
# Fetch the current version by finding the latest tag starts with "v", e.g. "v1.0.0-beta.19" | |
- id: version | |
working-directory: ./fresh | |
run: echo "current=$(git describe --match "@logto/core@*" --abbrev=0)" >> $GITHUB_OUTPUT | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ steps.version.outputs.current }} | |
path: ./alteration | |
# ** End ** | |
- name: Copy lockfile # Make setup workflow happy | |
run: cp ./fresh/pnpm-lock.yaml ./ | |
- name: Setup Node and pnpm | |
uses: silverhand-io/actions-node-pnpm-run-steps@v4 | |
with: | |
run-install: false | |
# ** Prepack packages ** | |
- name: Prepack fresh | |
working-directory: ./fresh | |
run: pnpm i && pnpm prepack | |
- name: Prepack alteration | |
working-directory: ./alteration | |
run: pnpm i && pnpm prepack | |
# ** End ** | |
- name: Setup Postgres | |
uses: ikalnytskyi/action-setup-postgres@v5 | |
# ** Setup up-to-date databases and compare (test `up`) ** | |
- name: Setup fresh database | |
working-directory: ./fresh | |
run: pnpm cli db seed --test | |
env: | |
DB_URL: postgres://postgres:postgres@localhost:5432/fresh | |
- name: Setup alteration database | |
working-directory: ./alteration | |
run: | | |
cd packages/cli | |
pnpm start db seed | |
env: | |
DB_URL: postgres://postgres:postgres@localhost:5432/alteration | |
# FIXME: Last version of CLI doesn't support test data seeding. Here's a temporary workaround. | |
# We will remove this step when a new version of CLI is released. | |
- name: Setup alteration database test data | |
working-directory: ./fresh | |
run: pnpm cli db seed --legacy-test-data | |
env: | |
DB_URL: postgres://postgres:postgres@localhost:5432/alteration | |
- name: Run alteration scripts | |
working-directory: ./fresh | |
run: pnpm cli db alt deploy next | |
env: | |
ALTERATION_TEST: true | |
DB_URL: postgres://postgres:postgres@localhost:5432/alteration | |
- name: Compare databases | |
working-directory: ./fresh | |
run: node .scripts/compare-database.js fresh alteration | |
# ** End ** | |
# ** Setup old databases and compare (test `down`) ** | |
- name: Setup old database | |
working-directory: ./alteration | |
run: | | |
cd packages/cli | |
pnpm start db seed | |
env: | |
DB_URL: postgres://postgres:postgres@localhost:5432/old | |
# FIXME: Last version of CLI doesn't support test data seeding. Here's a temporary workaround. | |
# We will remove this step when a new version of CLI is released. | |
- name: Setup old database test data | |
working-directory: ./fresh | |
run: pnpm cli db seed --legacy-test-data | |
env: | |
DB_URL: postgres://postgres:postgres@localhost:5432/old | |
- name: Revert fresh database to old | |
working-directory: ./fresh | |
run: pnpm cli db alt r v$(echo ${{ steps.version.outputs.current }} | cut -d@ -f3) | |
env: | |
ALTERATION_TEST: true | |
DB_URL: postgres://postgres:postgres@localhost:5432/fresh | |
- name: Compare manifests | |
working-directory: ./fresh | |
run: node .scripts/compare-database.js fresh old | |
# ** End ** | |
- name: Check alteration sequence | |
working-directory: ./fresh | |
run: node .scripts/check-alterations-sequence.js |