mirror of
https://github.com/graphql-hive/console
synced 2026-04-21 22:47:17 +00:00
54 lines
1.2 KiB
JavaScript
54 lines
1.2 KiB
JavaScript
/**
|
|
* Create Turborepo config file
|
|
*/
|
|
|
|
import fs from 'fs';
|
|
import path from 'path';
|
|
import { fileURLToPath } from 'url';
|
|
import dotenv from 'dotenv';
|
|
|
|
const cwd = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..');
|
|
|
|
function loadEnv() {
|
|
const envFile = path.resolve(cwd, '.env');
|
|
|
|
if (!fs.existsSync(envFile)) {
|
|
return {};
|
|
}
|
|
|
|
return dotenv.parse(fs.readFileSync(envFile, 'utf-8'));
|
|
}
|
|
|
|
function main() {
|
|
const configDir = '.turbo';
|
|
const configFile = path.resolve(cwd, configDir, 'config.json');
|
|
const envFile = loadEnv();
|
|
|
|
const env = {
|
|
TURBO_API_URL: envFile.TURBO_API_URL || process.env.TURBO_API_URL,
|
|
TURBO_TOKEN: envFile.TURBO_TOKEN || process.env.TURBO_TOKEN,
|
|
TURBO_TEAM: envFile.TURBO_TEAM || process.env.TURBO_TEAM,
|
|
};
|
|
|
|
if (!env.TURBO_API_URL || !env.TURBO_TOKEN || !env.TURBO_TEAM) {
|
|
console.log('[turborepo-setup] No TURBO_API_URL, TURBO_TOKEN or TURBO_TEAM found. Skipping.');
|
|
return;
|
|
}
|
|
|
|
fs.writeFileSync(
|
|
configFile,
|
|
JSON.stringify(
|
|
{
|
|
teamId: '_',
|
|
apiUrl: env.TURBO_API_URL,
|
|
},
|
|
null,
|
|
2,
|
|
),
|
|
'utf-8',
|
|
);
|
|
|
|
console.log('[turborepo-setup] Config created.');
|
|
}
|
|
|
|
main();
|