diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 000000000..e5d191b9a --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,21 @@ +version: 2 +updates: + # GitHub Actions — track action version updates in workflows + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + open-pull-requests-limit: 5 + labels: + - "dependencies" + - "github-actions" + + # npm — track package updates in package.json + - package-ecosystem: "npm" + directory: "/" + schedule: + interval: "weekly" + open-pull-requests-limit: 10 + labels: + - "dependencies" + - "npm" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..94baa3aab --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,31 @@ +name: CI + +on: + push: + branches: + - main + pull_request: + +permissions: + actions: read + contents: write + +jobs: + main: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4 + with: + filter: tree:0 + fetch-depth: 0 + + - uses: oven-sh/setup-bun@f4d14e03ff726c06358e5557344e1da148b56cf7 # v1 + with: + bun-version: latest + - run: bun install --frozen-lockfile --ignore-scripts + - uses: nrwl/nx-set-shas@3e9ad7370203c1e93d109be57f3b72eb0eb511b1 # v4 + + - run: bunx nx@21.0.0 affected -t build + - run: bunx nx@21.0.0 affected -t lint test + - run: bunx nx@21.0.0 fix-ci + if: always() \ No newline at end of file diff --git a/nx.json b/nx.json index 3c307dce8..1aca0a9fe 100644 --- a/nx.json +++ b/nx.json @@ -1,7 +1,10 @@ { "$schema": "./node_modules/nx/schemas/nx-schema.json", "namedInputs": { - "default": ["{projectRoot}/**/*", "sharedGlobals"], + "default": [ + "{projectRoot}/**/*", + "sharedGlobals" + ], "production": [ "default", "!{projectRoot}/**/__tests__/**/*", @@ -11,23 +14,47 @@ }, "targetDefaults": { "build": { - "dependsOn": ["^build"], - "inputs": ["production", "^production"], + "dependsOn": [ + "^build" + ], + "inputs": [ + "production", + "^production" + ], + "outputs": [ + "{projectRoot}/dist" + ], "cache": true }, "test": { - "inputs": ["default", "^production"], + "dependsOn": [ + "build", + "^build" + ], + "inputs": [ + "default", + "^production" + ], "cache": true }, "lint": { - "inputs": ["default", "{workspaceRoot}/.eslintrc.json"], + "inputs": [ + "default", + "{workspaceRoot}/.eslintrc.json" + ], "cache": true }, "typecheck": { - "dependsOn": ["^build"], - "inputs": ["default", "^production"], + "dependsOn": [ + "^build" + ], + "inputs": [ + "default", + "^production" + ], "cache": true } }, - "nxCloudAccessToken": "" -} + "nxCloudAccessToken": "", + "nxCloudId": "6a7a1f08cff5d2abcf167263" +} \ No newline at end of file