Skip to content

Commit 6e38368

Browse files
authored
chore(policy): fix HttpLocalRateLimit type casing (#13324)
Our other types (e.g. HttpRoute) follow the Rust convention of using "Http" instead of "HTTP". This commit updates the policy controller to reflect this convention. No user-facing changes.
1 parent 59be08e commit 6e38368

File tree

12 files changed

+44
-43
lines changed

12 files changed

+44
-43
lines changed

policy-controller/k8s/api/src/policy.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ pub use self::{
1717
network::{Cidr, Network},
1818
network_authentication::{NetworkAuthentication, NetworkAuthenticationSpec},
1919
ratelimit_policy::{
20-
HTTPLocalRateLimitPolicy, HTTPLocalRateLimitPolicyStatus, Limit, Override,
20+
HttpLocalRateLimitPolicy, HttpLocalRateLimitPolicyStatus, Limit, Override,
2121
RateLimitPolicySpec,
2222
},
2323
server::{Server, ServerSpec},

policy-controller/k8s/api/src/policy/ratelimit_policy.rs

+3-2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition;
88
group = "policy.linkerd.io",
99
version = "v1alpha1",
1010
kind = "HTTPLocalRateLimitPolicy",
11-
status = "HTTPLocalRateLimitPolicyStatus",
11+
root = "HttpLocalRateLimitPolicy",
12+
status = "HttpLocalRateLimitPolicyStatus",
1213
namespaced
1314
)]
1415
#[serde(rename_all = "camelCase")]
@@ -21,7 +22,7 @@ pub struct RateLimitPolicySpec {
2122

2223
#[derive(Clone, Debug, PartialEq, serde::Deserialize, serde::Serialize, schemars::JsonSchema)]
2324
#[serde(rename_all = "camelCase")]
24-
pub struct HTTPLocalRateLimitPolicyStatus {
25+
pub struct HttpLocalRateLimitPolicyStatus {
2526
pub conditions: Vec<Condition>,
2627
pub target_ref: LocalTargetRef,
2728
}

policy-controller/k8s/index/src/inbound/index.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -938,8 +938,8 @@ impl kubert::index::IndexNamespacedResource<k8s::policy::NetworkAuthentication>
938938
}
939939
}
940940

