From 9141ceb624c88daf20d578835a9f050558e72873 Mon Sep 17 00:00:00 2001 From: "W. Trevor King" Date: Mon, 13 Apr 2020 10:40:51 -0700 Subject: [PATCH] WIP: Block 4.2 -> 4.3.10 for Azure clusters We don't know why we started seeing this in 4.3.10, and installer defaults for Azure CPU capacity haven't changed between 4.2 and 4.3, but I'm pushing this up as a mock up of what "block this edge for some types of clusters" might look like. --- README.md | 8 ++++++++ blocked-edges/4.3.10.yaml | 10 ++++++++++ 2 files changed, 18 insertions(+) create mode 100644 blocked-edges/4.3.10.yaml diff --git a/README.md b/README.md index b2ae165c5..3c6d3d2b7 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,14 @@ And LEAVE COMMENTS if you skip a version. Create/edit an appropriate file in `blocked_edges/`. - `to` is the release which has the existing incoming edges. - `from` is a regex for the previous release versions. +- `clusters` selects cluster flavors for which the edges will be blocked. + If it is unset, the edges will blocked for all clusters. + - `telemetry` is a PromQL expression. + Clusters will have edges blocked if their cluster ID shows up in `max by (_id) $EXPRESSION`. + - `insights` is evaluated against the cluster's most-recently pushed insights. + - `path` is the path extracted from the insights tarball. + - `jq` is a `jq` expression evaluated on the contents of the extracted `path`. + Clusters will have edges blocked if the `jq` output is `true`. For example: to block all incoming edges to a release create a file such as `blocked-edges/4.2.11.yaml` containing: ```yaml diff --git a/blocked-edges/4.3.10.yaml b/blocked-edges/4.3.10.yaml new file mode 100644 index 000000000..19717513e --- /dev/null +++ b/blocked-edges/4.3.10.yaml @@ -0,0 +1,10 @@ +to: 4.3.10 +from: 4\.2\..* +clusters: + telemetry: cluster_infrastructure_provider{type="Azure"} + insights: + path: config/infrastructure + # FIXME: what if we need to consume multiple paths from the tarball? + jq: .status.platformStatus.type == "Azure" or .status.platform == "Azure" + # FIXME: probably something more standard with Rust support. Maybe JSON Pointer: https://tools.ietf.org/html/rfc6901 ? Some scripting shim? +# 4.2 -> 4.3 updates on Azure exhaust nominal CPU capacity, https://bugzilla.redhat.com/show_bug.cgi?id=1820432