Commit 32ebe75
committed
Document the provider interface
We'll document the Coriolis provider interface, making it much
easier to write new providers or extend the existing ones, with
or without AI assistance.
At the moment, most of the provider API is undocumented. It's true
that we have JSON schemas for some of the dicts, but not all of
them are covered. Furthermore, the intended provider behavior isn't
always immediately obvious.
Let's take "deploy_replica_target_resources" for example, it's
meant to deploy a minion instance and return the minion connection
info, if minion instances are needed for this import provider.
Somebody who writes a provider whould have a hard time guessing that.
We intend to solve this.
While at it, we'll add type annotations.
Also, we're cleaning up unused deprecated base classes, otherwise
new providers may end up implementing these APIs unnecessarily.
We'll keep the class definitions without any abstract methods
for backwards compatibility, in case there are providers that
still inherit them.1 parent 3d9dc50 commit 32ebe75
File tree
4 files changed
+1006
-208
lines changed- coriolis
- providers
- schemas
4 files changed
+1006
-208
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | | - | |
192 | | - | |
193 | 191 | | |
194 | 192 | | |
195 | 193 | | |
| |||
211 | 209 | | |
212 | 210 | | |
213 | 211 | | |
| 212 | + | |
| 213 | + | |
214 | 214 | | |
215 | 215 | | |
216 | 216 | | |
| |||
0 commit comments