Skip to content

Commit fa359f5

Browse files
committed
update after merging main
1 parent 00375e0 commit fa359f5

14 files changed

+41
-62
lines changed

Diff for: nexus/db-model/src/webhook_delivery.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ use crate::WebhookDeliveryState;
99
use crate::WebhookDeliveryTrigger;
1010
use crate::WebhookEvent;
1111
use crate::WebhookEventClass;
12-
use crate::schema::{webhook_delivery, webhook_delivery_attempt};
1312
use crate::serde_time_delta::optional_time_delta;
1413
use crate::typed_uuid::DbTypedUuid;
1514
use chrono::{DateTime, TimeDelta, Utc};
15+
use nexus_db_schema::schema::{webhook_delivery, webhook_delivery_attempt};
1616
use nexus_types::external_api::views;
1717
use omicron_uuid_kinds::GenericUuid;
1818
use omicron_uuid_kinds::{

Diff for: nexus/db-model/src/webhook_delivery_attempt_result.rs

+1-4
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,7 @@ use serde::Serialize;
99
use std::fmt;
1010

1111
impl_enum_type!(
12-
#[derive(SqlType, Debug, Clone)]
13-
#[diesel(postgres_type(name = "webhook_delivery_attempt_result", schema = "public"))]
14-
pub struct WebhookDeliveryAttemptResultEnum;
12+
WebhookDeliveryAttemptResultEnum:
1513

1614
#[derive(
1715
Copy,
@@ -24,7 +22,6 @@ impl_enum_type!(
2422
Deserialize,
2523
strum::VariantArray,
2624
)]
27-
#[diesel(sql_type = WebhookDeliveryAttemptResultEnum)]
2825
pub enum WebhookDeliveryAttemptResult;
2926

3027
FailedHttpError => b"failed_http_error"

Diff for: nexus/db-model/src/webhook_delivery_state.rs

+1-9
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,7 @@ use serde::Serialize;
99
use std::fmt;
1010

1111
impl_enum_type!(
12-
#[derive(SqlType, Debug, Clone)]
13-
#[diesel(postgres_type(name = "webhook_delivery_state", schema = "public"))]
14-
pub struct WebhookDeliveryStateEnum;
12+
WebhookDeliveryStateEnum:
1513

1614
#[derive(
1715
Copy,
@@ -24,7 +22,6 @@ impl_enum_type!(
2422
FromSqlRow,
2523
strum::VariantArray,
2624
)]
27-
#[diesel(sql_type = WebhookDeliveryStateEnum)]
2825
#[serde(rename_all = "snake_case")]
2926
pub enum WebhookDeliveryState;
3027

@@ -60,8 +57,3 @@ impl From<views::WebhookDeliveryState> for WebhookDeliveryState {
6057
}
6158
}
6259
}
63-
64-
impl diesel::query_builder::QueryId for WebhookDeliveryStateEnum {
65-
type QueryId = ();
66-
const HAS_STATIC_QUERY_ID: bool = false;
67-
}

Diff for: nexus/db-model/src/webhook_delivery_trigger.rs

+1-9
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,7 @@ use serde::Serialize;
99
use std::fmt;
1010

1111
impl_enum_type!(
12-
#[derive(SqlType, Debug, Clone)]
13-
#[diesel(postgres_type(name = "webhook_delivery_trigger", schema = "public"))]
14-
pub struct WebhookDeliveryTriggerEnum;
12+
WebhookDeliveryTriggerEnum:
1513

1614
#[derive(
1715
Copy,
@@ -24,7 +22,6 @@ impl_enum_type!(
2422
FromSqlRow,
2523
strum::VariantArray,
2624
)]
27-
#[diesel(sql_type = WebhookDeliveryTriggerEnum)]
2825
#[serde(rename_all = "snake_case")]
2926
pub enum WebhookDeliveryTrigger;
3027

@@ -64,8 +61,3 @@ impl From<views::WebhookDeliveryTrigger> for WebhookDeliveryTrigger {
6461
}
6562
}
6663
}
67-
68-
impl diesel::query_builder::QueryId for WebhookDeliveryTriggerEnum {
69-
type QueryId = ();
70-
const HAS_STATIC_QUERY_ID: bool = false;
71-
}

