@rharkor/caching-for-turbo 2.0.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@rharkor/caching-for-turbo",
3
3
  "description": "Sets up Turborepo Remote Caching to work with GitHub Actions built-in cache",
4
- "version": "2.0.0",
4
+ "version": "2.1.1",
5
5
  "private": false,
6
6
  "homepage": "https://github.com/rharkor/caching-for-turbo",
7
7
  "repository": {
@@ -21,73 +21,13 @@
21
21
  ".": "./dist/index.js"
22
22
  },
23
23
  "bin": {
24
- "turbogha": "./dist/cli.js"
24
+ "turbogha": "./dist/cli/index.js"
25
25
  },
26
26
  "type": "module",
27
27
  "engines": {
28
28
  "node": ">=20"
29
29
  },
30
- "scripts": {
31
- "bundle": "npm run format:write && npm run package",
32
- "coverage": "make-coverage-badge --output-path ./badges/coverage.svg",
33
- "format:write": "prettier --write .",
34
- "format:check": "prettier --check .",
35
- "lint": "eslint .",
36
- "package": "ncc build src/index.ts -o dist/setup --source-map --license licenses.txt && ncc build src/post.ts -o dist/post --source-map --license licenses.txt && ncc build src/cli.ts -o dist/cli --source-map --license licenses.txt",
37
- "package:watch": "npm run package -- --watch",
38
- "all": "npm run format:write && npm run lint && npm run coverage && npm run package",
39
- "test-build": "npm run -s package",
40
- "test": "turbo run test-build",
41
- "dev-run": "tsx ./src/dev-run.ts",
42
- "cleanup": "tsx ./src/dev/cleanup.ts",
43
- "start": "node dist/cli/index.js"
44
- },
45
30
  "license": "MIT",
46
- "dependencies": {
47
- "@actions/cache": "^4.0.0",
48
- "@actions/core": "^1.10.1",
49
- "@aws-sdk/client-s3": "^3.0.0",
50
- "@aws-sdk/lib-storage": "^3.0.0",
51
- "@rharkor/logger": "^1.3.1",
52
- "fastify": "^5.0.0",
53
- "filesize-parser": "^1.5.1",
54
- "parse-duration": "^2.1.4",
55
- "stream-to-promise": "^3.0.0",
56
- "wait-on": "^8.0.0"
57
- },
58
- "devDependencies": {
59
- "@eslint/js": "^9.24.0",
60
- "@jest/globals": "^30.0.0",
61
- "@types/node": "^22.0.0",
62
- "@types/stream-to-promise": "^2.2.4",
63
- "@types/wait-on": "^5.3.4",
64
- "@typescript-eslint/eslint-plugin": "^8.29.1",
65
- "@typescript-eslint/parser": "^8.29.1",
66
- "@vercel/ncc": "^0.38.1",
67
- "dotenv": "^16.4.7",
68
- "eslint": "^9.24.0",
69
- "eslint-plugin-github": "^6.0.0",
70
- "eslint-plugin-jest": "^29.0.0",
71
- "eslint-plugin-jsonc": "^2.16.0",
72
- "eslint-plugin-prettier": "^5.1.3",
73
- "globals": "^16.0.0",
74
- "make-coverage-badge": "^1.2.0",
75
- "prettier": "^3.3.2",
76
- "prettier-eslint": "^16.3.0",
77
- "ts-jest": "^29.1.4",
78
- "tsx": "^4.15.4",
79
- "turbo": "^2.0.3",
80
- "typescript": "^5.4.5",
81
- "typescript-eslint": "^8.29.1",
82
- "@semantic-release/changelog": "^6.0.3",
83
- "@semantic-release/commit-analyzer": "^13.0.0",
84
- "@semantic-release/git": "^10.0.1",
85
- "@semantic-release/github": "^11.0.0",
86
- "@semantic-release/npm": "^12.0.0",
87
- "@semantic-release/release-notes-generator": "^14.0.0",
88
- "conventional-changelog-conventionalcommits": "^9.0.0",
89
- "semantic-release": "^24.0.0"
90
- },
91
31
  "packageManager": "npm@11.4.2",
