feat(ci): introduce RelativeCI for the client

This commit is contained in:
Elian Doran 2025-06-07 13:02:37 +03:00
parent 5a53fbbb01
commit c8b3cdf01b
No known key found for this signature in database
5 changed files with 55 additions and 3 deletions

View File

@ -74,7 +74,14 @@ jobs:
run: pnpm install --frozen-lockfile
- name: Update build info
run: pnpm run chore:update-build-info
- name: Trigger build
- name: Trigger client build
run: pnpm nx run client:build
- name: Send client bundle stats to RelativeCI
uses: relative-ci/agent-action@v3
with:
webpackStatsFile: ./apps/client/dist/webpack-stats.json
key: ${{ secrets.RELATIVE_CI_CLIENT_KEY }}
- name: Trigger server build
run: pnpm nx run server:build
- uses: docker/setup-buildx-action@v3
- uses: docker/build-push-action@v6

View File

@ -3,6 +3,7 @@ import { join, resolve } from 'path';
import { defineConfig } from 'vite';
import { viteStaticCopy } from 'vite-plugin-static-copy'
import asset_path from './src/asset_path';
import webpackStatsPlugin from 'rollup-plugin-webpack-stats';
const assets = [ "assets", "stylesheets", "libraries", "fonts", "translations" ];
@ -33,7 +34,8 @@ export default defineConfig(() => ({
dest: "",
}
]
})
}),
webpackStatsPlugin()
],
resolve: {
alias: [

View File

@ -282,7 +282,10 @@
{
"glob": "**/*",
"input": "apps/client/dist",
"output": "public"
"output": "public",
"ignore": [
"webpack-stats.json"
]
},
{
"glob": "**/*",

View File

@ -55,6 +55,7 @@
"jsonc-eslint-parser": "^2.1.0",
"nx": "21.1.3",
"react-refresh": "^0.17.0",
"rollup-plugin-webpack-stats": "2.0.7",
"tslib": "^2.3.0",
"tsx": "4.19.4",
"typescript": "~5.8.0",

39
pnpm-lock.yaml generated
View File

@ -123,6 +123,9 @@ importers:
react-refresh:
specifier: ^0.17.0
version: 0.17.0
rollup-plugin-webpack-stats:
specifier: 2.0.7
version: 2.0.7(rollup@4.40.0)(vite@6.3.5(@types/node@22.15.30)(jiti@2.4.2)(less@4.1.3)(sass-embedded@1.87.0)(sass@1.87.0)(stylus@0.64.0)(sugarss@4.0.1(postcss@8.5.3))(terser@5.39.0)(tsx@4.19.4)(yaml@2.8.0))
tslib:
specifier: ^2.3.0
version: 2.8.1
@ -10957,6 +10960,18 @@ packages:
robust-predicates@3.0.2:
resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==}
rollup-plugin-stats@1.3.9:
resolution: {integrity: sha512-rpz+EIdA9rQfkK/RiiMde0H8r/yCU4ilQJVZNFO6o1pU1H+pTMhu5Nlkm4+7J95+J98n0T5gxQPwyi/sxCRQXw==}
engines: {node: '>=18'}
peerDependencies:
rollup: ^3.0.0 || ^4.0.0
vite: ^5.0.0 || ^6.0.0
peerDependenciesMeta:
rollup:
optional: true
vite:
optional: true
rollup-plugin-styles@4.0.0:
resolution: {integrity: sha512-A2K2sao84OsTmDxXG83JTCdXWrmgvQkkI38XDat46rdtpGMRm9tSYqeCdlwwGDJF4kKIafhV1mUidqu8MxUGig==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@ -10969,6 +10984,18 @@ packages:
peerDependencies:
rollup: ^3.0.0||^4.0.0
rollup-plugin-webpack-stats@2.0.7:
resolution: {integrity: sha512-aAd/4GrnsDuwFIlPJpIJ/wcu6msiza5lNZIrfWXmskwLSEx9GhJlKFYU3HHgl5XHLgdF45ajCrV8X0k3EV4ztw==}
engines: {node: '>=18'}
peerDependencies:
rollup: ^3.0.0 || ^4.0.0
vite: ^5.0.0 || ^6.0.0
peerDependenciesMeta:
rollup:
optional: true
vite:
optional: true
rollup@4.40.0:
resolution: {integrity: sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
@ -25217,6 +25244,11 @@ snapshots:
robust-predicates@3.0.2: {}
rollup-plugin-stats@1.3.9(rollup@4.40.0)(vite@6.3.5(@types/node@22.15.30)(jiti@2.4.2)(less@4.1.3)(sass-embedded@1.87.0)(sass@1.87.0)(stylus@0.64.0)(sugarss@4.0.1(postcss@8.5.3))(terser@5.39.0)(tsx@4.19.4)(yaml@2.8.0)):
optionalDependencies:
rollup: 4.40.0
vite: 6.3.5(@types/node@22.15.30)(jiti@2.4.2)(less@4.1.3)(sass-embedded@1.87.0)(sass@1.87.0)(stylus@0.64.0)(sugarss@4.0.1(postcss@8.5.3))(terser@5.39.0)(tsx@4.19.4)(yaml@2.8.0)
rollup-plugin-styles@4.0.0(rollup@4.40.0):
dependencies:
'@rollup/pluginutils': 4.2.1
@ -25244,6 +25276,13 @@ snapshots:
'@rollup/pluginutils': 5.1.4(rollup@4.40.0)
rollup: 4.40.0
rollup-plugin-webpack-stats@2.0.7(rollup@4.40.0)(vite@6.3.5(@types/node@22.15.30)(jiti@2.4.2)(less@4.1.3)(sass-embedded@1.87.0)(sass@1.87.0)(stylus@0.64.0)(sugarss@4.0.1(postcss@8.5.3))(terser@5.39.0)(tsx@4.19.4)(yaml@2.8.0)):
dependencies:
rollup-plugin-stats: 1.3.9(rollup@4.40.0)(vite@6.3.5(@types/node@22.15.30)(jiti@2.4.2)(less@4.1.3)(sass-embedded@1.87.0)(sass@1.87.0)(stylus@0.64.0)(sugarss@4.0.1(postcss@8.5.3))(terser@5.39.0)(tsx@4.19.4)(yaml@2.8.0))
optionalDependencies:
rollup: 4.40.0
vite: 6.3.5(@types/node@22.15.30)(jiti@2.4.2)(less@4.1.3)(sass-embedded@1.87.0)(sass@1.87.0)(stylus@0.64.0)(sugarss@4.0.1(postcss@8.5.3))(terser@5.39.0)(tsx@4.19.4)(yaml@2.8.0)
rollup@4.40.0:
dependencies:
'@types/estree': 1.0.7