Diff for: nexus/db-model/src/webhook_event.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
44

55
use crate::WebhookEventClass;
6-
use crate::schema::webhook_event;
76
use chrono::{DateTime, Utc};
87
use db_macros::Asset;
8+
use nexus_db_schema::schema::webhook_event;
99
use serde::{Deserialize, Serialize};
1010

1111
/// A webhook event.

Diff for: nexus/db-model/src/webhook_event_class.rs

+1-9
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,7 @@ use serde::ser::{Serialize, Serializer};
99
use std::fmt;
1010

1111
impl_enum_type!(
12-
#[derive(SqlType, Debug, Clone)]
13-
#[diesel(postgres_type(name = "webhook_event_class", schema = "public"))]
14-
pub struct WebhookEventClassEnum;
12+
WebhookEventClassEnum:
1513

1614
#[derive(
1715
Copy,
@@ -24,7 +22,6 @@ impl_enum_type!(
2422
FromSqlRow,
2523
strum::VariantArray,
2624
)]
27-
#[diesel(sql_type = WebhookEventClassEnum)]
2825
pub enum WebhookEventClass;
2926

3027
Probe => b"probe"
@@ -113,11 +110,6 @@ impl<'de> Deserialize<'de> for WebhookEventClass {
113110
}
114111
}
115112

