ESO Server is the workflow management system for External Secrets Operator with a Go backend and React/TypeScript frontend. It provides a visual interface for creating, managing, and monitoring workflows with various node types including jobs, scripts, loops, and transformations.
.
├── backend (Go)
│ ├── handlers/ # HTTP handlers
│ │ └── workflow/ # Workflow operations
│ ├── services/ # Business logic
│ │ ├── cluster/ # Cluster management
│ │ └── workflow/ # Workflow execution
│ ├── models/ # Data models
│ ├── stores/ # Data persistence
│ └── database/ # Database operations
│
└── web (React/TypeScript)
├── public/ # Static assets
└── src/
├── components/ # React components
│ └── workflow/
│ └── nodes/ # Different node types
└── assets/ # Frontend assets
- Visual workflow builder
- Multiple node types:
- Container nodes
- Debug nodes
- Job execution
- Loop operations
- Script execution
- Data transformation
- Workflow status monitoring
- Secret management
- Cluster operations
- Go 1.x
- Node.js 18+
- npm or yarn
- Install Go dependencies:
go mod download- Run the server:
go run main.go- Navigate to the web directory:
cd web- Install dependencies:
npm install- Start the development server:
npm run devThe project uses:
- Go for the backend server
- React with TypeScript for the frontend
- Vite as the build tool
- ESLint for code linting
[Add License Information]