You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: api/README.md
+7-1Lines changed: 7 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -12,9 +12,15 @@ The root directory contains the main API setup files and request handlers.
12
12
#### `/controllers`
13
13
Contains the business logic for different API endpoints. Each controller package focuses on a specific domain of functionality or workflow (e.g., authentication, console, install, upgrade, join, etc.) and implements the core business logic for that domain or workflow. Controllers can utilize multiple managers with each manager handling a specific subdomain of functionality.
14
14
15
+
#### `/internal`
16
+
Contains shared utilities and helper packages that provide common functionality used across different parts of the API. This includes both general-purpose utilities and domain-specific helpers.
17
+
15
18
#### `/internal/managers`
16
19
Each manager is responsible for a specific subdomain of functionality and provides a clean, thread-safe interface for controllers to interact with. For example, the Preflight Manager manages system requirement checks and validation.
17
20
21
+
#### `/internal/statemachine`
22
+
The statemachine is used by controllers to capture workflow state and enforce valid transitions.
23
+
18
24
#### `/types`
19
25
Defines the core data structures and types used throughout the API. This includes:
20
26
- Request and response types
@@ -30,7 +36,7 @@ Contains Swagger-generated API documentation. This includes:
30
36
- API operation descriptions
31
37
32
38
#### `/pkg`
33
-
Contains shared utilities and helper packages that provide common functionality used across different parts of the API. This includes both general-purpose utilities and domain-specific helpers.
39
+
Contains helper packages that can be used by packages external to the API.
34
40
35
41
#### `/client`
36
42
Provides a client library for interacting with the API. The client package implements a clean interface for making API calls and handling responses, making it easy to integrate with the API from other parts of the system.
0 commit comments