Files
hr-appeals/server/src/config.ts
gorbenko.pavel dea024f3a9
build-and-deploy / prepare (push) Successful in 0s
build-and-deploy / build-and-push (., Dockerfile, hr-appeals-web) (push) Successful in 8s
Tests / frontend-test (push) Successful in 11s
build-and-deploy / build-and-push (server, server/Dockerfile, hr-appeals-auth) (push) Successful in 4s
build-and-deploy / deploy (push) Successful in 15s
шлется на реальный сервер (#2)
Co-authored-by: Mariya Trishina <trishina.mariya@tnsu.kz>
Reviewed-on: http://git.tnsu.kz/gorbenko.pavel/hr-appeals/pulls/2
2026-08-24 08:54:41 +00:00

34 lines
1.7 KiB
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { join, resolve } from 'node:path';
function requireEnv(name: string): string {
const value = process.env[name];
if (!value) {
throw new Error(`Не задана переменная окружения ${name}`);
}
return value;
}
/**
* Каталог с сертификатом и приватным ключом приложения. Одна переменная на весь
* каталог, а не путь к каждому файлу: так его можно подменить централизованно —
* локально это `secrets/` в корне репозитория (в git не попадает), в контейнере
* SECRETS_DIR=/certs, куда смонтирован каталог с хоста (см. docker-compose.yml).
*
* __dirname здесь — server/dist, поэтому до корня репозитория два уровня вверх.
*/
const secretsDir = process.env.SECRETS_DIR ?? resolve(__dirname, '../../secrets');
export const config = {
tenantId: requireEnv('GRAPH_TENANT_ID'),
clientId: requireEnv('GRAPH_CLIENT_ID'),
certPath: join(secretsDir, 'SPFxDeploy_cert.pem'),
keyPath: join(secretsDir, 'SPFxDeploy_key.pem'),
// Токен нужен не для Graph напрямую, а для api.tnsu.kz — он сам ходит в
// SharePoint. Это его App ID URI: с graph.microsoft.com/.default api вернёт
// 401, потому что проверяет aud во входящем JWT.
scope: process.env.GRAPH_SCOPE ?? 'api://9232d9e2-9807-4753-808f-07250e5474b0/.default',
port: Number(process.env.PORT ?? 3000),
sharepointSiteUrl: 'https://tnsukz.sharepoint.com/sites/hrm',
sharepointListName: 'Обращения'
};