diff --git a/.github/workflows/link-check.yml b/.github/workflows/link-check.yml new file mode 100644 index 000000000..f23450a96 --- /dev/null +++ b/.github/workflows/link-check.yml @@ -0,0 +1,53 @@ +name: Build and check Links + +on: + push: + branches: + - main + + pull_request: + types: [opened, synchronize, reopened] + +jobs: + build_and_serve: + runs-on: ubuntu-latest + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Set up Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: Install Dependencies + run: yarn install --frozen-lockfile + + - name: Build Next.js App + run: yarn build + + - name: Serve App Locally + run: yarn start & + + - name: Wait for App to Start + run: sleep 20 + + linkChecker: + runs-on: ubuntu-latest + needs: build_and_serve + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Link Checker + uses: lycheeverse/lychee-action@v1.9.0 + with: + fail: true + args: '--base http://localhost:3000 --verbose --no-progress **/*.md' + +# we should add here deployment steps here \ No newline at end of file diff --git a/.lycheeignore b/.lycheeignore new file mode 100644 index 000000000..d65cd0605 --- /dev/null +++ b/.lycheeignore @@ -0,0 +1 @@ +// add some link here that you dont want link-checker ci to check \ No newline at end of file