diff --git a/.eslintrc.js b/.eslintrc.js index c04f76e..0417439 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,6 +1,6 @@ /** @type {import("eslint").Linter.Config} */ module.exports = { - ignorePatterns: ["node_modules/*", "dist/*", "*.config.js", "__mocks__/src/*"], + ignorePatterns: ["node_modules/*", "dist/*", "*.config.js", "__mocks__/src/*", ".eslintrc.js"], env: { browser: true, es6: true, diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..fdcbca9 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,43 @@ +name: CI + +on: + push: + +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + +jobs: + ci: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: "npm" + - name: Setup Go + uses: actions/setup-go@v5 + with: + go-version: "1.21.1" + - run: go version + - name: Git Identity + run: | + git config --global user.name 'github-actions[bot]' + git config --global user.email 'github-actions[bot]@users.noreply.github.com' + git remote set-url origin https://x-access-token:${GITHUB_TOKEN}@github.com/$GITHUB_REPOSITORY + - name: Install + run: | + npm ci . + npm run install:go + - name: Build + run: npm run build + - name: Lint + run: | + go install honnef.co/go/tools/cmd/staticcheck@latest + npm run lint + - name: Format + run: npm run format + - name: Test + run: npm run test