116-
impl diesel::query_builder::QueryId for WebhookEventClassEnum {
117-
type QueryId = ();
118-
const HAS_STATIC_QUERY_ID: bool = false;
119-
}
120-
121113
impl std::str::FromStr for WebhookEventClass {
122114
type Err = EventClassParseError;
123115
fn from_str(s: &str) -> Result<Self, Self::Err> {

Diff for: nexus/db-model/src/webhook_rx.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@ use crate::Name;
88
use crate::SemverVersion;
99
use crate::WebhookEventClass;
1010
use crate::collection::DatastoreCollectionConfig;
11-
use crate::schema::{
12-
webhook_receiver, webhook_rx_event_glob, webhook_rx_subscription,
13-
webhook_secret,
14-
};
1511
use crate::schema_versions;
1612
use crate::typed_uuid::DbTypedUuid;
1713
use chrono::{DateTime, Utc};
1814
use db_macros::{Asset, Resource};
15+
use nexus_db_schema::schema::{
16+
webhook_receiver, webhook_rx_event_glob, webhook_rx_subscription,
17+
webhook_secret,
18+
};
1919
use nexus_types::external_api::views;
2020
use nexus_types::identity::Resource;
2121
use omicron_common::api::external::Error;

Diff for: nexus/db-queries/src/db/datastore/webhook_delivery.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -18,17 +18,17 @@ use crate::db::model::WebhookDeliveryTrigger;
1818
use crate::db::model::WebhookEvent;
1919
use crate::db::model::WebhookEventClass;
2020
use crate::db::pagination::paginated_multicolumn;
21-
use crate::db::schema;
22-
use crate::db::schema::webhook_delivery::dsl;
23-
use crate::db::schema::webhook_delivery_attempt::dsl as attempt_dsl;
24-
use crate::db::schema::webhook_event::dsl as event_dsl;
2521
use crate::db::update_and_check::UpdateAndCheck;
2622
use crate::db::update_and_check::UpdateAndQueryResult;
2723
use crate::db::update_and_check::UpdateStatus;
2824
use async_bb8_diesel::AsyncRunQueryDsl;
2925
use chrono::TimeDelta;
3026
use chrono::{DateTime, Utc};
3127
use diesel::prelude::*;
28+
use nexus_db_schema::schema;
29+
use nexus_db_schema::schema::webhook_delivery::dsl;
30+
use nexus_db_schema::schema::webhook_delivery_attempt::dsl as attempt_dsl;
31+
use nexus_db_schema::schema::webhook_event::dsl as event_dsl;
3232
use omicron_common::api::external::CreateResult;
3333
use omicron_common::api::external::DataPageParams;
3434
use omicron_common::api::external::Error;

Diff for: nexus/db-queries/src/db/datastore/webhook_event.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ use crate::db::error::public_error_from_diesel;
1111
use crate::db::model::WebhookEvent;
1212
use crate::db::model::WebhookEventClass;
1313
use crate::db::model::WebhookEventIdentity;
14-
use crate::db::schema::webhook_event::dsl as event_dsl;
1514
use async_bb8_diesel::AsyncRunQueryDsl;
1615
use diesel::prelude::*;
1716
use diesel::result::OptionalExtension;
17+
use nexus_db_schema::schema::webhook_event::dsl as event_dsl;
1818
use omicron_common::api::external::CreateResult;
1919
use omicron_common::api::external::Error;
2020
use omicron_common::api::external::UpdateResult;

Diff for: nexus/db-queries/src/db/datastore/webhook_rx.rs

+7-7
Original file line numberDiff line numberDiff line change
@@ -30,18 +30,18 @@ use crate::db::model::WebhookSubscriptionKind;
3030
use crate::db::pagination::paginated;
3131
use crate::db::pagination::paginated_multicolumn;
3232
use crate::db::pool::DbConnection;
33-
use crate::db::schema::webhook_delivery::dsl as delivery_dsl;
34-
use crate::db::schema::webhook_delivery_attempt::dsl as delivery_attempt_dsl;
35-
use crate::db::schema::webhook_event::dsl as event_dsl;
36-
use crate::db::schema::webhook_receiver::dsl as rx_dsl;
37-
use crate::db::schema::webhook_rx_event_glob::dsl as glob_dsl;
38-
use crate::db::schema::webhook_rx_subscription::dsl as subscription_dsl;
39-
use crate::db::schema::webhook_secret::dsl as secret_dsl;
4033
use crate::db::update_and_check::UpdateAndCheck;
4134
use crate::db::update_and_check::UpdateStatus;
4235
use crate::transaction_retry::OptionalError;
4336
use async_bb8_diesel::AsyncRunQueryDsl;
4437
use diesel::prelude::*;
38+
use nexus_db_schema::schema::webhook_delivery::dsl as delivery_dsl;
39+
use nexus_db_schema::schema::webhook_delivery_attempt::dsl as delivery_attempt_dsl;
40+
use nexus_db_schema::schema::webhook_event::dsl as event_dsl;
41+
use nexus_db_schema::schema::webhook_receiver::dsl as rx_dsl;
42+
use nexus_db_schema::schema::webhook_rx_event_glob::dsl as glob_dsl;
43+
use nexus_db_schema::schema::webhook_rx_subscription::dsl as subscription_dsl;
44+
use nexus_db_schema::schema::webhook_secret::dsl as secret_dsl;
4545
use nexus_types::external_api::params;
4646
use nexus_types::identity::Resource;
4747
use nexus_types::internal_api::background::WebhookGlobStatus;

Diff for: nexus/db-schema/src/enums.rs

+4
Original file line numberDiff line numberDiff line change
@@ -83,5 +83,9 @@ define_enums! {
8383
VpcFirewallRuleProtocolEnum => "vpc_firewall_rule_protocol",
8484
VpcFirewallRuleStatusEnum => "vpc_firewall_rule_status",
8585
VpcRouterKindEnum => "vpc_router_kind",
86+
WebhookEventClassEnum => "webhook_event_class",
87+
WebhookDeliveryAttemptResultEnum => "webhook_delivery_attempt_result",
88+
WebhookDeliveryTriggerEnum => "webhook_delivery_trigger",
89+
WebhookDeliveryStateEnum => "webhook_delivery_state",
8690
ZoneTypeEnum => "zone_type",
8791
}

Diff for: nexus/db-schema/src/schema.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -2209,7 +2209,7 @@ table! {
22092209
table! {
22102210
webhook_rx_subscription (rx_id, event_class) {
22112211
rx_id -> Uuid,
2212-
event_class -> crate::WebhookEventClassEnum,
2212+
event_class -> crate::enums::WebhookEventClassEnum,
22132213
glob -> Nullable<Text>,
22142214
time_created -> Timestamptz,
22152215
}
@@ -2241,7 +2241,7 @@ table! {
22412241
id -> Uuid,
22422242
time_created -> Timestamptz,
22432243
time_modified -> Timestamptz,
2244-
event_class -> crate::WebhookEventClassEnum,
2244+
event_class -> crate::enums::WebhookEventClassEnum,
22452245
event -> Jsonb,
22462246
time_dispatched -> Nullable<Timestamptz>,
22472247
num_dispatched -> Int8,
@@ -2253,11 +2253,11 @@ table! {
22532253
id -> Uuid,
22542254
event_id -> Uuid,
22552255
rx_id -> Uuid,
2256-
triggered_by -> crate::WebhookDeliveryTriggerEnum,
2256+
triggered_by -> crate::enums::WebhookDeliveryTriggerEnum,
22572257
attempts -> Int2,
22582258
time_created -> Timestamptz,
22592259
time_completed -> Nullable<Timestamptz>,
2260-
state -> crate::WebhookDeliveryStateEnum,
2260+
state -> crate::enums::WebhookDeliveryStateEnum,
22612261
deliverator_id -> Nullable<Uuid>,
22622262
time_leased -> Nullable<Timestamptz>,
22632263
}
@@ -2275,7 +2275,7 @@ table! {
22752275
delivery_id -> Uuid,
22762276
attempt -> Int2,
22772277
rx_id -> Uuid,
2278-
result -> crate::WebhookDeliveryAttemptResultEnum,
2278+
result -> crate::enums::WebhookDeliveryAttemptResultEnum,
22792279
response_status -> Nullable<Int4>,
22802280
response_duration -> Nullable<Interval>,
22812281
time_created -> Timestamptz,

Diff for: nexus/src/app/background/tasks/webhook_dispatcher.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -364,9 +364,9 @@ mod test {
364364
// dispatching.
365365
#[nexus_test(server = crate::Server)]
366366
async fn test_glob_reprocessing(cptestctx: &ControlPlaneTestContext) {
367-
use nexus_db_model::schema::webhook_receiver::dsl as rx_dsl;
368-
use nexus_db_model::schema::webhook_rx_event_glob::dsl as glob_dsl;
369-
use nexus_db_model::schema::webhook_rx_subscription::dsl as subscription_dsl;
367+
use nexus_db_schema::schema::webhook_receiver::dsl as rx_dsl;
368+
use nexus_db_schema::schema::webhook_rx_event_glob::dsl as glob_dsl;
369+
use nexus_db_schema::schema::webhook_rx_subscription::dsl as subscription_dsl;
370370

371371
let nexus = &cptestctx.server.server_context().nexus;
372372
let datastore = nexus.datastore();

Diff for: nexus/tests/integration_tests/schema.rs

+7-5
Original file line numberDiff line numberDiff line change
@@ -2068,8 +2068,10 @@ fn after_136_0_0<'a>(ctx: &'a MigrationContext<'a>) -> BoxFuture<'a, ()> {
20682068
FROM webhook_event
20692069
WHERE time_dispatched IS NOT NULL
20702070
"#,
2071-
&[]).await
2072-
.expect("loaded bp_omicron_zone rows");
2071+
&[],
2072+
)
2073+
.await
2074+
.expect("loaded bp_omicron_zone rows");
20732075

20742076
let records = process_rows(&rows);
20752077

@@ -2093,7 +2095,7 @@ fn after_136_0_0<'a>(ctx: &'a MigrationContext<'a>) -> BoxFuture<'a, ()> {
20932095
],
20942096
"singleton liveness probe webhook event record must have the \
20952097
correct values",
2096-
);
2098+
);
20972099
})
20982100
}
20992101

@@ -2155,8 +2157,8 @@ fn get_migration_checks() -> BTreeMap<Version, DataMigrationFns> {
21552157
);
21562158
map.insert(
21572159
Version::new(136, 0, 0),
2158-
DataMigrationFns::new().after(after_136_0_0)
2159-
)
2160+
DataMigrationFns::new().after(after_136_0_0),
2161+
);
21602162

21612163
map
21622164
}

0 commit comments

Comments
 (0)