ScuttleBot

merge main into feature/104-scuttlectl-topology

lmata 2026-04-05 16:41 trunk
Commit 905bc247878d22458436a08b03769a3daecc6f8ccead8f439ee9316e9123aee6
--- cmd/scuttlectl/internal/apiclient/apiclient.go
+++ cmd/scuttlectl/internal/apiclient/apiclient.go
@@ -157,10 +157,41 @@
157157
// RevokeAPIKey sends DELETE /v1/api-keys/{id}.
158158
func (c *Client) RevokeAPIKey(id string) error {
159159
_, err := c.doNoBody("DELETE", "/v1/api-keys/"+id)
160160
return err
161161
}
162
+
163
+// GetTopology returns GET /v1/topology.
164
+func (c *Client) GetTopology() (json.RawMessage, error) {
165
+ return c.get("/v1/topology")
166
+}
167
+
168
+// ProvisionChannel sends POST /v1/channels.
169
+func (c *Client) ProvisionChannel(name string) (json.RawMessage, error) {
170
+ return c.post("/v1/channels", map[string]string{"name": name})
171
+}
172
+
173
+// DropChannel sends DELETE /v1/topology/channels/{channel}.
174
+func (c *Client) DropChannel(channel string) error {
175
+ _, err := c.doNoBody("DELETE", "/v1/topology/channels/"+strings.TrimPrefix(channel, "#"))
176
+ return err
177
+}
178
+
179
+// GetConfig returns GET /v1/config.
180
+func (c *Client) GetConfig() (json.RawMessage, error) {
181
+ return c.get("/v1/config")
182
+}
183
+
184
+// GetConfigHistory returns GET /v1/config/history.
185
+func (c *Client) GetConfigHistory() (json.RawMessage, error) {
186
+ return c.get("/v1/config/history")
187
+}
188
+
189
+// GetSettings returns GET /v1/settings.
190
+func (c *Client) GetSettings() (json.RawMessage, error) {
191
+ return c.get("/v1/settings")
192
+}
162193
163194
// SetAdminPassword sends PUT /v1/admins/{username}/password.
164195
func (c *Client) SetAdminPassword(username, password string) error {
165196
_, err := c.put("/v1/admins/"+username+"/password", map[string]string{"password": password})
166197
return err
167198
--- cmd/scuttlectl/internal/apiclient/apiclient.go
+++ cmd/scuttlectl/internal/apiclient/apiclient.go
@@ -157,10 +157,41 @@
157 // RevokeAPIKey sends DELETE /v1/api-keys/{id}.
158 func (c *Client) RevokeAPIKey(id string) error {
159 _, err := c.doNoBody("DELETE", "/v1/api-keys/"+id)
160 return err
161 }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
162
163 // SetAdminPassword sends PUT /v1/admins/{username}/password.
164 func (c *Client) SetAdminPassword(username, password string) error {
165 _, err := c.put("/v1/admins/"+username+"/password", map[string]string{"password": password})
166 return err
167
--- cmd/scuttlectl/internal/apiclient/apiclient.go
+++ cmd/scuttlectl/internal/apiclient/apiclient.go
@@ -157,10 +157,41 @@
157 // RevokeAPIKey sends DELETE /v1/api-keys/{id}.
158 func (c *Client) RevokeAPIKey(id string) error {
159 _, err := c.doNoBody("DELETE", "/v1/api-keys/"+id)
160 return err
161 }
162
163 // GetTopology returns GET /v1/topology.
164 func (c *Client) GetTopology() (json.RawMessage, error) {
165 return c.get("/v1/topology")
166 }
167
168 // ProvisionChannel sends POST /v1/channels.
169 func (c *Client) ProvisionChannel(name string) (json.RawMessage, error) {
170 return c.post("/v1/channels", map[string]string{"name": name})
171 }
172
173 // DropChannel sends DELETE /v1/topology/channels/{channel}.
174 func (c *Client) DropChannel(channel string) error {
175 _, err := c.doNoBody("DELETE", "/v1/topology/channels/"+strings.TrimPrefix(channel, "#"))
176 return err
177 }
178
179 // GetConfig returns GET /v1/config.
180 func (c *Client) GetConfig() (json.RawMessage, error) {
181 return c.get("/v1/config")
182 }
183
184 // GetConfigHistory returns GET /v1/config/history.
185 func (c *Client) GetConfigHistory() (json.RawMessage, error) {
186 return c.get("/v1/config/history")
187 }
188
189 // GetSettings returns GET /v1/settings.
190 func (c *Client) GetSettings() (json.RawMessage, error) {
191 return c.get("/v1/settings")
192 }
193
194 // SetAdminPassword sends PUT /v1/admins/{username}/password.
195 func (c *Client) SetAdminPassword(username, password string) error {
196 _, err := c.put("/v1/admins/"+username+"/password", map[string]string{"password": password})
197 return err
198

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button