941-
impl kubert::index::IndexNamespacedResource<k8s::policy::HTTPLocalRateLimitPolicy> for Index {
942-
fn apply(&mut self, policy: k8s::policy::HTTPLocalRateLimitPolicy) {
941+
impl kubert::index::IndexNamespacedResource<k8s::policy::HttpLocalRateLimitPolicy> for Index {
942+
fn apply(&mut self, policy: k8s::policy::HttpLocalRateLimitPolicy) {
943943
let ns = policy.namespace().unwrap();
944944
let name = policy.name_unchecked();
945945
let _span = info_span!("apply", %ns, saz = %name).entered();
@@ -963,7 +963,7 @@ impl kubert::index::IndexNamespacedResource<k8s::policy::HTTPLocalRateLimitPolic
963963

964964
fn reset(
965965
&mut self,
966-
policies: Vec<k8s::policy::HTTPLocalRateLimitPolicy>,
966+
policies: Vec<k8s::policy::HttpLocalRateLimitPolicy>,
967967
deleted: HashMap<String, HashSet<String>>,
968968
) {
969969
let _span = info_span!("reset");

policy-controller/k8s/index/src/inbound/ratelimit_policy.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,10 @@ impl Spec {
6969
}
7070
}
7171

72-
impl TryFrom<k8s::policy::HTTPLocalRateLimitPolicy> for Spec {
72+
impl TryFrom<k8s::policy::HttpLocalRateLimitPolicy> for Spec {
7373
type Error = anyhow::Error;
7474

75-
fn try_from(rl: k8s::policy::HTTPLocalRateLimitPolicy) -> Result<Self> {
75+
fn try_from(rl: k8s::policy::HttpLocalRateLimitPolicy) -> Result<Self> {
7676
let creation_timestamp = rl.metadata.creation_timestamp.map(|Time(t)| t);
7777
let conditions = rl.status.map_or(vec![], |status| {
7878
status

policy-controller/k8s/index/src/inbound/tests/ratelimit_policy.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,8 @@ fn mk_ratelimit(
8888
total: Option<k8s::policy::Limit>,
8989
overrides: Vec<k8s::policy::Override>,
9090
server_name: impl ToString,
91-
) -> k8s::policy::HTTPLocalRateLimitPolicy {
92-
k8s::policy::HTTPLocalRateLimitPolicy {
91+
) -> k8s::policy::HttpLocalRateLimitPolicy {
92+
k8s::policy::HttpLocalRateLimitPolicy {
9393
metadata: k8s::ObjectMeta {
9494
namespace: Some(ns.to_string()),
9595
name: Some(name.to_string()),
@@ -105,7 +105,7 @@ fn mk_ratelimit(
105105
identity: None,
106106
overrides: Some(overrides),
107107
},
108-
status: Some(k8s::policy::HTTPLocalRateLimitPolicyStatus {
108+
status: Some(k8s::policy::HttpLocalRateLimitPolicyStatus {
109109
conditions: vec![k8s::Condition {
110110
last_transition_time: k8s::Time(chrono::DateTime::<chrono::Utc>::MIN_UTC),
111111
message: "".to_string(),

policy-controller/k8s/status/src/index.rs

+14-14
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ pub struct Index {
9090
route_refs: HashMap<NamespaceGroupKindName, RouteRef>,
9191

9292
/// Maps rate limit ids to a list of details about these rate limits.
93-
ratelimits: HashMap<ResourceId, HTTPLocalRateLimitPolicyRef>,
93+
ratelimits: HashMap<ResourceId, HttpLocalRateLimitPolicyRef>,
9494

9595
/// Maps egress network ids to a list of details about these networks.
9696
egress_networks: HashMap<ResourceId, EgressNetworkRef>,
@@ -115,7 +115,7 @@ struct RouteRef {
115115
}
116116

117117
#[derive(Clone, PartialEq)]
118-
struct HTTPLocalRateLimitPolicyRef {
118+
struct HttpLocalRateLimitPolicyRef {
119119
creation_timestamp: Option<DateTime<Utc>>,
120120
target_ref: ratelimit::TargetReference,
121121
status_conditions: Vec<k8s_core_api::Condition>,
@@ -279,8 +279,8 @@ impl Controller {
279279
self.patch_status::<k8s_gateway_api::TcpRoute>(&id.gkn.name, &id.namespace, patch).await;
280280
} else if id.gkn.group == k8s_gateway_api::TlsRoute::group(&()) && id.gkn.kind == k8s_gateway_api::TlsRoute::kind(&()) {
281281
self.patch_status::<k8s_gateway_api::TlsRoute>(&id.gkn.name, &id.namespace, patch).await;
282-
} else if id.gkn.group == linkerd_k8s_api::HTTPLocalRateLimitPolicy::group(&()) && id.gkn.kind == linkerd_k8s_api::HTTPLocalRateLimitPolicy::kind(&()) {
283-
self.patch_status::<linkerd_k8s_api::HTTPLocalRateLimitPolicy>(&id.gkn.name, &id.namespace, patch).await;
282+
} else if id.gkn.group == linkerd_k8s_api::HttpLocalRateLimitPolicy::group(&()) && id.gkn.kind == linkerd_k8s_api::HttpLocalRateLimitPolicy::kind(&()) {
283+
self.patch_status::<linkerd_k8s_api::HttpLocalRateLimitPolicy>(&id.gkn.name, &id.namespace, patch).await;
284284
} else if id.gkn.group == linkerd_k8s_api::EgressNetwork::group(&()) && id.gkn.kind == linkerd_k8s_api::EgressNetwork::kind(&()) {
285285
self.patch_status::<linkerd_k8s_api::EgressNetwork>(&id.gkn.name, &id.namespace, patch).await;
286286
}
@@ -430,7 +430,7 @@ impl Index {
430430
fn update_ratelimit(
431431
&mut self,
432432
id: ResourceId,
433-
ratelimit: &HTTPLocalRateLimitPolicyRef,
433+
ratelimit: &HttpLocalRateLimitPolicyRef,
434434
) -> bool {
435435
match self.ratelimits.entry(id) {
436436
Entry::Vacant(entry) => {
@@ -672,7 +672,7 @@ impl Index {
672672
&self,
673673
id: &NamespaceGroupKindName,
674674
target_ref: &ratelimit::TargetReference,
675-
) -> Option<linkerd_k8s_api::HTTPLocalRateLimitPolicyStatus> {
675+
) -> Option<linkerd_k8s_api::HttpLocalRateLimitPolicyStatus> {
676676
match target_ref {
677677
ratelimit::TargetReference::Server(server) => {
678678
let condition = if self.servers.contains(server) {
@@ -708,7 +708,7 @@ impl Index {
708708
no_matching_target()
709709
};
710710

711-
Some(linkerd_k8s_api::HTTPLocalRateLimitPolicyStatus {
711+
Some(linkerd_k8s_api::HttpLocalRateLimitPolicyStatus {
712712
conditions: vec![condition],
713713
target_ref: linkerd_k8s_api::LocalTargetRef {
714714
group: Some(POLICY_API_GROUP.to_string()),
@@ -724,7 +724,7 @@ impl Index {
724724
fn make_ratelimit_patch(
725725
&self,
726726
id: &NamespaceGroupKindName,
727-
ratelimit: &HTTPLocalRateLimitPolicyRef,
727+
ratelimit: &HttpLocalRateLimitPolicyRef,
728728
) -> Option<k8s_core_api::Patch<serde_json::Value>> {
729729
let status = self.target_ref_status(id, &ratelimit.target_ref);
730730

@@ -828,8 +828,8 @@ impl Index {
828828
let id = NamespaceGroupKindName {
829829
namespace: id.namespace.clone(),
830830
gkn: GroupKindName {
831-
group: linkerd_k8s_api::HTTPLocalRateLimitPolicy::group(&()),
832-
kind: linkerd_k8s_api::HTTPLocalRateLimitPolicy::kind(&()),
831+
group: linkerd_k8s_api::HttpLocalRateLimitPolicy::group(&()),
832+
kind: linkerd_k8s_api::HttpLocalRateLimitPolicy::kind(&()),
833833
name: id.name.clone().into(),
834834
},
835835
};
@@ -1220,8 +1220,8 @@ impl kubert::index::IndexNamespacedResource<k8s_core_api::Service> for Index {
12201220
// to handle resets specially.
12211221
}
12221222

1223-
impl kubert::index::IndexNamespacedResource<linkerd_k8s_api::HTTPLocalRateLimitPolicy> for Index {
1224-
fn apply(&mut self, resource: linkerd_k8s_api::HTTPLocalRateLimitPolicy) {
1223+
impl kubert::index::IndexNamespacedResource<linkerd_k8s_api::HttpLocalRateLimitPolicy> for Index {
1224+
fn apply(&mut self, resource: linkerd_k8s_api::HttpLocalRateLimitPolicy) {
12251225
let namespace = resource
12261226
.namespace()
12271227
.expect("HTTPLocalRateLimitPolicy must have a namespace");
@@ -1237,7 +1237,7 @@ impl kubert::index::IndexNamespacedResource<linkerd_k8s_api::HTTPLocalRateLimitP
12371237
let creation_timestamp = resource.metadata.creation_timestamp.map(|Time(t)| t);
12381238
let target_ref = ratelimit::TargetReference::make_target_ref(&namespace, &resource.spec);
12391239

1240-
let rl = HTTPLocalRateLimitPolicyRef {
1240+
let rl = HttpLocalRateLimitPolicyRef {
12411241
creation_timestamp,
12421242
target_ref,
12431243
status_conditions,
@@ -1349,7 +1349,7 @@ impl Index {
13491349
self.reconcile()
13501350
}
13511351

1352-
fn index_ratelimit(&mut self, id: ResourceId, ratelimit: HTTPLocalRateLimitPolicyRef) {
1352+
fn index_ratelimit(&mut self, id: ResourceId, ratelimit: HttpLocalRateLimitPolicyRef) {
13531353
// Insert into the index; if the route is already in the index, and it hasn't
13541354
// changed, skip creating a patch.
13551355
if !self.update_ratelimit(id.clone(), &ratelimit) {

policy-controller/k8s/status/src/resource_id.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ impl NamespaceGroupKindName {
2828
match (self.gkn.group.as_ref(), self.gkn.kind.as_ref()) {
2929
(POLICY_API_GROUP, "HTTPRoute") => Ok(linkerd_k8s_api::HttpRoute::api_version(&())),
3030
(POLICY_API_GROUP, "HTTPLocalRateLimitPolicy") => {
31-
Ok(linkerd_k8s_api::HTTPLocalRateLimitPolicy::api_version(&()))
31+
Ok(linkerd_k8s_api::HttpLocalRateLimitPolicy::api_version(&()))
3232
}
3333
(POLICY_API_GROUP, "EgressNetwork") => {
3434
Ok(linkerd_k8s_api::EgressNetwork::api_version(&()))

policy-controller/k8s/status/src/tests/ratelimit.rs

+8-8
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ fn ratelimit_accepted() {
3737
let (ratelimit_id, ratelimit) = make_ratelimit("rl-1".to_string(), "server-1".to_string());
3838
index.write().apply(ratelimit);
3939

40-
let expected_status = linkerd_k8s_api::HTTPLocalRateLimitPolicyStatus {
40+
let expected_status = linkerd_k8s_api::HttpLocalRateLimitPolicyStatus {
4141
conditions: vec![accepted()],
4242
target_ref: linkerd_k8s_api::LocalTargetRef {
4343
group: Some("policy.linkerd.io".to_string()),
@@ -73,7 +73,7 @@ fn ratelimit_not_accepted_no_matching_target() {
7373
let (ratelimit_id, ratelimit) = make_ratelimit("rl-1".to_string(), "server-2".to_string());
7474
index.write().apply(ratelimit);
7575

76-
let expected_status = linkerd_k8s_api::HTTPLocalRateLimitPolicyStatus {
76+
let expected_status = linkerd_k8s_api::HttpLocalRateLimitPolicyStatus {
7777
conditions: vec![no_matching_target()],
7878
target_ref: linkerd_k8s_api::LocalTargetRef {
7979
group: Some("policy.linkerd.io".to_string()),
@@ -109,7 +109,7 @@ fn ratelimit_not_accepted_already_exists() {
109109
let (rl_1_id, rl_1) = make_ratelimit("rl-1".to_string(), "server-1".to_string());
110110
index.write().apply(rl_1);
111111

112-
let expected_status = linkerd_k8s_api::HTTPLocalRateLimitPolicyStatus {
112+
let expected_status = linkerd_k8s_api::HttpLocalRateLimitPolicyStatus {
113113
conditions: vec![accepted()],
114114
target_ref: linkerd_k8s_api::LocalTargetRef {
115115
group: Some("policy.linkerd.io".to_string()),
@@ -129,7 +129,7 @@ fn ratelimit_not_accepted_already_exists() {
129129
let (rl_2_id, rl_2) = make_ratelimit("rl-2".to_string(), "server-1".to_string());
130130
index.write().apply(rl_2);
131131

132-
let expected_status = linkerd_k8s_api::HTTPLocalRateLimitPolicyStatus {
132+
let expected_status = linkerd_k8s_api::HttpLocalRateLimitPolicyStatus {
133133
conditions: vec![ratelimit_already_exists()],
134134
target_ref: linkerd_k8s_api::LocalTargetRef {
135135
group: Some("policy.linkerd.io".to_string()),
@@ -182,18 +182,18 @@ fn make_ratelimit(
182182
server: String,
183183
) -> (
184184
NamespaceGroupKindName,
185-
linkerd_k8s_api::HTTPLocalRateLimitPolicy,
185+
linkerd_k8s_api::HttpLocalRateLimitPolicy,
186186
) {
187187
let ratelimit_id = NamespaceGroupKindName {
188188
namespace: "ns".to_string(),
189189
gkn: GroupKindName {
190-
group: linkerd_k8s_api::HTTPLocalRateLimitPolicy::group(&()),
191-
kind: linkerd_k8s_api::HTTPLocalRateLimitPolicy::kind(&()),
190+
group: linkerd_k8s_api::HttpLocalRateLimitPolicy::group(&()),
191+
kind: linkerd_k8s_api::HttpLocalRateLimitPolicy::kind(&()),
192192
name: name.clone().into(),
193193
},
194194
};
195195

196-
let ratelimit = linkerd_k8s_api::HTTPLocalRateLimitPolicy {
196+
let ratelimit = linkerd_k8s_api::HttpLocalRateLimitPolicy {
197197
metadata: k8s_core_api::ObjectMeta {
198198
name: Some(name),
199199
namespace: Some("ns".to_string()),

policy-controller/src/admission.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use super::validation;
22
use crate::k8s::policy::{
33
httproute, server::Selector, AuthorizationPolicy, AuthorizationPolicySpec, EgressNetwork,
4-
EgressNetworkSpec, HTTPLocalRateLimitPolicy, HttpRoute, HttpRouteSpec, LocalTargetRef,
4+
EgressNetworkSpec, HttpLocalRateLimitPolicy, HttpRoute, HttpRouteSpec, LocalTargetRef,
55
MeshTLSAuthentication, MeshTLSAuthenticationSpec, NamespacedTargetRef, Network,
66
NetworkAuthentication, NetworkAuthenticationSpec, RateLimitPolicySpec, Server,
77
ServerAuthorization, ServerAuthorizationSpec, ServerSpec,
@@ -149,7 +149,7 @@ impl Admission {
149149
return self.admit_spec::<k8s_gateway_api::TcpRouteSpec>(req).await;
150150
}
151151

152-
if is_kind::<HTTPLocalRateLimitPolicy>(&req) {
152+
if is_kind::<HttpLocalRateLimitPolicy>(&req) {
153153
return self.admit_spec::<RateLimitPolicySpec>(req).await;
154154
}
155155

policy-controller/src/main.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ async fn main() -> Result<()> {
254254
);
255255

256256
let ratelimit_policies =
257-
runtime.watch_all::<k8s::policy::HTTPLocalRateLimitPolicy>(watcher::Config::default());
257+
runtime.watch_all::<k8s::policy::HttpLocalRateLimitPolicy>(watcher::Config::default());
258258
let ratelimit_policies_indexes = IndexList::new(inbound_index.clone())
259259
.push(status_index.clone())
260260
.shared();

policy-test/tests/admit_http_local_ratelimit_policy.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use k8s_openapi::chrono;
22
use linkerd_policy_controller_k8s_api::{
33
self as api,
44
policy::{
5-
HTTPLocalRateLimitPolicy, HTTPLocalRateLimitPolicyStatus, Limit, LocalTargetRef,
5+
HttpLocalRateLimitPolicy, HttpLocalRateLimitPolicyStatus, Limit, LocalTargetRef,
66
NamespacedTargetRef, Override, RateLimitPolicySpec,
77
},
88
};
@@ -74,8 +74,8 @@ fn mk_ratelimiter(
7474
total_rps: u32,
7575
identity_rps: u32,
7676
overrides: Vec<Override>,
77-
) -> HTTPLocalRateLimitPolicy {
78-
HTTPLocalRateLimitPolicy {
77+
) -> HttpLocalRateLimitPolicy {
78+
HttpLocalRateLimitPolicy {
7979
metadata: api::ObjectMeta {
8080
namespace: Some(namespace),
8181
name: Some("test".to_string()),
@@ -91,7 +91,7 @@ fn mk_ratelimiter(
9191
}),
9292
overrides: Some(overrides),
9393
},
94-
status: Some(HTTPLocalRateLimitPolicyStatus {
94+
status: Some(HttpLocalRateLimitPolicyStatus {
9595
conditions: vec![api::Condition {
9696
last_transition_time: api::Time(chrono::DateTime::<chrono::Utc>::MIN_UTC),
9797
message: "".to_string(),

policy-test/tests/inbound_api.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -334,7 +334,7 @@ async fn http_local_rate_limit_policy() {
334334
// Create a rate-limit policy associated to the server
335335
create(
336336
&client,
337-
k8s::policy::ratelimit_policy::HTTPLocalRateLimitPolicy {
337+
k8s::policy::ratelimit_policy::HttpLocalRateLimitPolicy {
338338
metadata: k8s::ObjectMeta {
339339
namespace: Some(ns.to_string()),
340340
name: Some("rl-0".to_string()),
@@ -356,7 +356,7 @@ async fn http_local_rate_limit_policy() {
356356
}],
357357
}]),
358358
},
359-
status: Some(k8s::policy::HTTPLocalRateLimitPolicyStatus {
359+
status: Some(k8s::policy::HttpLocalRateLimitPolicyStatus {
360360
conditions: vec![k8s::Condition {
361361
last_transition_time: k8s::Time(chrono::DateTime::<chrono::Utc>::MIN_UTC),
362362
message: "".to_string(),

0 commit comments

Comments
 (0)