Skip to content

Commit f380ec5

Browse files
committed
🔧 Fix CI workflows
1 parent 30cf11d commit f380ec5

File tree

6 files changed

+63
-34
lines changed

6 files changed

+63
-34
lines changed

.github/workflows/ci.yml

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -5,43 +5,48 @@ on:
55
branches:
66
- main
77
pull_request:
8-
branches:
9-
- main
108

119
jobs:
1210
test:
1311
runs-on: ubuntu-latest
1412
strategy:
1513
matrix:
16-
node: [18, 20, 22] # Tester sur différentes versions de Node.js
14+
node: [18, 20, 22]
15+
steps:
16+
- uses: actions/checkout@v4
17+
- uses: actions/setup-node@v4
18+
with:
19+
node-version: ${{ matrix.node }}
20+
- run: node --version
21+
- run: npm install
22+
- run: npm test
23+
- name: coverage
24+
uses: codecov/codecov-action@v5
25+
with:
26+
name: actions ${{ matrix.node }}
27+
28+
lint:
29+
runs-on: ubuntu-latest
1730
steps:
18-
- name: Checkout code
19-
uses: actions/checkout@v2 # Récupère ton code source
20-
- name: Set up Node.js
21-
uses: actions/setup-node@v2
31+
- uses: actions/checkout@v4
32+
- uses: actions/setup-node@v4
2233
with:
23-
node-version: ${{ matrix.node }} # Utilise les versions de Node.js définies dans la stratégie
24-
- name: Install dependencies
25-
run: npm install # Installe les dépendances de ton projet
26-
- name: Run tests
27-
run: npm test # Exécute tes tests avec la commande npm test
34+
node-version: 20
35+
- run: npm install
36+
- run: npm run lint
2837

2938
release:
30-
if: github.ref == 'refs/heads/main' # Lancer cette étape uniquement si on pousse sur la branche 'main'
39+
if: github.ref == 'refs/heads/main'
3140
runs-on: ubuntu-latest
32-
needs: [test] # Lancer après le job de test
41+
needs: [test, lint]
3342
steps:
34-
- name: Checkout code
35-
uses: actions/checkout@v2
36-
- name: Set up Node.js
37-
uses: actions/setup-node@v2
43+
- uses: actions/checkout@v4
44+
- uses: actions/setup-node@v4
3845
with:
3946
node-version: 20
40-
- name: Install dependencies
41-
run: npm install
42-
- name: Build the package
43-
run: npm run build # Si tu as une commande de build, sinon enlève cette étape
44-
- name: Publish to npm
45-
run: npm publish --access public # Publie ton package sur npm
47+
- run: npm install
48+
- run: npm run build
49+
- run: npx semantic-release
4650
env:
47-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} # Utilise un token npm secret pour l'authentification
51+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
52+
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

.releaserc.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"branches": ["main"]
3+
}

__tests__/handleError.test.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ describe("handleError utility function", () => {
5151
});
5252

5353
it("returns default unknown error message for unknown error", () => {
54-
const error = {} as any;
54+
const error = {};
5555
const result = handleError(error, "Custom error message");
5656
expect(result).toBe("An unknown error occurred.");
5757
});
@@ -83,7 +83,7 @@ describe("handleError utility function", () => {
8383
});
8484

8585
it("returns default unknown error message for unknown error", () => {
86-
const error = {} as any;
86+
const error = {};
8787
const result = handleError(error, "Custom error message", 400);
8888
expect(result).toBe("An unknown error occurred.");
8989
});
@@ -115,7 +115,7 @@ describe("handleError utility function", () => {
115115
});
116116

117117
it("returns default unknown error message for unknown error", () => {
118-
const error = {} as any;
118+
const error = {};
119119
const result = handleError(error, errorMessages);
120120
expect(result).toBe("An unknown error occurred.");
121121
});
@@ -156,7 +156,7 @@ describe("handleError utility function", () => {
156156
});
157157

158158
it("returns default unknown error message for unknown error", () => {
159-
const error = {} as any;
159+
const error = {};
160160
const result = handleError(
161161
error,
162162
"Custom error message",
@@ -193,7 +193,7 @@ describe("handleError utility function", () => {
193193
});
194194

195195
it("returns custom unknown error message for unknown error", () => {
196-
const error = {} as any;
196+
const error = {};
197197
const result = handleError(
198198
error,
199199
"Custom error message",

eslint.config.mjs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import globals from "globals";
2+
import pluginJs from "@eslint/js";
3+
import tseslint from "typescript-eslint";
4+
5+
6+
/** @type {import('eslint').Linter.Config[]} */
7+
export default [
8+
{files: ["**/*.{js,mjs,cjs,ts}"]},
9+
{languageOptions: { globals: {...globals.browser, ...globals.node} }},
10+
pluginJs.configs.recommended,
11+
...tseslint.configs.recommended,
12+
];

package.json

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
},
1111
"scripts": {
1212
"build": "tsc",
13+
"lint": "eslint .",
1314
"test": "jest"
1415
},
1516
"keywords": [
@@ -25,10 +26,18 @@
2526
"axios": "^1.7.9"
2627
},
2728
"devDependencies": {
29+
"@eslint/js": "^9.16.0",
30+
"@semantic-release/changelog": "^6.0.3",
31+
"@semantic-release/git": "^10.0.1",
32+
"@semantic-release/github": "^11.0.1",
2833
"@types/jest": "^29.5.14",
34+
"eslint": "^9.16.0",
35+
"globals": "^15.13.0",
2936
"jest": "^29.7.0",
37+
"semantic-release": "^24.2.0",
3038
"ts-jest": "^29.2.5",
31-
"typescript": "^5.7.2"
39+
"typescript": "^5.7.2",
40+
"typescript-eslint": "^8.18.0"
3241
},
3342
"bugs": {
3443
"url": "https://github.com/Jszigeti/axios-error-handler/issues"

tsconfig.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"compilerOptions": {
3-
"target": "es2016",
4-
"lib": ["es2016", "dom"],
5-
"module": "commonjs",
3+
"target": "es2022",
4+
"lib": ["es2022", "dom"],
5+
"module": "ESNext",
66
"moduleResolution": "node",
77
"strict": true,
88
"esModuleInterop": true,

0 commit comments

Comments
 (0)