Compare commits
23 Commits
be81392c1a
...
4feb9fe337
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4feb9fe337 | ||
|
|
5e760d84e8 | ||
|
|
4168838fd8 | ||
|
|
dd7c365429 | ||
|
|
56dcc04ad7 | ||
|
|
b8cabbe0c8 | ||
|
|
c5b85126c0 | ||
|
|
8f51e99369 | ||
|
|
dd3278dac9 | ||
|
|
8c8128fc0d | ||
| 6c01329f27 | |||
| c177be326c | |||
| 972bb50c64 | |||
| 20a4ea1655 | |||
| 0856ca5b7a | |||
|
|
161bbb801c | ||
| 0e5abbbece | |||
|
|
024e139627 | ||
|
|
cd40123d3f | ||
|
|
115004b5a2 | ||
|
|
6cbdcfbd10 | ||
| d69c209101 | |||
|
|
f6d1412bc8 |
6
.gitignore
vendored
6
.gitignore
vendored
@@ -92,5 +92,7 @@ temp/
|
|||||||
frontend/node_modules/
|
frontend/node_modules/
|
||||||
frontend/.angular/
|
frontend/.angular/
|
||||||
frontend/dist/
|
frontend/dist/
|
||||||
# Keep .npmrc but ignore sensitive auth info
|
frontend/package-lock.json
|
||||||
# The active .npmrc will be generated from .npmrc.public or .npmrc.artifactory
|
frontend/package-lock*.json
|
||||||
|
# package-lock.json is machine-specific and depends on npm registry
|
||||||
|
# Each environment will generate its own based on local .npmrc
|
||||||
|
|||||||
18
Dockerfile
18
Dockerfile
@@ -1,26 +1,18 @@
|
|||||||
# Multi-stage build: First stage builds Angular frontend
|
# Multi-stage build: First stage builds Angular frontend
|
||||||
FROM node:18-alpine as frontend-builder
|
FROM node:18-alpine as frontend-builder
|
||||||
|
|
||||||
# Build argument to select npm registry (public or artifactory)
|
|
||||||
ARG NPM_REGISTRY=public
|
|
||||||
ARG ARTIFACTORY_AUTH_TOKEN=""
|
|
||||||
|
|
||||||
# Install dependencies for native modules
|
# Install dependencies for native modules
|
||||||
RUN apk add --no-cache python3 make g++
|
RUN apk add --no-cache python3 make g++
|
||||||
|
|
||||||
WORKDIR /frontend
|
WORKDIR /frontend
|
||||||
|
|
||||||
# Copy package files and registry configs
|
# Copy package files
|
||||||
COPY frontend/package*.json ./
|
COPY frontend/package*.json ./
|
||||||
COPY frontend/.npmrc.${NPM_REGISTRY} ./.npmrc
|
|
||||||
|
|
||||||
# If using artifactory and auth token is provided, configure it
|
# Install dependencies using npm install
|
||||||
RUN if [ "$NPM_REGISTRY" = "artifactory" ] && [ -n "$ARTIFACTORY_AUTH_TOKEN" ]; then \
|
# This will use the Docker build environment's npm configuration (.npmrc)
|
||||||
echo "Configuring Artifactory authentication..."; \
|
# and generate a package-lock.json appropriate for the configured registry
|
||||||
fi
|
RUN npm install --legacy-peer-deps
|
||||||
|
|
||||||
# Clean install dependencies
|
|
||||||
RUN npm ci --force
|
|
||||||
|
|
||||||
# Copy frontend source
|
# Copy frontend source
|
||||||
COPY frontend/src ./src
|
COPY frontend/src ./src
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
registry=https://registry.npmjs.org/
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
# Replace YOUR_ARTIFACTORY_URL with your actual Artifactory URL
|
|
||||||
registry=https://YOUR_ARTIFACTORY_URL/artifactory/api/npm/npm-virtual/
|
|
||||||
|
|
||||||
# If authentication is required, uncomment and configure:
|
|
||||||
# //YOUR_ARTIFACTORY_URL/artifactory/api/npm/npm-virtual/:_auth=${ARTIFACTORY_AUTH_TOKEN}
|
|
||||||
# //YOUR_ARTIFACTORY_URL/artifactory/api/npm/npm-virtual/:always-auth=true
|
|
||||||
|
|
||||||
# Alternative: username/password (less secure, not recommended)
|
|
||||||
# //YOUR_ARTIFACTORY_URL/artifactory/api/npm/npm-virtual/:username=${ARTIFACTORY_USERNAME}
|
|
||||||
# //YOUR_ARTIFACTORY_URL/artifactory/api/npm/npm-virtual/:_password=${ARTIFACTORY_PASSWORD}
|
|
||||||
# //YOUR_ARTIFACTORY_URL/artifactory/api/npm/npm-virtual/:email=your-email@company.com
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
registry=https://registry.npmjs.org/
|
|
||||||
File diff suppressed because it is too large
Load Diff
14537
frontend/package-lock.json
generated
14537
frontend/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -30,6 +30,7 @@
|
|||||||
"@angular/cli": "^19.2.17",
|
"@angular/cli": "^19.2.17",
|
||||||
"@angular/compiler-cli": "^19.2.0",
|
"@angular/compiler-cli": "^19.2.0",
|
||||||
"@types/jasmine": "~5.1.0",
|
"@types/jasmine": "~5.1.0",
|
||||||
|
"@types/node": "22.10.5",
|
||||||
"jasmine-core": "~5.6.0",
|
"jasmine-core": "~5.6.0",
|
||||||
"karma": "~6.4.0",
|
"karma": "~6.4.0",
|
||||||
"karma-chrome-launcher": "~3.2.0",
|
"karma-chrome-launcher": "~3.2.0",
|
||||||
@@ -38,14 +39,17 @@
|
|||||||
"karma-jasmine-html-reporter": "~2.1.0",
|
"karma-jasmine-html-reporter": "~2.1.0",
|
||||||
"typescript": "~5.7.2",
|
"typescript": "~5.7.2",
|
||||||
"vite": "6.3.6",
|
"vite": "6.3.6",
|
||||||
"rollup": "4.50.2"
|
"rollup": "4.50.2",
|
||||||
|
"undici-types": "7.12.0"
|
||||||
},
|
},
|
||||||
"resolutions": {
|
"resolutions": {
|
||||||
"vite": "6.3.6",
|
"vite": "6.3.6",
|
||||||
"rollup": "4.50.2"
|
"rollup": "4.50.2",
|
||||||
|
"undici-types": "7.12.0"
|
||||||
},
|
},
|
||||||
"overrides": {
|
"overrides": {
|
||||||
"vite": "6.3.6",
|
"vite": "6.3.6",
|
||||||
"rollup": "4.50.2"
|
"rollup": "4.50.2",
|
||||||
|
"undici-types": "7.12.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user