Don't create self signed cert in production build pipeline
All checks were successful
Build Backend and Frontend / Build & Test .NET Backend (push) Successful in 32s
Build Backend and Frontend / Build Frontend (push) Successful in 12s

This commit is contained in:
Simon Lübeß
2025-05-23 16:33:23 +02:00
parent 1d68f177de
commit f4737f4dcf
2 changed files with 9 additions and 5 deletions

View File

@ -7,6 +7,8 @@ import path from 'path';
import child_process from 'child_process';
import { env } from 'process';
const isDevelopment = env.NODE_ENV !== 'production';
const baseFolder =
env.APPDATA !== undefined && env.APPDATA !== ''
? `${env.APPDATA}/ASP.NET/https`
@ -21,7 +23,8 @@ if (!fs.existsSync(baseFolder))
fs.mkdirSync(baseFolder, { recursive: true });
}
if (!fs.existsSync(certFilePath) || !fs.existsSync(keyFilePath))
// Generate dev certificate, if we are in development mode, and it doesn't exist yet.
if (isDevelopment && (!fs.existsSync(certFilePath) || !fs.existsSync(keyFilePath)))
{
if (0 !== child_process.spawnSync('dotnet', [
'dev-certs',
@ -32,7 +35,7 @@ if (!fs.existsSync(certFilePath) || !fs.existsSync(keyFilePath))
'Pem',
'--no-password',
], { stdio: 'inherit', }).status)
{
{
throw new Error("Could not create certificate.");
}
}
@ -68,9 +71,10 @@ export default defineConfig({
server: {
proxy: proxyConfig,
port: parseInt(env.DEV_SERVER_PORT ?? '54044'),
https: {
// This is only relevant for development anyway.
https: isDevelopment ? {
key: fs.readFileSync(keyFilePath),
cert: fs.readFileSync(certFilePath),
}
} : undefined
}
})