This commit is contained in:
@@ -80,6 +80,26 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
npm ci
|
npm ci
|
||||||
|
|
||||||
|
- name: Test GraphQL Endpoint Connectivity
|
||||||
|
run: |
|
||||||
|
echo "🔍 Проверяем доступность GraphQL endpoint..."
|
||||||
|
|
||||||
|
# Проверяем DNS разрешение
|
||||||
|
echo "📡 DNS разрешение для v3.dscrs.site:"
|
||||||
|
nslookup v3.dscrs.site || echo "⚠️ DNS разрешение не удалось"
|
||||||
|
|
||||||
|
# Проверяем TCP подключение
|
||||||
|
echo "🔌 Проверяем TCP подключение к v3.dscrs.site:443:"
|
||||||
|
timeout 10 bash -c "</dev/tcp/v3.dscrs.site/443" && echo "✅ TCP подключение успешно" || echo "❌ TCP подключение не удалось"
|
||||||
|
|
||||||
|
# Проверяем HTTP доступность
|
||||||
|
echo "🌐 Проверяем HTTP доступность GraphQL endpoint:"
|
||||||
|
curl -v --connect-timeout 10 --max-time 30 -H "Content-Type: application/json" \
|
||||||
|
-d '{"query":"query{__typename}"}' \
|
||||||
|
https://v3.dscrs.site/graphql || echo "❌ GraphQL endpoint недоступен"
|
||||||
|
|
||||||
|
echo "✅ Диагностика завершена"
|
||||||
|
|
||||||
- name: Build Frontend
|
- name: Build Frontend
|
||||||
env:
|
env:
|
||||||
CI: "true" # 🚨 Указываем что это CI сборка для codegen
|
CI: "true" # 🚨 Указываем что это CI сборка для codegen
|
||||||
|
|||||||
17
codegen.ts
17
codegen.ts
@@ -1,9 +1,22 @@
|
|||||||
import type { CodegenConfig } from '@graphql-codegen/cli'
|
import type { CodegenConfig } from '@graphql-codegen/cli'
|
||||||
|
|
||||||
|
// 🩵 Динамическая модель выбора источника схемы с антихрупкостью
|
||||||
|
const getSchemaSource = () => {
|
||||||
|
// В CI окружении используем локальные файлы для избежания сетевых проблем
|
||||||
|
if (process.env.CI === 'true') {
|
||||||
|
console.log('🔧 CI режим: используем локальные файлы схемы')
|
||||||
|
return ['schema/*.graphql']
|
||||||
|
}
|
||||||
|
|
||||||
|
// В dev режиме предпочитаем удаленную схему для актуальности
|
||||||
|
console.log('🌐 Dev режим: используем удаленную схему')
|
||||||
|
return 'https://v3.dscrs.site/graphql'
|
||||||
|
}
|
||||||
|
|
||||||
const config: CodegenConfig = {
|
const config: CodegenConfig = {
|
||||||
overwrite: true,
|
overwrite: true,
|
||||||
// Используем только core схему для основной генерации
|
// Адаптивный выбор источника схемы
|
||||||
schema: 'https://v3.dscrs.site/graphql',
|
schema: getSchemaSource(),
|
||||||
documents: ['panel/graphql/queries/**/*.ts', 'panel/**/*.{ts,tsx}', '!panel/graphql/generated/**'],
|
documents: ['panel/graphql/queries/**/*.ts', 'panel/**/*.{ts,tsx}', '!panel/graphql/generated/**'],
|
||||||
generates: {
|
generates: {
|
||||||
'./panel/graphql/generated/introspection.json': {
|
'./panel/graphql/generated/introspection.json': {
|
||||||
|
|||||||
@@ -36,4 +36,4 @@
|
|||||||
"overrides": {
|
"overrides": {
|
||||||
"vite": "^7.1.7"
|
"vite": "^7.1.7"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user