diff --git a/.github/workflows/links.yaml b/.github/workflows/links.yaml new file mode 100644 index 000000000..ff359bbf3 --- /dev/null +++ b/.github/workflows/links.yaml @@ -0,0 +1,64 @@ +name: Check Links + +on: + push: + branches: + - master + paths: + - '**/README.md' + - 'packages/www/**' + pull_request: + paths: + - '**/README.md' + - 'packages/www/**' + workflow_dispatch: + +jobs: + readme: + if: ${{ github.repository_owner == 'nuejs' || github.event_name == 'workflow_dispatch' }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Check README links + uses: lycheeverse/lychee-action@v2 + with: + lycheeVersion: nightly + args: > + --no-progress + --include-fragments + --exclude-path "node_modules" + --exclude "localhost" + --root-dir "." + -- + "**/README.md" + token: ${{ secrets.GITHUB_TOKEN }} + + site: + if: ${{ github.repository_owner == 'nuejs' || github.event_name == 'workflow_dispatch' }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Build docs + uses: ./.github/workflows/repo/build-page + with: + root: packages/www/ + + # keep server running in background + - name: Run server + run: | + cd packages/www/ + nue preview & + + - name: Check site links + uses: lycheeverse/lychee-action@v2 + with: + lycheeVersion: nightly + args: > + --no-progress + --include-fragments + --remap "http://localhost:4040/@ https://nuejs.org/@" + -- + `find packages/www/.dist/ -name "*.html" -printf "http://localhost:4040/%P "` + token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/links.yaml.disabled b/.github/workflows/links.yaml.disabled deleted file mode 100644 index 0104c4251..000000000 --- a/.github/workflows/links.yaml.disabled +++ /dev/null @@ -1,78 +0,0 @@ -name: Check Links - -on: - push: - branches: - - master - paths: - - '**/README.md' - - 'packages/nuejs.org/**' - pull_request: - paths: - - '**/README.md' - - 'packages/nuejs.org/**' - workflow_dispatch: - -jobs: - readme: - if: ${{ github.repository_owner == 'nuejs' || github.event_name == 'workflow_dispatch' }} - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Check README links - uses: lycheeverse/lychee-action@v2 - with: - args: > - --no-progress - --include-fragments - --exclude-path "node_modules" - --exclude "localhost" - --base "." - -- - "**/README.md" - token: ${{ secrets.GITHUB_TOKEN }} - - site: - if: ${{ github.repository_owner == 'nuejs' || github.event_name == 'workflow_dispatch' }} - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Build docs - uses: ./.github/workflows/repo/build-page - with: - root: packages/nuejs.org - - # keep server running in background - - name: Run server - run: nue -pr packages/nuejs.org -P 8080 & - - # find generated HTML files, convert paths to urls - # (might be superfluous in the future with some fixes on lychee) - - name: Find files to check - id: files - run: | - links=$(find packages/nuejs.org/.dist/prod -name "*.html" -printf "http://localhost:8080/%P ") - echo "links=$links" >> $GITHUB_OUTPUT - - - name: Check site links - uses: lycheeverse/lychee-action@v2 - with: - args: > - --no-progress - --include-fragments - --accept "403, 429, 503, 999" - --remap "http://localhost:8080/@ https://nuejs.org/@" - --remap "http://localhost:8080/todomvc https://nuejs.org/todomvc" - --remap "http://localhost:8080/glow-demo https://nuejs.org/glow-demo" - --remap "http://localhost:8080/docs/nuejs/examples https://nuejs.org/docs/nuejs/examples" - --remap "http://localhost:8080/docs/tutorials https://nuejs.org/docs/tutorials" - --remap "http://localhost:8080/hyper/demo/ https://nuejs.org/hyper/demo/" - --exclude "http://localhost:8080/docs/how-it-works.html" - --exclude "http://localhost:8080/img/mpa-build.mp4" - --exclude "http://localhost:8080/404.html" - --exclude "https?://x.com/" - -- - ${{ steps.files.outputs.links }} - token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/repo/build-page/action.yaml b/.github/workflows/repo/build-page/action.yaml index b8f170475..6cae95fa9 100644 --- a/.github/workflows/repo/build-page/action.yaml +++ b/.github/workflows/repo/build-page/action.yaml @@ -19,9 +19,11 @@ runs: shell: bash run: | bun install - cd packages/nuekit/ + cd "packages/nuekit/" bun link - name: Build Nue Project shell: bash - run: nue build -pr "${{ inputs.root }}" + run: | + cd "${{ inputs.root }}" + nue build