Paul Payne 7cd434aabf feat(api): Enhance NodeDiscover with subnet auto-detection and discovery cancellation
- Updated NodeDiscover to accept an optional subnet parameter, with auto-detection of local networks if none is provided.
- Removed support for IP list format in NodeDiscover request body.
- Implemented discovery cancellation functionality with NodeDiscoveryCancel endpoint.
- Improved error handling and response messages for better clarity.

feat(cluster): Add operation tracking for cluster bootstrap process

- Integrated operations manager into cluster manager for tracking bootstrap progress.
- Refactored Bootstrap method to run asynchronously with detailed progress updates.
- Added methods to wait for various bootstrap steps (etcd health, VIP assignment, control plane readiness, etc.).

fix(discovery): Optimize node discovery process and improve maintenance mode detection

- Enhanced node discovery to run in parallel with a semaphore to limit concurrent scans.
- Updated probeNode to detect maintenance mode more reliably.
- Added functions to expand CIDR notation into individual IP addresses and retrieve local network interfaces.

refactor(node): Update node manager to handle instance-specific configurations

- Modified NewManager to accept instanceName for tailored talosconfig usage.
- Improved hardware detection logic to handle maintenance mode scenarios.

feat(operations): Implement detailed bootstrap progress tracking

- Introduced BootstrapProgress struct to track and report the status of bootstrap operations.
- Updated operation management to include bootstrap-specific details.

fix(tools): Improve talosctl command execution with context and error handling

- Added context with timeout to talosctl commands to prevent hanging on unreachable nodes.
- Enhanced error handling for version retrieval in maintenance mode.
2025-11-04 17:16:16 +00:00
2025-10-11 21:44:35 +00:00
2025-10-11 17:06:14 +00:00
2025-10-14 07:13:00 +00:00
2025-10-12 16:52:36 +00:00
2025-10-11 17:06:14 +00:00
2025-10-14 07:31:54 +00:00
2025-10-11 21:44:35 +00:00
2025-10-12 16:52:36 +00:00

Wild Central API

The Wild Central API is a lightweight service that runs on a local machine (e.g., a Raspberry Pi) to manage Wild Cloud instances on the local network. It provides an interface for users to interact with and manage their Wild Cloud environments.

Development

Start the development server:

make dev

The API will be available at http://localhost:5055.

Environment Variables

  • WILD_API_DATA_DIR - Directory for instance data (default: /var/lib/wild-central)
  • WILD_DIRECTORY - Path to Wild Cloud apps directory (default: /opt/wild-cloud/apps)
  • WILD_API_DNSMASQ_CONFIG_PATH - Path to dnsmasq config file (default: /etc/dnsmasq.d/wild-cloud.conf)
  • WILD_CORS_ORIGINS - Comma-separated list of allowed CORS origins for production (default: localhost development origins)

API Endpoints

The API provides the following endpoint categories:

  • Instances - Create, list, get, and delete Wild Cloud instances
  • Configuration - Manage instance config.yaml
  • Secrets - Manage instance secrets.yaml (redacted by default)
  • Nodes - Discover, configure, and manage cluster nodes
  • Cluster - Bootstrap and manage Talos/Kubernetes clusters
  • Services - Install and manage base infrastructure services
  • Apps - Deploy and manage Wild Cloud applications
  • PXE - Manage PXE boot assets for network installation
  • Operations - Track and stream long-running operations
  • Utilities - Helper functions and status endpoints
  • dnsmasq - Configure and manage dnsmasq for network services

See the API handler files in internal/api/v1/ for detailed endpoint documentation.

Description
The daemon that exposes the web API on a Wild Central device.
Readme AGPL-3.0 875 KiB
Languages
Go 90.2%
Shell 9.5%
Makefile 0.3%