snapshot of https://github.com/ueberdosis/tiptap.git (main, 2026-09-15; blobs > 131072B omitted)
Some checks failed
Verify / Install node dependencies (push) Failing after 2s
Verify / Build packages (push) Has been skipped
Verify / Check linting & formatting (push) Has been skipped
Verify / Run unit tests (push) Has been skipped
Verify / Run e2e tests (shard 1/4) (push) Has been skipped
Verify / Run e2e tests (shard 2/4) (push) Has been skipped
Verify / Run e2e tests (shard 3/4) (push) Has been skipped
Verify / Run e2e tests (shard 4/4) (push) Has been skipped
Publish / Resolve publish config (push) Failing after 2s
Publish / Send notification to Slack (push) Has been skipped
Publish / Send failure notification to Slack (push) Failing after 8s
Verify / Merge e2e reports (push) Has been skipped
Publish / Build (push) Has been skipped
Publish / Bump Versions OR Release to Registry (push) Has been skipped
Some checks failed
Verify / Install node dependencies (push) Failing after 2s
Verify / Build packages (push) Has been skipped
Verify / Check linting & formatting (push) Has been skipped
Verify / Run unit tests (push) Has been skipped
Verify / Run e2e tests (shard 1/4) (push) Has been skipped
Verify / Run e2e tests (shard 2/4) (push) Has been skipped
Verify / Run e2e tests (shard 3/4) (push) Has been skipped
Verify / Run e2e tests (shard 4/4) (push) Has been skipped
Publish / Resolve publish config (push) Failing after 2s
Publish / Send notification to Slack (push) Has been skipped
Publish / Send failure notification to Slack (push) Failing after 8s
Verify / Merge e2e reports (push) Has been skipped
Publish / Build (push) Has been skipped
Publish / Bump Versions OR Release to Registry (push) Has been skipped
This commit is contained in:
167
.github/workflows/build.yml
vendored
Normal file
167
.github/workflows/build.yml
vendored
Normal file
@@ -0,0 +1,167 @@
|
||||
name: Verify
|
||||
|
||||
env:
|
||||
NODE_VERSION: 24
|
||||
VP_GIT_HOOKS: 0
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
- next
|
||||
- release/*
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
- next
|
||||
- release/*
|
||||
|
||||
jobs:
|
||||
install-node-dependencies:
|
||||
name: Install node dependencies
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 15
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- uses: ./.github/actions/setup-env
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'true'
|
||||
|
||||
- name: Install dependencies
|
||||
run: vp install --frozen-lockfile -- --strict-peer-dependencies
|
||||
|
||||
build-packages:
|
||||
name: Build packages
|
||||
runs-on: ubuntu-latest
|
||||
needs: install-node-dependencies
|
||||
timeout-minutes: 20
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- uses: ./.github/actions/setup-env
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'true'
|
||||
|
||||
- uses: ./.github/actions/restore-dependencies
|
||||
|
||||
- name: Build packages
|
||||
run: vp run build && vp run build:demos
|
||||
|
||||
- name: Check package exports
|
||||
run: vp run check:package-exports
|
||||
|
||||
check-linting-formatting:
|
||||
name: Check linting & formatting
|
||||
runs-on: ubuntu-latest
|
||||
needs: install-node-dependencies
|
||||
timeout-minutes: 15
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- uses: ./.github/actions/setup-env
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'true'
|
||||
|
||||
- uses: ./.github/actions/restore-dependencies
|
||||
|
||||
- name: Run linting and formatting checks
|
||||
run: vp check
|
||||
|
||||
run-unit-tests:
|
||||
name: Run unit tests
|
||||
runs-on: ubuntu-latest
|
||||
needs: install-node-dependencies
|
||||
timeout-minutes: 20
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- uses: ./.github/actions/setup-env
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'true'
|
||||
|
||||
- uses: ./.github/actions/restore-dependencies
|
||||
|
||||
- name: Run unit tests
|
||||
run: vp test
|
||||
|
||||
run-e2e-tests:
|
||||
name: Run e2e tests (shard ${{ matrix.shard }}/${{ matrix.total }})
|
||||
runs-on: ubuntu-latest
|
||||
needs: build-packages
|
||||
timeout-minutes: 30
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
shard: [1, 2, 3, 4]
|
||||
total: [4]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- uses: ./.github/actions/setup-env
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'true'
|
||||
|
||||
- uses: ./.github/actions/restore-dependencies
|
||||
|
||||
- uses: ./.github/actions/setup-playwright
|
||||
|
||||
- name: Run Playwright tests
|
||||
run: vp exec playwright test --project=chromium --shard=${{ matrix.shard }}/${{ matrix.total }}
|
||||
|
||||
- name: Upload blob report
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: e2e-blob-report-${{ matrix.shard }}
|
||||
path: blob-report
|
||||
retention-days: 7
|
||||
|
||||
merge-e2e-reports:
|
||||
name: Merge e2e reports
|
||||
runs-on: ubuntu-latest
|
||||
needs: [install-node-dependencies, run-e2e-tests]
|
||||
if: always() && needs.install-node-dependencies.result == 'success'
|
||||
timeout-minutes: 10
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- uses: ./.github/actions/setup-env
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'true'
|
||||
|
||||
- uses: ./.github/actions/restore-dependencies
|
||||
|
||||
- name: Download blob reports
|
||||
uses: actions/download-artifact@v8
|
||||
with:
|
||||
path: all-blob-reports
|
||||
pattern: e2e-blob-report-*
|
||||
merge-multiple: true
|
||||
|
||||
- name: Merge into HTML report
|
||||
if: ${{ hashFiles('all-blob-reports/**') != '' }}
|
||||
run: vp exec playwright merge-reports --reporter html ./all-blob-reports
|
||||
|
||||
- name: Upload merged HTML report
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: playwright-html-report
|
||||
path: playwright-report
|
||||
retention-days: 14
|
||||
40
.github/workflows/notify.yml
vendored
Normal file
40
.github/workflows/notify.yml
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
name: Notify
|
||||
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
|
||||
jobs:
|
||||
discord_notify:
|
||||
name: Send release to Discord
|
||||
if: github.event_name == 'release'
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Post release to Discord (tsickert/discord-webhook)
|
||||
uses: tsickert/discord-webhook@v7.0.0
|
||||
with:
|
||||
webhook-url: ${{ secrets.DISCORD_RELEASES_STABLE_WEBHOOK }}
|
||||
embed-title: ${{ github.event.release.name || github.event.release.tag_name }}
|
||||
embed-description: ${{ github.event.release.body }}
|
||||
embed-url: ${{ github.event.release.html_url }}
|
||||
wait: true
|
||||
|
||||
slack_release_notify:
|
||||
name: Send release to Slack
|
||||
if: github.event_name == 'release'
|
||||
runs-on: ubuntu-latest
|
||||
permissions: {}
|
||||
steps:
|
||||
- name: Send Slack release notification
|
||||
uses: slackapi/slack-github-action@v4.0.0
|
||||
with:
|
||||
webhook: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
webhook-type: webhook-trigger
|
||||
payload: |
|
||||
{
|
||||
"message": ${{ toJSON(format('[Tiptap Editor {0}]: {1}\nRelease title: {2}\n{3}', github.event.release.prerelease && 'Pre-release' || 'Release', github.event.release.name || github.event.release.tag_name, github.event.release.html_url, github.event.release.body || 'No release notes provided.')) }}
|
||||
}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
165
.github/workflows/publish.yml
vendored
Normal file
165
.github/workflows/publish.yml
vendored
Normal file
@@ -0,0 +1,165 @@
|
||||
name: Publish
|
||||
|
||||
env:
|
||||
NODE_VERSION: 24
|
||||
VP_GIT_HOOKS: 0
|
||||
|
||||
# this branch only releases from main
|
||||
# other versions are released from their respective release/* branches
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref_name }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
resolve-config:
|
||||
name: Resolve publish config
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 5
|
||||
outputs:
|
||||
configured: ${{ steps.resolve.outputs.configured }}
|
||||
dist_tag: ${{ steps.resolve.outputs.dist_tag }}
|
||||
label: ${{ steps.resolve.outputs.label }}
|
||||
title: ${{ steps.resolve.outputs.title }}
|
||||
commit: ${{ steps.resolve.outputs.commit }}
|
||||
steps:
|
||||
- name: Checkout repo
|
||||
uses: actions/checkout@v7
|
||||
- name: Validate publish config
|
||||
run: node --test .github/scripts/__tests__/*.test.mjs
|
||||
- name: Look up branch in publish config
|
||||
id: resolve
|
||||
run: node .github/scripts/resolve-publish-config.mjs "${{ github.ref_name }}" >> "$GITHUB_OUTPUT"
|
||||
|
||||
build:
|
||||
name: Build
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 30
|
||||
needs: resolve-config
|
||||
if: needs.resolve-config.outputs.configured == 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- uses: ./.github/actions/setup-env
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'true'
|
||||
|
||||
- name: Install dependencies
|
||||
run: vp install --frozen-lockfile -- --strict-peer-dependencies
|
||||
|
||||
- name: Run build
|
||||
run: vp run build && vp run build:demos
|
||||
|
||||
- name: Check package exports
|
||||
run: vp run check:package-exports
|
||||
|
||||
- name: Archive package dist artifacts
|
||||
run: tar -cf package-dist-artifacts.tar packages/*/dist
|
||||
|
||||
- name: Upload package dist artifacts
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: package-dist-artifacts
|
||||
if-no-files-found: error
|
||||
path: package-dist-artifacts.tar
|
||||
|
||||
release:
|
||||
name: Bump Versions OR Release to Registry
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 30
|
||||
needs: [resolve-config, build]
|
||||
permissions:
|
||||
id-token: write
|
||||
contents: write
|
||||
pull-requests: write
|
||||
outputs:
|
||||
dist_tag: ${{ needs.resolve-config.outputs.dist_tag }}
|
||||
label: ${{ needs.resolve-config.outputs.label }}
|
||||
published: ${{ steps.changesets.outputs.published }}
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- uses: ./.github/actions/setup-env
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'true'
|
||||
|
||||
- name: Update npm for trusted publishing
|
||||
run: npm install -g npm@11.6.2
|
||||
|
||||
- name: Install dependencies
|
||||
run: vp install --frozen-lockfile -- --strict-peer-dependencies
|
||||
|
||||
- name: Download package dist artifacts
|
||||
uses: actions/download-artifact@v8
|
||||
with:
|
||||
name: package-dist-artifacts
|
||||
path: .
|
||||
|
||||
- name: Restore package dist artifacts
|
||||
run: tar -xf package-dist-artifacts.tar
|
||||
|
||||
- name: Verify package dist artifacts
|
||||
run: bash ./scripts/check-package-dists.sh && vp run check:package-exports
|
||||
|
||||
- name: Run changesets release flow
|
||||
id: changesets
|
||||
uses: changesets/action@v1
|
||||
with:
|
||||
createGithubReleases: false
|
||||
version: vp run version
|
||||
publish: vp exec changeset publish
|
||||
title: ${{ needs.resolve-config.outputs.title }}
|
||||
commit: ${{ needs.resolve-config.outputs.commit }}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
NPM_CONFIG_PROVENANCE: true
|
||||
NPM_CONFIG_ACCESS: public
|
||||
|
||||
notify-slack:
|
||||
name: Send notification to Slack
|
||||
runs-on: ubuntu-latest
|
||||
needs: release
|
||||
if: needs.release.outputs.published == 'true'
|
||||
timeout-minutes: 5
|
||||
permissions: {}
|
||||
steps:
|
||||
- name: Send Slack notification
|
||||
uses: slackapi/slack-github-action@v4.0.0
|
||||
with:
|
||||
webhook: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
webhook-type: webhook-trigger
|
||||
payload: |
|
||||
{
|
||||
"message": "[Tiptap Editor ${{ needs.release.outputs.label }}]: Published packages from branch ${{ github.ref_name }} with npm tag ${{ needs.release.outputs.dist_tag }}."
|
||||
}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
|
||||
notify-slack-failure:
|
||||
name: Send failure notification to Slack
|
||||
runs-on: ubuntu-latest
|
||||
needs: [resolve-config, release]
|
||||
if: always() && (needs.resolve-config.result == 'failure' || needs.release.result == 'failure')
|
||||
timeout-minutes: 5
|
||||
permissions: {}
|
||||
steps:
|
||||
- name: Send Slack failure notification
|
||||
uses: slackapi/slack-github-action@v4.0.0
|
||||
with:
|
||||
webhook: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
webhook-type: webhook-trigger
|
||||
payload: |
|
||||
{
|
||||
"message": "[Tiptap Editor Release]: There was an issue publishing packages from branch ${{ github.ref_name }}. Logs: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
|
||||
}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
Reference in New Issue
Block a user