update typify; update tests (#326)

This commit is contained in:
Adam Leventhal 2023-02-04 17:22:55 -08:00 committed by GitHub
parent 88ff3cf1e0
commit c26af3bd95
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 5172 additions and 3 deletions

6
Cargo.lock generated
View File

@ -2025,7 +2025,7 @@ checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
[[package]]
name = "typify"
version = "0.0.11-dev"
source = "git+https://github.com/oxidecomputer/typify#b745a238675ef5c9ee2466029fc8804db292eb51"
source = "git+https://github.com/oxidecomputer/typify#f6bdfa36b75e5e77ef17cf6dcfe01a939d8b918f"
dependencies = [
"typify-impl",
"typify-macro",
@ -2034,7 +2034,7 @@ dependencies = [
[[package]]
name = "typify-impl"
version = "0.0.11-dev"
source = "git+https://github.com/oxidecomputer/typify#b745a238675ef5c9ee2466029fc8804db292eb51"
source = "git+https://github.com/oxidecomputer/typify#f6bdfa36b75e5e77ef17cf6dcfe01a939d8b918f"
dependencies = [
"heck",
"log",
@ -2052,7 +2052,7 @@ dependencies = [
[[package]]
name = "typify-macro"
version = "0.0.11-dev"
source = "git+https://github.com/oxidecomputer/typify#b745a238675ef5c9ee2466029fc8804db292eb51"
source = "git+https://github.com/oxidecomputer/typify#f6bdfa36b75e5e77ef17cf6dcfe01a939d8b918f"
dependencies = [
"proc-macro2",
"quote",

View File

@ -16,6 +16,12 @@ pub mod types {
pub state: String,
}
impl From<&Task> for Task {
fn from(value: &Task) -> Self {
value.clone()
}
}
impl Task {
pub fn builder() -> builder::Task {
builder::Task::default()
@ -30,6 +36,12 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&TaskEvent> for TaskEvent {
fn from(value: &TaskEvent) -> Self {
value.clone()
}
}
impl TaskEvent {
pub fn builder() -> builder::TaskEvent {
builder::TaskEvent::default()
@ -43,6 +55,12 @@ pub mod types {
pub size: u64,
}
impl From<&TaskOutput> for TaskOutput {
fn from(value: &TaskOutput) -> Self {
value.clone()
}
}
impl TaskOutput {
pub fn builder() -> builder::TaskOutput {
builder::TaskOutput::default()
@ -57,6 +75,12 @@ pub mod types {
pub script: String,
}
impl From<&TaskSubmit> for TaskSubmit {
fn from(value: &TaskSubmit) -> Self {
value.clone()
}
}
impl TaskSubmit {
pub fn builder() -> builder::TaskSubmit {
builder::TaskSubmit::default()
@ -68,6 +92,12 @@ pub mod types {
pub id: String,
}
impl From<&TaskSubmitResult> for TaskSubmitResult {
fn from(value: &TaskSubmitResult) -> Self {
value.clone()
}
}
impl TaskSubmitResult {
pub fn builder() -> builder::TaskSubmitResult {
builder::TaskSubmitResult::default()
@ -79,6 +109,12 @@ pub mod types {
pub id: String,
}
impl From<&UploadedChunk> for UploadedChunk {
fn from(value: &UploadedChunk) -> Self {
value.clone()
}
}
impl UploadedChunk {
pub fn builder() -> builder::UploadedChunk {
builder::UploadedChunk::default()
@ -90,6 +126,12 @@ pub mod types {
pub name: String,
}
impl From<&UserCreate> for UserCreate {
fn from(value: &UserCreate) -> Self {
value.clone()
}
}
impl UserCreate {
pub fn builder() -> builder::UserCreate {
builder::UserCreate::default()
@ -103,6 +145,12 @@ pub mod types {
pub token: String,
}
impl From<&UserCreateResult> for UserCreateResult {
fn from(value: &UserCreateResult) -> Self {
value.clone()
}
}
impl UserCreateResult {
pub fn builder() -> builder::UserCreateResult {
builder::UserCreateResult::default()
@ -115,6 +163,12 @@ pub mod types {
pub name: String,
}
impl From<&WhoamiResult> for WhoamiResult {
fn from(value: &WhoamiResult) -> Self {
value.clone()
}
}
impl WhoamiResult {
pub fn builder() -> builder::WhoamiResult {
builder::WhoamiResult::default()
@ -133,6 +187,12 @@ pub mod types {
pub tasks: Vec<WorkerTask>,
}
impl From<&Worker> for Worker {
fn from(value: &Worker) -> Self {
value.clone()
}
}
impl Worker {
pub fn builder() -> builder::Worker {
builder::Worker::default()
@ -146,6 +206,12 @@ pub mod types {
pub size: i64,
}
impl From<&WorkerAddOutput> for WorkerAddOutput {
fn from(value: &WorkerAddOutput) -> Self {
value.clone()
}
}
impl WorkerAddOutput {
pub fn builder() -> builder::WorkerAddOutput {
builder::WorkerAddOutput::default()
@ -159,6 +225,12 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&WorkerAppendTask> for WorkerAppendTask {
fn from(value: &WorkerAppendTask) -> Self {
value.clone()
}
}
impl WorkerAppendTask {
pub fn builder() -> builder::WorkerAppendTask {
builder::WorkerAppendTask::default()
@ -171,6 +243,12 @@ pub mod types {
pub token: String,
}
impl From<&WorkerBootstrap> for WorkerBootstrap {
fn from(value: &WorkerBootstrap) -> Self {
value.clone()
}
}
impl WorkerBootstrap {
pub fn builder() -> builder::WorkerBootstrap {
builder::WorkerBootstrap::default()
@ -182,6 +260,12 @@ pub mod types {
pub id: String,
}
impl From<&WorkerBootstrapResult> for WorkerBootstrapResult {
fn from(value: &WorkerBootstrapResult) -> Self {
value.clone()
}
}
impl WorkerBootstrapResult {
pub fn builder() -> builder::WorkerBootstrapResult {
builder::WorkerBootstrapResult::default()
@ -193,6 +277,12 @@ pub mod types {
pub failed: bool,
}
impl From<&WorkerCompleteTask> for WorkerCompleteTask {
fn from(value: &WorkerCompleteTask) -> Self {
value.clone()
}
}
impl WorkerCompleteTask {
pub fn builder() -> builder::WorkerCompleteTask {
builder::WorkerCompleteTask::default()
@ -206,6 +296,12 @@ pub mod types {
pub task: Option<WorkerPingTask>,
}
impl From<&WorkerPingResult> for WorkerPingResult {
fn from(value: &WorkerPingResult) -> Self {
value.clone()
}
}
impl WorkerPingResult {
pub fn builder() -> builder::WorkerPingResult {
builder::WorkerPingResult::default()
@ -219,6 +315,12 @@ pub mod types {
pub script: String,
}
impl From<&WorkerPingTask> for WorkerPingTask {
fn from(value: &WorkerPingTask) -> Self {
value.clone()
}
}
impl WorkerPingTask {
pub fn builder() -> builder::WorkerPingTask {
builder::WorkerPingTask::default()
@ -232,6 +334,12 @@ pub mod types {
pub owner: String,
}
impl From<&WorkerTask> for WorkerTask {
fn from(value: &WorkerTask) -> Self {
value.clone()
}
}
impl WorkerTask {
pub fn builder() -> builder::WorkerTask {
builder::WorkerTask::default()
@ -243,6 +351,12 @@ pub mod types {
pub workers: Vec<Worker>,
}
impl From<&WorkersResult> for WorkersResult {
fn from(value: &WorkersResult) -> Self {
value.clone()
}
}
impl WorkersResult {
pub fn builder() -> builder::WorkersResult {
builder::WorkersResult::default()

View File

@ -16,6 +16,12 @@ pub mod types {
pub state: String,
}
impl From<&Task> for Task {
fn from(value: &Task) -> Self {
value.clone()
}
}
impl Task {
pub fn builder() -> builder::Task {
builder::Task::default()
@ -30,6 +36,12 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&TaskEvent> for TaskEvent {
fn from(value: &TaskEvent) -> Self {
value.clone()
}
}
impl TaskEvent {
pub fn builder() -> builder::TaskEvent {
builder::TaskEvent::default()
@ -43,6 +55,12 @@ pub mod types {
pub size: u64,
}
impl From<&TaskOutput> for TaskOutput {
fn from(value: &TaskOutput) -> Self {
value.clone()
}
}
impl TaskOutput {
pub fn builder() -> builder::TaskOutput {
builder::TaskOutput::default()
@ -57,6 +75,12 @@ pub mod types {
pub script: String,
}
impl From<&TaskSubmit> for TaskSubmit {
fn from(value: &TaskSubmit) -> Self {
value.clone()
}
}
impl TaskSubmit {
pub fn builder() -> builder::TaskSubmit {
builder::TaskSubmit::default()
@ -68,6 +92,12 @@ pub mod types {
pub id: String,
}
impl From<&TaskSubmitResult> for TaskSubmitResult {
fn from(value: &TaskSubmitResult) -> Self {
value.clone()
}
}
impl TaskSubmitResult {
pub fn builder() -> builder::TaskSubmitResult {
builder::TaskSubmitResult::default()
@ -79,6 +109,12 @@ pub mod types {
pub id: String,
}
impl From<&UploadedChunk> for UploadedChunk {
fn from(value: &UploadedChunk) -> Self {
value.clone()
}
}
impl UploadedChunk {
pub fn builder() -> builder::UploadedChunk {
builder::UploadedChunk::default()
@ -90,6 +126,12 @@ pub mod types {
pub name: String,
}
impl From<&UserCreate> for UserCreate {
fn from(value: &UserCreate) -> Self {
value.clone()
}
}
impl UserCreate {
pub fn builder() -> builder::UserCreate {
builder::UserCreate::default()
@ -103,6 +145,12 @@ pub mod types {
pub token: String,
}
impl From<&UserCreateResult> for UserCreateResult {
fn from(value: &UserCreateResult) -> Self {
value.clone()
}
}
impl UserCreateResult {
pub fn builder() -> builder::UserCreateResult {
builder::UserCreateResult::default()
@ -115,6 +163,12 @@ pub mod types {
pub name: String,
}
impl From<&WhoamiResult> for WhoamiResult {
fn from(value: &WhoamiResult) -> Self {
value.clone()
}
}
impl WhoamiResult {
pub fn builder() -> builder::WhoamiResult {
builder::WhoamiResult::default()
@ -133,6 +187,12 @@ pub mod types {
pub tasks: Vec<WorkerTask>,
}
impl From<&Worker> for Worker {
fn from(value: &Worker) -> Self {
value.clone()
}
}
impl Worker {
pub fn builder() -> builder::Worker {
builder::Worker::default()
@ -146,6 +206,12 @@ pub mod types {
pub size: i64,
}
impl From<&WorkerAddOutput> for WorkerAddOutput {
fn from(value: &WorkerAddOutput) -> Self {
value.clone()
}
}
impl WorkerAddOutput {
pub fn builder() -> builder::WorkerAddOutput {
builder::WorkerAddOutput::default()
@ -159,6 +225,12 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&WorkerAppendTask> for WorkerAppendTask {
fn from(value: &WorkerAppendTask) -> Self {
value.clone()
}
}
impl WorkerAppendTask {
pub fn builder() -> builder::WorkerAppendTask {
builder::WorkerAppendTask::default()
@ -171,6 +243,12 @@ pub mod types {
pub token: String,
}
impl From<&WorkerBootstrap> for WorkerBootstrap {
fn from(value: &WorkerBootstrap) -> Self {
value.clone()
}
}
impl WorkerBootstrap {
pub fn builder() -> builder::WorkerBootstrap {
builder::WorkerBootstrap::default()
@ -182,6 +260,12 @@ pub mod types {
pub id: String,
}
impl From<&WorkerBootstrapResult> for WorkerBootstrapResult {
fn from(value: &WorkerBootstrapResult) -> Self {
value.clone()
}
}
impl WorkerBootstrapResult {
pub fn builder() -> builder::WorkerBootstrapResult {
builder::WorkerBootstrapResult::default()
@ -193,6 +277,12 @@ pub mod types {
pub failed: bool,
}
impl From<&WorkerCompleteTask> for WorkerCompleteTask {
fn from(value: &WorkerCompleteTask) -> Self {
value.clone()
}
}
impl WorkerCompleteTask {
pub fn builder() -> builder::WorkerCompleteTask {
builder::WorkerCompleteTask::default()
@ -206,6 +296,12 @@ pub mod types {
pub task: Option<WorkerPingTask>,
}
impl From<&WorkerPingResult> for WorkerPingResult {
fn from(value: &WorkerPingResult) -> Self {
value.clone()
}
}
impl WorkerPingResult {
pub fn builder() -> builder::WorkerPingResult {
builder::WorkerPingResult::default()
@ -219,6 +315,12 @@ pub mod types {
pub script: String,
}
impl From<&WorkerPingTask> for WorkerPingTask {
fn from(value: &WorkerPingTask) -> Self {
value.clone()
}
}
impl WorkerPingTask {
pub fn builder() -> builder::WorkerPingTask {
builder::WorkerPingTask::default()
@ -232,6 +334,12 @@ pub mod types {
pub owner: String,
}
impl From<&WorkerTask> for WorkerTask {
fn from(value: &WorkerTask) -> Self {
value.clone()
}
}
impl WorkerTask {
pub fn builder() -> builder::WorkerTask {
builder::WorkerTask::default()
@ -243,6 +351,12 @@ pub mod types {
pub workers: Vec<Worker>,
}
impl From<&WorkersResult> for WorkersResult {
fn from(value: &WorkersResult) -> Self {
value.clone()
}
}
impl WorkersResult {
pub fn builder() -> builder::WorkersResult {
builder::WorkersResult::default()

View File

@ -16,6 +16,12 @@ pub mod types {
pub state: String,
}
impl From<&Task> for Task {
fn from(value: &Task) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct TaskEvent {
pub payload: String,
@ -24,6 +30,12 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&TaskEvent> for TaskEvent {
fn from(value: &TaskEvent) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct TaskOutput {
pub id: String,
@ -31,6 +43,12 @@ pub mod types {
pub size: u64,
}
impl From<&TaskOutput> for TaskOutput {
fn from(value: &TaskOutput) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct TaskSubmit {
pub name: String,
@ -39,21 +57,45 @@ pub mod types {
pub script: String,
}
impl From<&TaskSubmit> for TaskSubmit {
fn from(value: &TaskSubmit) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct TaskSubmitResult {
pub id: String,
}
impl From<&TaskSubmitResult> for TaskSubmitResult {
fn from(value: &TaskSubmitResult) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct UploadedChunk {
pub id: String,
}
impl From<&UploadedChunk> for UploadedChunk {
fn from(value: &UploadedChunk) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct UserCreate {
pub name: String,
}
impl From<&UserCreate> for UserCreate {
fn from(value: &UserCreate) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct UserCreateResult {
pub id: String,
@ -61,12 +103,24 @@ pub mod types {
pub token: String,
}
impl From<&UserCreateResult> for UserCreateResult {
fn from(value: &UserCreateResult) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WhoamiResult {
pub id: String,
pub name: String,
}
impl From<&WhoamiResult> for WhoamiResult {
fn from(value: &WhoamiResult) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct Worker {
pub deleted: bool,
@ -79,6 +133,12 @@ pub mod types {
pub tasks: Vec<WorkerTask>,
}
impl From<&Worker> for Worker {
fn from(value: &Worker) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkerAddOutput {
pub chunks: Vec<String>,
@ -86,6 +146,12 @@ pub mod types {
pub size: i64,
}
impl From<&WorkerAddOutput> for WorkerAddOutput {
fn from(value: &WorkerAddOutput) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkerAppendTask {
pub payload: String,
@ -93,22 +159,46 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&WorkerAppendTask> for WorkerAppendTask {
fn from(value: &WorkerAppendTask) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkerBootstrap {
pub bootstrap: String,
pub token: String,
}
impl From<&WorkerBootstrap> for WorkerBootstrap {
fn from(value: &WorkerBootstrap) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkerBootstrapResult {
pub id: String,
}
impl From<&WorkerBootstrapResult> for WorkerBootstrapResult {
fn from(value: &WorkerBootstrapResult) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkerCompleteTask {
pub failed: bool,
}
impl From<&WorkerCompleteTask> for WorkerCompleteTask {
fn from(value: &WorkerCompleteTask) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkerPingResult {
pub poweroff: bool,
@ -116,6 +206,12 @@ pub mod types {
pub task: Option<WorkerPingTask>,
}
impl From<&WorkerPingResult> for WorkerPingResult {
fn from(value: &WorkerPingResult) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkerPingTask {
pub id: String,
@ -123,6 +219,12 @@ pub mod types {
pub script: String,
}
impl From<&WorkerPingTask> for WorkerPingTask {
fn from(value: &WorkerPingTask) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkerTask {
pub id: String,
@ -130,10 +232,22 @@ pub mod types {
pub owner: String,
}
impl From<&WorkerTask> for WorkerTask {
fn from(value: &WorkerTask) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct WorkersResult {
pub workers: Vec<Worker>,
}
impl From<&WorkersResult> for WorkersResult {
fn from(value: &WorkersResult) -> Self {
value.clone()
}
}
}
#[derive(Clone, Debug)]

View File

@ -13,6 +13,12 @@ pub mod types {
pub key: String,
}
impl From<&EnrolBody> for EnrolBody {
fn from(value: &EnrolBody) -> Self {
value.clone()
}
}
impl EnrolBody {
pub fn builder() -> builder::EnrolBody {
builder::EnrolBody::default()
@ -24,6 +30,12 @@ pub mod types {
pub summary: Vec<ReportSummary>,
}
impl From<&GlobalJobsResult> for GlobalJobsResult {
fn from(value: &GlobalJobsResult) -> Self {
value.clone()
}
}
impl GlobalJobsResult {
pub fn builder() -> builder::GlobalJobsResult {
builder::GlobalJobsResult::default()
@ -37,6 +49,12 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&OutputRecord> for OutputRecord {
fn from(value: &OutputRecord) -> Self {
value.clone()
}
}
impl OutputRecord {
pub fn builder() -> builder::OutputRecord {
builder::OutputRecord::default()
@ -49,6 +67,12 @@ pub mod types {
pub ok: bool,
}
impl From<&PingResult> for PingResult {
fn from(value: &PingResult) -> Self {
value.clone()
}
}
impl PingResult {
pub fn builder() -> builder::PingResult {
builder::PingResult::default()
@ -63,6 +87,12 @@ pub mod types {
pub id: ReportId,
}
impl From<&ReportFinishBody> for ReportFinishBody {
fn from(value: &ReportFinishBody) -> Self {
value.clone()
}
}
impl ReportFinishBody {
pub fn builder() -> builder::ReportFinishBody {
builder::ReportFinishBody::default()
@ -78,6 +108,12 @@ pub mod types {
pub uuid: String,
}
impl From<&ReportId> for ReportId {
fn from(value: &ReportId) -> Self {
value.clone()
}
}
impl ReportId {
pub fn builder() -> builder::ReportId {
builder::ReportId::default()
@ -90,6 +126,12 @@ pub mod types {
pub record: OutputRecord,
}
impl From<&ReportOutputBody> for ReportOutputBody {
fn from(value: &ReportOutputBody) -> Self {
value.clone()
}
}
impl ReportOutputBody {
pub fn builder() -> builder::ReportOutputBody {
builder::ReportOutputBody::default()
@ -101,6 +143,12 @@ pub mod types {
pub existed_already: bool,
}
impl From<&ReportResult> for ReportResult {
fn from(value: &ReportResult) -> Self {
value.clone()
}
}
impl ReportResult {
pub fn builder() -> builder::ReportResult {
builder::ReportResult::default()
@ -114,6 +162,12 @@ pub mod types {
pub start_time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&ReportStartBody> for ReportStartBody {
fn from(value: &ReportStartBody) -> Self {
value.clone()
}
}
impl ReportStartBody {
pub fn builder() -> builder::ReportStartBody {
builder::ReportStartBody::default()
@ -130,6 +184,12 @@ pub mod types {
pub when: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&ReportSummary> for ReportSummary {
fn from(value: &ReportSummary) -> Self {
value.clone()
}
}
impl ReportSummary {
pub fn builder() -> builder::ReportSummary {
builder::ReportSummary::default()

View File

@ -13,6 +13,12 @@ pub mod types {
pub key: String,
}
impl From<&EnrolBody> for EnrolBody {
fn from(value: &EnrolBody) -> Self {
value.clone()
}
}
impl EnrolBody {
pub fn builder() -> builder::EnrolBody {
builder::EnrolBody::default()
@ -24,6 +30,12 @@ pub mod types {
pub summary: Vec<ReportSummary>,
}
impl From<&GlobalJobsResult> for GlobalJobsResult {
fn from(value: &GlobalJobsResult) -> Self {
value.clone()
}
}
impl GlobalJobsResult {
pub fn builder() -> builder::GlobalJobsResult {
builder::GlobalJobsResult::default()
@ -37,6 +49,12 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&OutputRecord> for OutputRecord {
fn from(value: &OutputRecord) -> Self {
value.clone()
}
}
impl OutputRecord {
pub fn builder() -> builder::OutputRecord {
builder::OutputRecord::default()
@ -49,6 +67,12 @@ pub mod types {
pub ok: bool,
}
impl From<&PingResult> for PingResult {
fn from(value: &PingResult) -> Self {
value.clone()
}
}
impl PingResult {
pub fn builder() -> builder::PingResult {
builder::PingResult::default()
@ -63,6 +87,12 @@ pub mod types {
pub id: ReportId,
}
impl From<&ReportFinishBody> for ReportFinishBody {
fn from(value: &ReportFinishBody) -> Self {
value.clone()
}
}
impl ReportFinishBody {
pub fn builder() -> builder::ReportFinishBody {
builder::ReportFinishBody::default()
@ -78,6 +108,12 @@ pub mod types {
pub uuid: String,
}
impl From<&ReportId> for ReportId {
fn from(value: &ReportId) -> Self {
value.clone()
}
}
impl ReportId {
pub fn builder() -> builder::ReportId {
builder::ReportId::default()
@ -90,6 +126,12 @@ pub mod types {
pub record: OutputRecord,
}
impl From<&ReportOutputBody> for ReportOutputBody {
fn from(value: &ReportOutputBody) -> Self {
value.clone()
}
}
impl ReportOutputBody {
pub fn builder() -> builder::ReportOutputBody {
builder::ReportOutputBody::default()
@ -101,6 +143,12 @@ pub mod types {
pub existed_already: bool,
}
impl From<&ReportResult> for ReportResult {
fn from(value: &ReportResult) -> Self {
value.clone()
}
}
impl ReportResult {
pub fn builder() -> builder::ReportResult {
builder::ReportResult::default()
@ -114,6 +162,12 @@ pub mod types {
pub start_time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&ReportStartBody> for ReportStartBody {
fn from(value: &ReportStartBody) -> Self {
value.clone()
}
}
impl ReportStartBody {
pub fn builder() -> builder::ReportStartBody {
builder::ReportStartBody::default()
@ -130,6 +184,12 @@ pub mod types {
pub when: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&ReportSummary> for ReportSummary {
fn from(value: &ReportSummary) -> Self {
value.clone()
}
}
impl ReportSummary {
pub fn builder() -> builder::ReportSummary {
builder::ReportSummary::default()

View File

@ -13,11 +13,23 @@ pub mod types {
pub key: String,
}
impl From<&EnrolBody> for EnrolBody {
fn from(value: &EnrolBody) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct GlobalJobsResult {
pub summary: Vec<ReportSummary>,
}
impl From<&GlobalJobsResult> for GlobalJobsResult {
fn from(value: &GlobalJobsResult) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct OutputRecord {
pub msg: String,
@ -25,12 +37,24 @@ pub mod types {
pub time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&OutputRecord> for OutputRecord {
fn from(value: &OutputRecord) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct PingResult {
pub host: String,
pub ok: bool,
}
impl From<&PingResult> for PingResult {
fn from(value: &PingResult) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct ReportFinishBody {
pub duration_millis: i32,
@ -39,6 +63,12 @@ pub mod types {
pub id: ReportId,
}
impl From<&ReportFinishBody> for ReportFinishBody {
fn from(value: &ReportFinishBody) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct ReportId {
pub host: String,
@ -48,17 +78,35 @@ pub mod types {
pub uuid: String,
}
impl From<&ReportId> for ReportId {
fn from(value: &ReportId) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct ReportOutputBody {
pub id: ReportId,
pub record: OutputRecord,
}
impl From<&ReportOutputBody> for ReportOutputBody {
fn from(value: &ReportOutputBody) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct ReportResult {
pub existed_already: bool,
}
impl From<&ReportResult> for ReportResult {
fn from(value: &ReportResult) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct ReportStartBody {
pub id: ReportId,
@ -66,6 +114,12 @@ pub mod types {
pub start_time: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&ReportStartBody> for ReportStartBody {
fn from(value: &ReportStartBody) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct ReportSummary {
pub age_seconds: i32,
@ -75,6 +129,12 @@ pub mod types {
pub status: i32,
pub when: chrono::DateTime<chrono::offset::Utc>,
}
impl From<&ReportSummary> for ReportSummary {
fn from(value: &ReportSummary) -> Self {
value.clone()
}
}
}
#[derive(Clone, Debug)]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -27,6 +27,12 @@ pub mod types {
pub target: Vec<String>,
}
impl From<&CrucibleOpts> for CrucibleOpts {
fn from(value: &CrucibleOpts) -> Self {
value.clone()
}
}
impl CrucibleOpts {
pub fn builder() -> builder::CrucibleOpts {
builder::CrucibleOpts::default()
@ -40,6 +46,12 @@ pub mod types {
pub state: DiskAttachmentState,
}
impl From<&DiskAttachment> for DiskAttachment {
fn from(value: &DiskAttachment) -> Self {
value.clone()
}
}
impl DiskAttachment {
pub fn builder() -> builder::DiskAttachment {
builder::DiskAttachment::default()
@ -54,6 +66,12 @@ pub mod types {
Attached(uuid::Uuid),
}
impl From<&DiskAttachmentState> for DiskAttachmentState {
fn from(value: &DiskAttachmentState) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct DiskRequest {
pub device: String,
@ -64,6 +82,12 @@ pub mod types {
pub volume_construction_request: VolumeConstructionRequest,
}
impl From<&DiskRequest> for DiskRequest {
fn from(value: &DiskRequest) -> Self {
value.clone()
}
}
impl DiskRequest {
pub fn builder() -> builder::DiskRequest {
builder::DiskRequest::default()
@ -79,6 +103,12 @@ pub mod types {
pub request_id: String,
}
impl From<&Error> for Error {
fn from(value: &Error) -> Self {
value.clone()
}
}
impl Error {
pub fn builder() -> builder::Error {
builder::Error::default()
@ -93,6 +123,12 @@ pub mod types {
pub state: InstanceState,
}
impl From<&Instance> for Instance {
fn from(value: &Instance) -> Self {
value.clone()
}
}
impl Instance {
pub fn builder() -> builder::Instance {
builder::Instance::default()
@ -112,6 +148,12 @@ pub mod types {
pub properties: InstanceProperties,
}
impl From<&InstanceEnsureRequest> for InstanceEnsureRequest {
fn from(value: &InstanceEnsureRequest) -> Self {
value.clone()
}
}
impl InstanceEnsureRequest {
pub fn builder() -> builder::InstanceEnsureRequest {
builder::InstanceEnsureRequest::default()
@ -124,6 +166,12 @@ pub mod types {
pub migrate: Option<InstanceMigrateInitiateResponse>,
}
impl From<&InstanceEnsureResponse> for InstanceEnsureResponse {
fn from(value: &InstanceEnsureResponse) -> Self {
value.clone()
}
}
impl InstanceEnsureResponse {
pub fn builder() -> builder::InstanceEnsureResponse {
builder::InstanceEnsureResponse::default()
@ -135,6 +183,12 @@ pub mod types {
pub instance: Instance,
}
impl From<&InstanceGetResponse> for InstanceGetResponse {
fn from(value: &InstanceGetResponse) -> Self {
value.clone()
}
}
impl InstanceGetResponse {
pub fn builder() -> builder::InstanceGetResponse {
builder::InstanceGetResponse::default()
@ -148,6 +202,12 @@ pub mod types {
pub src_uuid: uuid::Uuid,
}
impl From<&InstanceMigrateInitiateRequest> for InstanceMigrateInitiateRequest {
fn from(value: &InstanceMigrateInitiateRequest) -> Self {
value.clone()
}
}
impl InstanceMigrateInitiateRequest {
pub fn builder() -> builder::InstanceMigrateInitiateRequest {
builder::InstanceMigrateInitiateRequest::default()
@ -159,6 +219,12 @@ pub mod types {
pub migration_id: uuid::Uuid,
}
impl From<&InstanceMigrateInitiateResponse> for InstanceMigrateInitiateResponse {
fn from(value: &InstanceMigrateInitiateResponse) -> Self {
value.clone()
}
}
impl InstanceMigrateInitiateResponse {
pub fn builder() -> builder::InstanceMigrateInitiateResponse {
builder::InstanceMigrateInitiateResponse::default()
@ -170,6 +236,12 @@ pub mod types {
pub migration_id: uuid::Uuid,
}
impl From<&InstanceMigrateStatusRequest> for InstanceMigrateStatusRequest {
fn from(value: &InstanceMigrateStatusRequest) -> Self {
value.clone()
}
}
impl InstanceMigrateStatusRequest {
pub fn builder() -> builder::InstanceMigrateStatusRequest {
builder::InstanceMigrateStatusRequest::default()
@ -181,6 +253,12 @@ pub mod types {
pub state: MigrationState,
}
impl From<&InstanceMigrateStatusResponse> for InstanceMigrateStatusResponse {
fn from(value: &InstanceMigrateStatusResponse) -> Self {
value.clone()
}
}
impl InstanceMigrateStatusResponse {
pub fn builder() -> builder::InstanceMigrateStatusResponse {
builder::InstanceMigrateStatusResponse::default()
@ -205,6 +283,12 @@ pub mod types {
pub vcpus: u8,
}
impl From<&InstanceProperties> for InstanceProperties {
fn from(value: &InstanceProperties) -> Self {
value.clone()
}
}
impl InstanceProperties {
pub fn builder() -> builder::InstanceProperties {
builder::InstanceProperties::default()
@ -226,6 +310,12 @@ pub mod types {
Destroyed,
}
impl From<&InstanceState> for InstanceState {
fn from(value: &InstanceState) -> Self {
value.clone()
}
}
impl ToString for InstanceState {
fn to_string(&self) -> String {
match *self {
@ -288,6 +378,12 @@ pub mod types {
pub gen: u64,
}
impl From<&InstanceStateMonitorRequest> for InstanceStateMonitorRequest {
fn from(value: &InstanceStateMonitorRequest) -> Self {
value.clone()
}
}
impl InstanceStateMonitorRequest {
pub fn builder() -> builder::InstanceStateMonitorRequest {
builder::InstanceStateMonitorRequest::default()
@ -300,6 +396,12 @@ pub mod types {
pub state: InstanceState,
}
impl From<&InstanceStateMonitorResponse> for InstanceStateMonitorResponse {
fn from(value: &InstanceStateMonitorResponse) -> Self {
value.clone()
}
}
impl InstanceStateMonitorResponse {
pub fn builder() -> builder::InstanceStateMonitorResponse {
builder::InstanceStateMonitorResponse::default()
@ -314,6 +416,12 @@ pub mod types {
MigrateStart,
}
impl From<&InstanceStateRequested> for InstanceStateRequested {
fn from(value: &InstanceStateRequested) -> Self {
value.clone()
}
}
impl ToString for InstanceStateRequested {
fn to_string(&self) -> String {
match *self {
@ -373,6 +481,12 @@ pub mod types {
Error,
}
impl From<&MigrationState> for MigrationState {
fn from(value: &MigrationState) -> Self {
value.clone()
}
}
impl ToString for MigrationState {
fn to_string(&self) -> String {
match *self {
@ -436,6 +550,12 @@ pub mod types {
pub name: String,
}
impl From<&NetworkInterface> for NetworkInterface {
fn from(value: &NetworkInterface) -> Self {
value.clone()
}
}
impl NetworkInterface {
pub fn builder() -> builder::NetworkInterface {
builder::NetworkInterface::default()
@ -449,12 +569,24 @@ pub mod types {
Attached(Slot),
}
impl From<&NetworkInterfaceAttachmentState> for NetworkInterfaceAttachmentState {
fn from(value: &NetworkInterfaceAttachmentState) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct NetworkInterfaceRequest {
pub name: String,
pub slot: Slot,
}
impl From<&NetworkInterfaceRequest> for NetworkInterfaceRequest {
fn from(value: &NetworkInterfaceRequest) -> Self {
value.clone()
}
}
impl NetworkInterfaceRequest {
pub fn builder() -> builder::NetworkInterfaceRequest {
builder::NetworkInterfaceRequest::default()
@ -472,6 +604,58 @@ pub mod types {
}
}
impl From<Slot> for u8 {
fn from(value: Slot) -> Self {
value.0
}
}
impl From<&Slot> for Slot {
fn from(value: &Slot) -> Self {
value.clone()
}
}
impl From<u8> for Slot {
fn from(value: u8) -> Self {
Self(value)
}
}
impl std::str::FromStr for Slot {
type Err = <u8 as std::str::FromStr>::Err;
fn from_str(value: &str) -> Result<Self, Self::Err> {
Ok(Self(value.parse()?))
}
}
impl std::convert::TryFrom<&str> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: &str) -> Result<Self, Self::Error> {
value.parse()
}
}
impl std::convert::TryFrom<&String> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: &String) -> Result<Self, Self::Error> {
value.parse()
}
}
impl std::convert::TryFrom<String> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: String) -> Result<Self, Self::Error> {
value.parse()
}
}
impl ToString for Slot {
fn to_string(&self) -> String {
self.0.to_string()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
#[serde(tag = "type")]
pub enum VolumeConstructionRequest {
@ -503,6 +687,12 @@ pub mod types {
},
}
impl From<&VolumeConstructionRequest> for VolumeConstructionRequest {
fn from(value: &VolumeConstructionRequest) -> Self {
value.clone()
}
}
mod builder {
pub struct CrucibleOpts {
cert_pem: Result<Option<String>, String>,

View File

@ -27,6 +27,12 @@ pub mod types {
pub target: Vec<String>,
}
impl From<&CrucibleOpts> for CrucibleOpts {
fn from(value: &CrucibleOpts) -> Self {
value.clone()
}
}
impl CrucibleOpts {
pub fn builder() -> builder::CrucibleOpts {
builder::CrucibleOpts::default()
@ -40,6 +46,12 @@ pub mod types {
pub state: DiskAttachmentState,
}
impl From<&DiskAttachment> for DiskAttachment {
fn from(value: &DiskAttachment) -> Self {
value.clone()
}
}
impl DiskAttachment {
pub fn builder() -> builder::DiskAttachment {
builder::DiskAttachment::default()
@ -54,6 +66,12 @@ pub mod types {
Attached(uuid::Uuid),
}
impl From<&DiskAttachmentState> for DiskAttachmentState {
fn from(value: &DiskAttachmentState) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, JsonSchema, Serialize)]
pub struct DiskRequest {
pub device: String,
@ -64,6 +82,12 @@ pub mod types {
pub volume_construction_request: VolumeConstructionRequest,
}
impl From<&DiskRequest> for DiskRequest {
fn from(value: &DiskRequest) -> Self {
value.clone()
}
}
impl DiskRequest {
pub fn builder() -> builder::DiskRequest {
builder::DiskRequest::default()
@ -79,6 +103,12 @@ pub mod types {
pub request_id: String,
}
impl From<&Error> for Error {
fn from(value: &Error) -> Self {
value.clone()
}
}
impl Error {
pub fn builder() -> builder::Error {
builder::Error::default()
@ -93,6 +123,12 @@ pub mod types {
pub state: InstanceState,
}
impl From<&Instance> for Instance {
fn from(value: &Instance) -> Self {
value.clone()
}
}
impl Instance {
pub fn builder() -> builder::Instance {
builder::Instance::default()
@ -112,6 +148,12 @@ pub mod types {
pub properties: InstanceProperties,
}
impl From<&InstanceEnsureRequest> for InstanceEnsureRequest {
fn from(value: &InstanceEnsureRequest) -> Self {
value.clone()
}
}
impl InstanceEnsureRequest {
pub fn builder() -> builder::InstanceEnsureRequest {
builder::InstanceEnsureRequest::default()
@ -124,6 +166,12 @@ pub mod types {
pub migrate: Option<InstanceMigrateInitiateResponse>,
}
impl From<&InstanceEnsureResponse> for InstanceEnsureResponse {
fn from(value: &InstanceEnsureResponse) -> Self {
value.clone()
}
}
impl InstanceEnsureResponse {
pub fn builder() -> builder::InstanceEnsureResponse {
builder::InstanceEnsureResponse::default()
@ -135,6 +183,12 @@ pub mod types {
pub instance: Instance,
}
impl From<&InstanceGetResponse> for InstanceGetResponse {
fn from(value: &InstanceGetResponse) -> Self {
value.clone()
}
}
impl InstanceGetResponse {
pub fn builder() -> builder::InstanceGetResponse {
builder::InstanceGetResponse::default()
@ -148,6 +202,12 @@ pub mod types {
pub src_uuid: uuid::Uuid,
}
impl From<&InstanceMigrateInitiateRequest> for InstanceMigrateInitiateRequest {
fn from(value: &InstanceMigrateInitiateRequest) -> Self {
value.clone()
}
}
impl InstanceMigrateInitiateRequest {
pub fn builder() -> builder::InstanceMigrateInitiateRequest {
builder::InstanceMigrateInitiateRequest::default()
@ -159,6 +219,12 @@ pub mod types {
pub migration_id: uuid::Uuid,
}
impl From<&InstanceMigrateInitiateResponse> for InstanceMigrateInitiateResponse {
fn from(value: &InstanceMigrateInitiateResponse) -> Self {
value.clone()
}
}
impl InstanceMigrateInitiateResponse {
pub fn builder() -> builder::InstanceMigrateInitiateResponse {
builder::InstanceMigrateInitiateResponse::default()
@ -170,6 +236,12 @@ pub mod types {
pub migration_id: uuid::Uuid,
}
impl From<&InstanceMigrateStatusRequest> for InstanceMigrateStatusRequest {
fn from(value: &InstanceMigrateStatusRequest) -> Self {
value.clone()
}
}
impl InstanceMigrateStatusRequest {
pub fn builder() -> builder::InstanceMigrateStatusRequest {
builder::InstanceMigrateStatusRequest::default()
@ -181,6 +253,12 @@ pub mod types {
pub state: MigrationState,
}
impl From<&InstanceMigrateStatusResponse> for InstanceMigrateStatusResponse {
fn from(value: &InstanceMigrateStatusResponse) -> Self {
value.clone()
}
}
impl InstanceMigrateStatusResponse {
pub fn builder() -> builder::InstanceMigrateStatusResponse {
builder::InstanceMigrateStatusResponse::default()
@ -205,6 +283,12 @@ pub mod types {
pub vcpus: u8,
}
impl From<&InstanceProperties> for InstanceProperties {
fn from(value: &InstanceProperties) -> Self {
value.clone()
}
}
impl InstanceProperties {
pub fn builder() -> builder::InstanceProperties {
builder::InstanceProperties::default()
@ -228,6 +312,12 @@ pub mod types {
Destroyed,
}
impl From<&InstanceState> for InstanceState {
fn from(value: &InstanceState) -> Self {
value.clone()
}
}
impl ToString for InstanceState {
fn to_string(&self) -> String {
match *self {
@ -290,6 +380,12 @@ pub mod types {
pub gen: u64,
}
impl From<&InstanceStateMonitorRequest> for InstanceStateMonitorRequest {
fn from(value: &InstanceStateMonitorRequest) -> Self {
value.clone()
}
}
impl InstanceStateMonitorRequest {
pub fn builder() -> builder::InstanceStateMonitorRequest {
builder::InstanceStateMonitorRequest::default()
@ -302,6 +398,12 @@ pub mod types {
pub state: InstanceState,
}
impl From<&InstanceStateMonitorResponse> for InstanceStateMonitorResponse {
fn from(value: &InstanceStateMonitorResponse) -> Self {
value.clone()
}
}
impl InstanceStateMonitorResponse {
pub fn builder() -> builder::InstanceStateMonitorResponse {
builder::InstanceStateMonitorResponse::default()
@ -318,6 +420,12 @@ pub mod types {
MigrateStart,
}
impl From<&InstanceStateRequested> for InstanceStateRequested {
fn from(value: &InstanceStateRequested) -> Self {
value.clone()
}
}
impl ToString for InstanceStateRequested {
fn to_string(&self) -> String {
match *self {
@ -379,6 +487,12 @@ pub mod types {
Error,
}
impl From<&MigrationState> for MigrationState {
fn from(value: &MigrationState) -> Self {
value.clone()
}
}
impl ToString for MigrationState {
fn to_string(&self) -> String {
match *self {
@ -442,6 +556,12 @@ pub mod types {
pub name: String,
}
impl From<&NetworkInterface> for NetworkInterface {
fn from(value: &NetworkInterface) -> Self {
value.clone()
}
}
impl NetworkInterface {
pub fn builder() -> builder::NetworkInterface {
builder::NetworkInterface::default()
@ -455,12 +575,24 @@ pub mod types {
Attached(Slot),
}
impl From<&NetworkInterfaceAttachmentState> for NetworkInterfaceAttachmentState {
fn from(value: &NetworkInterfaceAttachmentState) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, JsonSchema, Serialize)]
pub struct NetworkInterfaceRequest {
pub name: String,
pub slot: Slot,
}
impl From<&NetworkInterfaceRequest> for NetworkInterfaceRequest {
fn from(value: &NetworkInterfaceRequest) -> Self {
value.clone()
}
}
impl NetworkInterfaceRequest {
pub fn builder() -> builder::NetworkInterfaceRequest {
builder::NetworkInterfaceRequest::default()
@ -478,6 +610,58 @@ pub mod types {
}
}
impl From<Slot> for u8 {
fn from(value: Slot) -> Self {
value.0
}
}
impl From<&Slot> for Slot {
fn from(value: &Slot) -> Self {
value.clone()
}
}
impl From<u8> for Slot {
fn from(value: u8) -> Self {
Self(value)
}
}
impl std::str::FromStr for Slot {
type Err = <u8 as std::str::FromStr>::Err;
fn from_str(value: &str) -> Result<Self, Self::Err> {
Ok(Self(value.parse()?))
}
}
impl std::convert::TryFrom<&str> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: &str) -> Result<Self, Self::Error> {
value.parse()
}
}
impl std::convert::TryFrom<&String> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: &String) -> Result<Self, Self::Error> {
value.parse()
}
}
impl std::convert::TryFrom<String> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: String) -> Result<Self, Self::Error> {
value.parse()
}
}
impl ToString for Slot {
fn to_string(&self) -> String {
self.0.to_string()
}
}
#[derive(Clone, Debug, Deserialize, JsonSchema, Serialize)]
#[serde(tag = "type")]
pub enum VolumeConstructionRequest {
@ -509,6 +693,12 @@ pub mod types {
},
}
impl From<&VolumeConstructionRequest> for VolumeConstructionRequest {
fn from(value: &VolumeConstructionRequest) -> Self {
value.clone()
}
}
mod builder {
pub struct CrucibleOpts {
cert_pem: Result<Option<String>, String>,

View File

@ -27,6 +27,12 @@ pub mod types {
pub target: Vec<String>,
}
impl From<&CrucibleOpts> for CrucibleOpts {
fn from(value: &CrucibleOpts) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct DiskAttachment {
pub disk_id: uuid::Uuid,
@ -34,6 +40,12 @@ pub mod types {
pub state: DiskAttachmentState,
}
impl From<&DiskAttachment> for DiskAttachment {
fn from(value: &DiskAttachment) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub enum DiskAttachmentState {
Detached,
@ -42,6 +54,12 @@ pub mod types {
Attached(uuid::Uuid),
}
impl From<&DiskAttachmentState> for DiskAttachmentState {
fn from(value: &DiskAttachmentState) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct DiskRequest {
pub device: String,
@ -52,6 +70,12 @@ pub mod types {
pub volume_construction_request: VolumeConstructionRequest,
}
impl From<&DiskRequest> for DiskRequest {
fn from(value: &DiskRequest) -> Self {
value.clone()
}
}
///Error information from a response.
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct Error {
@ -61,6 +85,12 @@ pub mod types {
pub request_id: String,
}
impl From<&Error> for Error {
fn from(value: &Error) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct Instance {
pub disks: Vec<DiskAttachment>,
@ -69,6 +99,12 @@ pub mod types {
pub state: InstanceState,
}
impl From<&Instance> for Instance {
fn from(value: &Instance) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceEnsureRequest {
#[serde(default, skip_serializing_if = "Option::is_none")]
@ -82,17 +118,35 @@ pub mod types {
pub properties: InstanceProperties,
}
impl From<&InstanceEnsureRequest> for InstanceEnsureRequest {
fn from(value: &InstanceEnsureRequest) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceEnsureResponse {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub migrate: Option<InstanceMigrateInitiateResponse>,
}
impl From<&InstanceEnsureResponse> for InstanceEnsureResponse {
fn from(value: &InstanceEnsureResponse) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceGetResponse {
pub instance: Instance,
}
impl From<&InstanceGetResponse> for InstanceGetResponse {
fn from(value: &InstanceGetResponse) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceMigrateInitiateRequest {
pub migration_id: uuid::Uuid,
@ -100,21 +154,45 @@ pub mod types {
pub src_uuid: uuid::Uuid,
}
impl From<&InstanceMigrateInitiateRequest> for InstanceMigrateInitiateRequest {
fn from(value: &InstanceMigrateInitiateRequest) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceMigrateInitiateResponse {
pub migration_id: uuid::Uuid,
}
impl From<&InstanceMigrateInitiateResponse> for InstanceMigrateInitiateResponse {
fn from(value: &InstanceMigrateInitiateResponse) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceMigrateStatusRequest {
pub migration_id: uuid::Uuid,
}
impl From<&InstanceMigrateStatusRequest> for InstanceMigrateStatusRequest {
fn from(value: &InstanceMigrateStatusRequest) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceMigrateStatusResponse {
pub state: MigrationState,
}
impl From<&InstanceMigrateStatusResponse> for InstanceMigrateStatusResponse {
fn from(value: &InstanceMigrateStatusResponse) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceProperties {
///ID of the bootrom used to initialize this Instance.
@ -133,6 +211,12 @@ pub mod types {
pub vcpus: u8,
}
impl From<&InstanceProperties> for InstanceProperties {
fn from(value: &InstanceProperties) -> Self {
value.clone()
}
}
///Current state of an Instance.
#[derive(Clone, Copy, Debug, Deserialize, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize)]
pub enum InstanceState {
@ -148,6 +232,12 @@ pub mod types {
Destroyed,
}
impl From<&InstanceState> for InstanceState {
fn from(value: &InstanceState) -> Self {
value.clone()
}
}
impl ToString for InstanceState {
fn to_string(&self) -> String {
match *self {
@ -210,12 +300,24 @@ pub mod types {
pub gen: u64,
}
impl From<&InstanceStateMonitorRequest> for InstanceStateMonitorRequest {
fn from(value: &InstanceStateMonitorRequest) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct InstanceStateMonitorResponse {
pub gen: u64,
pub state: InstanceState,
}
impl From<&InstanceStateMonitorResponse> for InstanceStateMonitorResponse {
fn from(value: &InstanceStateMonitorResponse) -> Self {
value.clone()
}
}
#[derive(Clone, Copy, Debug, Deserialize, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize)]
pub enum InstanceStateRequested {
Run,
@ -224,6 +326,12 @@ pub mod types {
MigrateStart,
}
impl From<&InstanceStateRequested> for InstanceStateRequested {
fn from(value: &InstanceStateRequested) -> Self {
value.clone()
}
}
impl ToString for InstanceStateRequested {
fn to_string(&self) -> String {
match *self {
@ -283,6 +391,12 @@ pub mod types {
Error,
}
impl From<&MigrationState> for MigrationState {
fn from(value: &MigrationState) -> Self {
value.clone()
}
}
impl ToString for MigrationState {
fn to_string(&self) -> String {
match *self {
@ -346,6 +460,12 @@ pub mod types {
pub name: String,
}
impl From<&NetworkInterface> for NetworkInterface {
fn from(value: &NetworkInterface) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub enum NetworkInterfaceAttachmentState {
Detached,
@ -353,12 +473,24 @@ pub mod types {
Attached(Slot),
}
impl From<&NetworkInterfaceAttachmentState> for NetworkInterfaceAttachmentState {
fn from(value: &NetworkInterfaceAttachmentState) -> Self {
value.clone()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct NetworkInterfaceRequest {
pub name: String,
pub slot: Slot,
}
impl From<&NetworkInterfaceRequest> for NetworkInterfaceRequest {
fn from(value: &NetworkInterfaceRequest) -> Self {
value.clone()
}
}
///A stable index which is translated by Propolis into a PCI BDF, visible
/// to the guest.
#[derive(Clone, Debug, Deserialize, Serialize)]
@ -370,6 +502,58 @@ pub mod types {
}
}
impl From<Slot> for u8 {
fn from(value: Slot) -> Self {
value.0
}
}
impl From<&Slot> for Slot {
fn from(value: &Slot) -> Self {
value.clone()
}
}
impl From<u8> for Slot {
fn from(value: u8) -> Self {
Self(value)
}
}
impl std::str::FromStr for Slot {
type Err = <u8 as std::str::FromStr>::Err;
fn from_str(value: &str) -> Result<Self, Self::Err> {
Ok(Self(value.parse()?))
}
}
impl std::convert::TryFrom<&str> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: &str) -> Result<Self, Self::Error> {
value.parse()
}
}
impl std::convert::TryFrom<&String> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: &String) -> Result<Self, Self::Error> {
value.parse()
}
}
impl std::convert::TryFrom<String> for Slot {
type Error = <u8 as std::str::FromStr>::Err;
fn try_from(value: String) -> Result<Self, Self::Error> {
value.parse()
}
}
impl ToString for Slot {
fn to_string(&self) -> String {
self.0.to_string()
}
}
#[derive(Clone, Debug, Deserialize, Serialize)]
#[serde(tag = "type")]
pub enum VolumeConstructionRequest {
@ -400,6 +584,12 @@ pub mod types {
path: String,
},
}
impl From<&VolumeConstructionRequest> for VolumeConstructionRequest {
fn from(value: &VolumeConstructionRequest) -> Self {
value.clone()
}
}
}
#[derive(Clone, Debug)]

View File

@ -18,6 +18,12 @@ pub mod types {
pub yes: bool,
}
impl From<&BodyWithDefaults> for BodyWithDefaults {
fn from(value: &BodyWithDefaults) -> Self {
value.clone()
}
}
impl BodyWithDefaults {
pub fn builder() -> builder::BodyWithDefaults {
builder::BodyWithDefaults::default()
@ -33,6 +39,12 @@ pub mod types {
pub request_id: String,
}
impl From<&Error> for Error {
fn from(value: &Error) -> Self {
value.clone()
}
}
impl Error {
pub fn builder() -> builder::Error {
builder::Error::default()

View File

@ -18,6 +18,12 @@ pub mod types {
pub yes: bool,
}
impl From<&BodyWithDefaults> for BodyWithDefaults {
fn from(value: &BodyWithDefaults) -> Self {
value.clone()
}
}
///Error information from a response.
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct Error {
@ -27,6 +33,12 @@ pub mod types {
pub request_id: String,
}
impl From<&Error> for Error {
fn from(value: &Error) -> Self {
value.clone()
}
}
mod defaults {
pub(super) fn default_u64<T, const V: u64>() -> T
where

View File

@ -15,6 +15,12 @@ pub mod types {
pub message: String,
pub request_id: String,
}
impl From<&Error> for Error {
fn from(value: &Error) -> Self {
value.clone()
}
}
}
#[derive(Clone, Debug)]

View File

@ -15,6 +15,12 @@ pub mod types {
pub message: String,
pub request_id: String,
}
impl From<&Error> for Error {
fn from(value: &Error) -> Self {
value.clone()
}
}
}
#[derive(Clone, Debug)]