92
32
  "publishConfig": {
93
33
  "access": "public"
@@ -1,41 +0,0 @@
1
- {
2
- "name": "GitHub Actions (TypeScript)",
3
- "image": "mcr.microsoft.com/devcontainers/typescript-node:22",
4
- "postCreateCommand": "npm install",
5
- "customizations": {
6
- "codespaces": {
7
- "openFiles": ["README.md"]
8
- },
9
- "vscode": {
10
- "extensions": [
11
- "bierner.markdown-preview-github-styles",
12
- "davidanson.vscode-markdownlint",
13
- "dbaeumer.vscode-eslint",
14
- "esbenp.prettier-vscode",
15
- "github.copilot",
16
- "github.copilot-chat",
17
- "github.vscode-github-actions",
18
- "github.vscode-pull-request-github",
19
- "me-dutour-mathieu.vscode-github-actions",
20
- "redhat.vscode-yaml",
21
- "rvest.vs-code-prettier-eslint",
22
- "yzhang.markdown-all-in-one"
23
- ],
24
- "settings": {
25
- "editor.defaultFormatter": "esbenp.prettier-vscode",
26
- "editor.tabSize": 2,
27
- "editor.formatOnSave": true,
28
- "markdown.extension.list.indentationSize": "adaptive",
29
- "markdown.extension.italic.indicator": "_",
30
- "markdown.extension.orderedList.marker": "one"
31
- }
32
- }
33
- },
34
- "remoteEnv": {
35
- "GITHUB_TOKEN": "${localEnv:GITHUB_TOKEN}"
36
- },
37
- "features": {
38
- "ghcr.io/devcontainers/features/github-cli:1": {},
39
- "ghcr.io/devcontainers-contrib/features/prettier:1": {}
40
- }
41
- }
package/.gitattributes DELETED
@@ -1,3 +0,0 @@
1
- * text=auto eol=lf
2
-
3
- dist/** -diff linguist-generated=true
@@ -1,43 +0,0 @@
1
- # In TypeScript actions, `dist/` is a special directory. When you reference
2
- # an action with the `uses:` property, `dist/index.js` is the code that will be
3
- # run. For this project, the `dist/index.js` file is transpiled from other
4
- # source files. This workflow ensures the `dist/` directory contains the
5
- # expected transpiled code.
6
- #
7
- # If this workflow is run from a feature branch, it will act as an additional CI
8
- # check and fail if the checked-in `dist/` directory does not match what is
9
- # expected from the build.
10
- name: Type-check
11
-
12
- on:
13
- pull_request:
14
- branches:
15
- - main
16
-
17
- permissions:
18
- contents: read
19
-
20
- jobs:
21
- check-dist:
22
- name: Check dist/
23
- runs-on: ubuntu-latest
24
-
25
- steps:
26
- - name: Checkout
27
- id: checkout
28
- uses: actions/checkout@v4
29
-
30
- - name: Setup Node.js
31
- id: setup-node
32
- uses: actions/setup-node@v4
33
- with:
34
- node-version-file: .node-version
35
- cache: npm
36
-
37
- - name: Install Dependencies
38
- id: install
39
- run: npm ci
40
-
41
- - name: Build dist/ Directory
42
- id: build
43
- run: npm run bundle
@@ -1,152 +0,0 @@
1
- name: Test core functionality
2
-
3
- on:
4
- pull_request:
5
- branches:
6
- - main
7
- - dev
8
-
9
- workflow_dispatch:
10
-
11
- permissions:
12
- contents: read
13
-
14
- jobs:
15
- test-typescript:
16
- name: TypeScript Tests
17
- runs-on: ubuntu-latest
18
-
19
- steps:
20
- - name: Checkout
21
- id: checkout
22
- uses: actions/checkout@v4
23
-
24
- - name: Setup Node.js
25
- id: setup-node
26
- uses: actions/setup-node@v4
27
- with:
28
- node-version-file: .node-version
29
- cache: npm
30
-
31
- - name: Install Dependencies
32
- id: npm-ci
33
- run: npm ci
34
-
35
- - name: Check Format
36
- id: npm-format-check
37
- run: npm run format:check
38
-
39
- - name: Lint
40
- id: npm-lint
41
- run: npm run lint
42
-
43
- test-action:
44
- name: GitHub Actions Test (Linux)
45
- runs-on: ubuntu-latest
46
-
47
- steps:
48
- - name: Checkout
49
- id: checkout
50
- uses: actions/checkout@v4
51
-
52
- - name: Setup Node.js
53
- id: setup-node
54
- uses: actions/setup-node@v4
55
- with:
56
- node-version-file: .node-version
57
- cache: npm
58
-
59
- - name: Install Dependencies
60
- id: npm-ci
61
- run: npm ci
62
-
63
- - name: Test Local Action
64
- uses: ./
65
- with:
66
- # Use a unique cache prefix for each pipeline & job
67
- cache-prefix:
68
- ${{ runner.os }}-${{ github.run_id }}-${{ github.run_number }}-${{
69
- runner.os }}
70
-
71
- - name: Test build cache
72
- run: npm run test
73
-
74
- - name: Test build cache (full cache)
75
- run: ./check-full-turbo.sh
76
-
77
- test-action-windows:
78
- name: GitHub Actions Test (Windows)
79
- runs-on: windows-latest
80
-
81
- steps:
82
- - name: Checkout
83
- id: checkout
84
- uses: actions/checkout@v4
85
-
86
- - name: Setup Node.js
87
- id: setup-node
88
- uses: actions/setup-node@v4
89
- with:
90
- node-version-file: .node-version
91
- cache: npm
92
-
93
- - name: Install Dependencies
94
- id: npm-ci
95
- run: npm ci
96
-
97
- - name: Test Local Action
98
- uses: ./
99
- with:
100
- # Use a unique cache prefix for each pipeline & job
101
- cache-prefix:
102
- ${{ runner.os }}-${{ github.run_id }}-${{ github.run_number }}-${{
103
- runner.os }}
104
-
105
- - name: Test build cache
106
- run: npm run test
107
-
108
- - name: Test build cache (full cache)
109
- run: ./check-full-turbo.sh
110
-
111
- test-action-s3:
112
- name: GitHub Actions Test (S3)
113
- runs-on: ubuntu-latest
114
-
115
- steps:
116
- - name: Checkout
117
- id: checkout
118
- uses: actions/checkout@v4
119
-
120
- - name: Setup Node.js
121
- id: setup-node
122
- uses: actions/setup-node@v4
123
- with:
124
- node-version-file: .node-version
125
- cache: npm
126
-
127
- - name: Install Dependencies
128
- id: npm-ci
129
- run: npm ci
130
-
131
- - name: Test Local Action
132
- uses: ./
133
- with:
134
- # Use a unique cache prefix for each pipeline & job
135
- cache-prefix:
136
- ${{ runner.os }}-${{ github.run_id }}-${{ github.run_number }}-${{
137
- runner.os }}
138
- provider: s3
139
- s3-access-key-id: ${{ secrets.S3_ACCESS_KEY_ID }}
140
- s3-secret-access-key: ${{ secrets.S3_SECRET_ACCESS_KEY }}
141
- s3-bucket: ${{ secrets.S3_BUCKET }}
142
- s3-region: ${{ secrets.S3_REGION }}
143
- s3-endpoint: ${{ secrets.S3_ENDPOINT }}
144
- max-age: 3m
145
- max-size: 100mb
146
- max-files: 100
147
-
148
- - name: Test build cache
149
- run: npm run test
150
-
151
- - name: Test build cache (full cache)
152
- run: ./check-full-turbo.sh
@@ -1,46 +0,0 @@
1
- name: CodeQL
2
-
3
- on:
4
- pull_request:
5
- branches:
6
- - main
7
-
8
- schedule:
9
- - cron: '31 7 * * 3'
10
-
11
- permissions:
12
- actions: read
13
- checks: write
14
- contents: read
15
- security-events: write
16
-
17
- jobs:
18
- analyze:
19
- name: Analyze
20
- runs-on: ubuntu-latest
21
-
22
- strategy:
23
- fail-fast: false
24
- matrix:
25
- language:
26
- - TypeScript
27
-
28
- steps:
29
- - name: Checkout
30
- id: checkout
31
- uses: actions/checkout@v4
32
-
33
- - name: Initialize CodeQL
34
- id: initialize
35
- uses: github/codeql-action/init@v3
36
- with:
37
- languages: ${{ matrix.language }}
38
- source-root: src
39
-
40
- - name: Autobuild
41
- id: autobuild
42
- uses: github/codeql-action/autobuild@v3
43
-
44
- - name: Perform CodeQL Analysis
45
- id: analyze
46
- uses: github/codeql-action/analyze@v3
@@ -1,47 +0,0 @@
1
- name: Release
2
- on:
3
- push:
4
- branches:
5
- - main
6
-
7
- workflow_dispatch:
8
-
9
- permissions:
10
- contents: read # for checkout
11
-
12
- jobs:
13
- release:
14
- name: Release
15
- runs-on: ubuntu-latest
16
- permissions:
17
- contents: write # to be able to publish a GitHub release
18
- issues: write # to be able to comment on released issues
19
- pull-requests: write # to be able to comment on released pull requests
20
- id-token: write # to enable use of OIDC for npm provenance
21
- if: github.ref == 'refs/heads/main'
22
- steps:
23
- - name: Generate token
24
- id: generate_token
25
- uses: tibdex/github-app-token@v2
26
- with:
27
- app_id: ${{ vars.MYBOT_APP_ID }}
28
- private_key: ${{ secrets.MYBOT_PRIVATE_KEY }}
29
- - name: Checkout
30
- uses: actions/checkout@v4
31
- with:
32
- fetch-depth: 0
33
- token: ${{ steps.generate_token.outputs.token }}
34
- - name: Setup Node.js
35
- uses: actions/setup-node@v4
36
- with:
37
- node-version: '22.x'
38
- cache: 'npm'
39
- - name: Install dependencies
40
- run: npm install
41
- - name: Package
42
- run: npm run package
43
- - name: Release
44
- env:
45
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
46
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
47
- run: npx semantic-release
package/.node-version DELETED
@@ -1 +0,0 @@
1
- 22.16.0
package/.prettierignore DELETED
@@ -1,3 +0,0 @@
1
- dist/
2
- node_modules/
3
- coverage/
package/.prettierrc.json DELETED
@@ -1,16 +0,0 @@
1
- {
2
- "printWidth": 80,
3
- "tabWidth": 2,
4
- "useTabs": false,
5
- "semi": false,
6
- "singleQuote": true,
7
- "quoteProps": "as-needed",
8
- "jsxSingleQuote": false,
9
- "trailingComma": "none",
10
- "bracketSpacing": true,
11
- "bracketSameLine": true,
12
- "arrowParens": "avoid",
13
- "proseWrap": "always",
14
- "htmlWhitespaceSensitivity": "css",
15
- "endOfLine": "lf"
16
- }
package/.releaserc.json DELETED
@@ -1,132 +0,0 @@
1
- {
2
- "branches": [
3
- {
4
- "name": "main"
5
- }
6
- ],
7
- "plugins": [
8
- [
9
- "@semantic-release/commit-analyzer",
10
- {
11
- "preset": "conventionalCommits",
12
- "releaseRules": [
13
- {
14
- "type": "revert",
15
- "scope": "*",
16
- "release": "patch"
17
- },
18
- {
19
- "type": "docs",
20
- "scope": "*",
21
- "release": "patch"
22
- },
23
- {
24
- "type": "style",
25
- "scope": "*",
26
- "release": "patch"
27
- },
28
- {
29
- "type": "chore",
30
- "scope": "*",
31
- "release": "patch"
32
- },
33
- {
34
- "type": "refactor",
35
- "scope": "*",
36
- "release": "patch"
37
- },
38
- {
39
- "type": "test",
40
- "scope": "*",
41
- "release": "patch"
42
- },
43
- {
44
- "type": "build",
45
- "scope": "*",
46
- "release": "patch"
47
- },
48
- {
49
- "type": "ci",
50
- "scope": "*",
51
- "release": "patch"
52
- },
53
- {
54
- "type": "improvement",
55
- "scope": "*",
56
- "release": "patch"
57
- }
58
- ]
59
- }
60
- ],
61
- [
62
- "@semantic-release/release-notes-generator",
63
- {
64
- "preset": "conventionalCommits",
65
- "presetConfig": {
66
- "types": [
67
- {
68
- "type": "feat",
69
- "section": "Features"
70
- },
71
- {
72
- "type": "fix",
73
- "section": "Bug Fixes"
74
- },
75
- {
76
- "type": "perf",
77
- "section": "Performance Improvements"
78
- },
79
- {
80
- "type": "revert",
81
- "section": "Reverts"
82
- },
83
- {
84
- "type": "docs",
85
- "section": "Documentation",
86
- "hidden": false
87
- },
88
- {
89
- "type": "style",
90
- "section": "Styles",
91
- "hidden": false
92
- },
93
- {
94
- "type": "chore",
95
- "section": "Miscellaneous Chores",
96
- "hidden": false
97
- },
98
- {
99
- "type": "refactor",
100
- "section": "Code Refactors",
101
- "hidden": false
102
- },
103
- {
104
- "type": "test",
105
- "section": "Tests",
106
- "hidden": false
107
- },
108
- {
109
- "type": "build",
110
- "section": "Build System",
111
- "hidden": false
112
- },
113
- {
114
- "type": "ci",
115
- "section": "CI/CD",
116
- "hidden": false
117
- },
118
- {
119
- "type": "improvement",
120
- "section": "Improvements",
121
- "hidden": false
122
- }
123
- ]
124
- }
125
- }
126
- ],
127
- "@semantic-release/github",
128
- "@semantic-release/npm",
129
- "@semantic-release/git",
130
- "@semantic-release/changelog"
131
- ]
132
- }
package/CHANGELOG.md DELETED
@@ -1,9 +0,0 @@
1
- ## [2.0.0](https://github.com/rharkor/caching-for-turbo/compare/v1.0.2...v2.0.0) (2025-06-22)
2
-
3
- ### ⚠ BREAKING CHANGES
4
-
5
- * v2
6
-
7
- ### Documentation
8
-
9
- * release ([913e69d](https://github.com/rharkor/caching-for-turbo/commit/913e69d79dcc20981ec528f9ba53bf4467d3bb67))
@@ -1,12 +0,0 @@
1
- #!/bin/bash
2
-
3
- # Run the test and capture the output
4
- npm run test -- --cache=remote:rw --no-daemon | tee test-output.log
5
-
6
- cat test-output.log
7
-
8
- # Check if the output contains "FULL TURBO"
9
- if ! grep -q "FULL TURBO" test-output.log; then
10
- echo "FULL TURBO not found in output"
11
- exit 1
12
- fi
package/eslint.config.mjs DELETED
@@ -1,27 +0,0 @@
1
- import { defineConfig } from 'eslint/config'
2
- import js from '@eslint/js'
3
- import globals from 'globals'
4
- import tseslint from 'typescript-eslint'
5
-
6
- export default defineConfig([
7
- {
8
- ignores: [
9
- 'lib/**/*',
10
- 'dist/**/*',
11
- 'node_modules/**/*',
12
- 'coverage/**/*',
13
- 'post.js'
14
- ]
15
- },
16
- {
17
- files: ['**/*.{js,mjs,cjs,ts}'],
18
- plugins: { js },
19
- extends: ['js/recommended']
20
- },
21
- { files: ['**/*.js'], languageOptions: { sourceType: 'commonjs' } },
22
- {
23
- files: ['**/*.{js,mjs,cjs,ts}'],
24
- languageOptions: { globals: globals.browser }
25
- },
26
- tseslint.configs.recommended
27
- ])
package/renovate.json DELETED
@@ -1,17 +0,0 @@
1
- {
2
- "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
- "extends": ["config:recommended"],
4
- "dependencyDashboard": true,
5
- "baseBranches": ["dev"],
6
- "packageRules": [
7
- {
8
- "matchUpdateTypes": ["minor", "patch", "pin", "digest"],
9
- "automerge": true
10
- },
11
- {
12
- "matchDepTypes": ["devDependencies"],
13
- "automerge": true
14
- }
15
- ],
16
- "platformAutomerge": true
17
- }