Repo for test-git-fcz5
Go to file
lalitmohank bc745ad172 Initial commit - Node.js API server 2026-01-06 20:13:19 +05:30
.dockerignore Initial commit - Node.js API server 2026-01-06 20:13:19 +05:30
.gitignore Initial commit - Node.js API server 2026-01-06 20:13:19 +05:30
boltic.yaml Initial commit - Node.js API server 2026-01-06 20:13:19 +05:30
Dockerfile Initial commit - Node.js API server 2026-01-06 20:13:19 +05:30
index.js Initial commit - Node.js API server 2026-01-06 20:13:19 +05:30
package.json Initial commit - Node.js API server 2026-01-06 20:13:19 +05:30
README.md Initial commit - Node.js API server 2026-01-06 20:13:19 +05:30

test-git-fcz5

Production-ready Node.js API server for testing git serverless deployment.

Features

  • Express.js REST API
  • CRUD operations (Users & Tasks)
  • Health checks (/health, /ready)
  • Environment info endpoint (/api/env)
  • Production-ready Dockerfile (multi-stage)
  • Security middleware (Helmet, CORS)
  • Request logging (Morgan)
  • Gzip compression

API Endpoints

Method Endpoint Description
GET / Service info
GET /health Health check
GET /ready Readiness check
GET /api/env Environment variables (for testing)
GET /api/users List all users
GET /api/users/:id Get user by ID
POST /api/users Create user
PUT /api/users/:id Update user
DELETE /api/users/:id Delete user
GET /api/tasks List tasks (filter by userId, status)
POST /api/tasks Create task
PATCH /api/tasks/:id/status Update task status
ALL /api/echo Echo request details

Local Development

# Install dependencies
npm install

# Run in development mode
npm run dev

# Run in production mode
npm start

Docker

# Build image
docker build -t test-git-fcz5 .

# Run container
docker run -p 8080:8080 test-git-fcz5

Testing API

# Health check
curl http://localhost:8080/health

# Get environment info
curl http://localhost:8080/api/env

# List users
curl http://localhost:8080/api/users

# Create user
curl -X POST http://localhost:8080/api/users \
  -H "Content-Type: application/json" \
  -d '{"name": "Test User", "email": "test@example.com"}'

# Create task
curl -X POST http://localhost:8080/api/tasks \
  -H "Content-Type: application/json" \
  -d '{"userId": "1", "title": "New task"}'

# Update task status
curl -X PATCH http://localhost:8080/api/tasks/1/status \
  -H "Content-Type: application/json" \
  -d '{"status": "done"}'

Backward Compatibility Testing

This app uses the OLD boltic.yaml format (no serverlessConfig section).

Test Steps:

  1. Deploy this app BEFORE new conductor code
  2. Configure from UI: Scaling, Env, PortMap
  3. Deploy new conductor code
  4. Push a code change
  5. Verify UI settings are preserved

License

MIT