committed by
GitHub
parent
fcaf99ebf6
commit
1b1e186a15
2
.gitignore
vendored
2
.gitignore
vendored
@@ -78,3 +78,5 @@ backend/db.sqlite
|
||||
|
||||
# Development ports file
|
||||
.dev-ports.json
|
||||
|
||||
dev_assets
|
||||
@@ -3,20 +3,20 @@
|
||||
"version": "0.0.32",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "export FRONTEND_PORT=$(node scripts/manage-dev-ports.js frontend) && export BACKEND_PORT=$(node scripts/manage-dev-ports.js backend) && concurrently \"cargo watch -w backend -x 'run --manifest-path backend/Cargo.toml'\" \"npm run frontend:dev\"",
|
||||
"dev": "export FRONTEND_PORT=$(node scripts/setup-dev-environment.js frontend) && export BACKEND_PORT=$(node scripts/setup-dev-environment.js backend) && concurrently \"cargo watch -w backend -x 'run --manifest-path backend/Cargo.toml'\" \"npm run frontend:dev\"",
|
||||
"build": "npm run frontend:build && cargo build --release --manifest-path backend/Cargo.toml && cargo build --release --bin mcp_task_server --manifest-path backend/Cargo.toml",
|
||||
"build:single": "npm run frontend:build && cargo build --release --manifest-path backend/Cargo.toml",
|
||||
"build:npm": "./build-npm-package.sh",
|
||||
"test:npm": "./test-npm-package.sh",
|
||||
"frontend:dev": "cd frontend && npm run dev -- --port ${FRONTEND_PORT:-3000} --open",
|
||||
"frontend:build": "cd frontend && npm run build",
|
||||
"backend:dev": "BACKEND_PORT=$(node scripts/manage-dev-ports.js backend) cargo watch -w backend -x 'run --manifest-path backend/Cargo.toml'",
|
||||
"backend:dev": "BACKEND_PORT=$(node scripts/setup-dev-environment.js backend) cargo watch -w backend -x 'run --manifest-path backend/Cargo.toml'",
|
||||
"backend:build": "cargo build --release --manifest-path backend/Cargo.toml",
|
||||
"backend:run": "cargo run --manifest-path backend/Cargo.toml",
|
||||
"backend:test": "cargo test --lib",
|
||||
"generate-types": "cd backend && cargo run --bin generate_types",
|
||||
"prepare-db": "node scripts/prepare-db.js",
|
||||
"dev:clear-ports": "node scripts/manage-dev-ports.js clear"
|
||||
"dev:clear-ports": "node scripts/setup-dev-environment.js clear"
|
||||
},
|
||||
"devDependencies": {
|
||||
"concurrently": "^8.2.2",
|
||||
|
||||
@@ -5,6 +5,8 @@ const path = require("path");
|
||||
const net = require("net");
|
||||
|
||||
const PORTS_FILE = path.join(__dirname, "..", ".dev-ports.json");
|
||||
const DEV_ASSETS_SEED = path.join(__dirname, "..", "dev_assets_seed");
|
||||
const DEV_ASSETS = path.join(__dirname, "..", "dev_assets");
|
||||
|
||||
/**
|
||||
* Check if a port is available
|
||||
@@ -128,9 +130,28 @@ async function allocatePorts() {
|
||||
*/
|
||||
async function getPorts() {
|
||||
const ports = await allocatePorts();
|
||||
copyDevAssets();
|
||||
return ports;
|
||||
}
|
||||
|
||||
/**
|
||||
* Copy dev_assets_seed to dev_assets
|
||||
*/
|
||||
function copyDevAssets() {
|
||||
try {
|
||||
if (!fs.existsSync(DEV_ASSETS)) {
|
||||
// Copy dev_assets_seed to dev_assets
|
||||
fs.cpSync(DEV_ASSETS_SEED, DEV_ASSETS, { recursive: true });
|
||||
|
||||
if (process.argv[2] === "get") {
|
||||
console.log("Copied dev_assets_seed to dev_assets");
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("Failed to copy dev assets:", error.message);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Clear saved ports
|
||||
*/
|
||||
@@ -183,15 +204,17 @@ if (require.main === module) {
|
||||
default:
|
||||
console.log("Usage:");
|
||||
console.log(
|
||||
" node manage-dev-ports.js get - Get all ports (allocate if needed)"
|
||||
" node setup-dev-environment.js get - Setup dev environment (ports + assets)"
|
||||
);
|
||||
console.log(
|
||||
" node manage-dev-ports.js frontend - Get frontend port only"
|
||||
" node setup-dev-environment.js frontend - Get frontend port only"
|
||||
);
|
||||
console.log(
|
||||
" node manage-dev-ports.js backend - Get backend port only"
|
||||
" node setup-dev-environment.js backend - Get backend port only"
|
||||
);
|
||||
console.log(
|
||||
" node setup-dev-environment.js clear - Clear saved ports"
|
||||
);
|
||||
console.log(" node manage-dev-ports.js clear - Clear saved ports");
|
||||
break;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user