async-service-supervisor-envoy 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/bake/async/service/supervisor/envoy.rb +47 -0
- data/lib/async/service/supervisor/envoy/version.rb +1 -1
- data/readme.md +4 -0
- data/releases.md +4 -0
- data.tar.gz.sig +0 -0
- metadata +2 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8cc76c3df4e361de12ad49143c31e5faca1228296ae3e0ca3eb698e5b7b97d16
|
|
4
|
+
data.tar.gz: 941d1d35f6780ec586f57ee50c31228d12c325c9675a5a2d75c5bc6d455652f5
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e45791d7ab2c2e3dbfd3ca22adf5f1df7dbd4bcc25a2e4a9c9cd9ec923e4bcc5d0817c7753d3ed756b175beb6e014be279e9663ffef75bc53b608e6908adfba8
|
|
7
|
+
data.tar.gz: 0b2dd096da3c2535f7de470b2d1f2bcb4674f33f05035936ce878a76137bc4a9872e95617bc57e2ea3793de19c55e1a966067bcef78fb251766dc27dc17f4c4b
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Released under the MIT License.
|
|
4
|
+
# Copyright, 2026, by Samuel Williams.
|
|
5
|
+
|
|
6
|
+
# Get the running Envoy monitor status from the supervisor.
|
|
7
|
+
def status
|
|
8
|
+
envoy_status
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Get the clusters currently published by the running Envoy monitor.
|
|
12
|
+
def clusters
|
|
13
|
+
fetch_clusters
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
# Get a compact endpoint list from the running Envoy monitor.
|
|
17
|
+
def endpoints
|
|
18
|
+
fetch_clusters.flat_map do |cluster, entries|
|
|
19
|
+
entries.map do |entry|
|
|
20
|
+
entry.merge(cluster: cluster)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
private
|
|
26
|
+
|
|
27
|
+
def supervisor_status
|
|
28
|
+
context["async:service:supervisor:status"].call
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def envoy_status
|
|
32
|
+
status = supervisor_status
|
|
33
|
+
monitor = status.find do |entry|
|
|
34
|
+
entry[:type] == "Async::Service::Supervisor::Envoy::Monitor"
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
unless monitor
|
|
38
|
+
raise "No Async::Service::Supervisor::Envoy::Monitor status found."
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
monitor
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def fetch_clusters
|
|
45
|
+
status = envoy_status
|
|
46
|
+
status.fetch(:data).fetch(:clusters)
|
|
47
|
+
end
|
data/readme.md
CHANGED
|
@@ -25,6 +25,10 @@ Please see the [project documentation](https://socketry.github.io/async-service-
|
|
|
25
25
|
|
|
26
26
|
Please see the [project releases](https://socketry.github.io/async-service-supervisor-envoy/releases/index) for all releases.
|
|
27
27
|
|
|
28
|
+
### v0.3.1
|
|
29
|
+
|
|
30
|
+
- Add Bake tasks for inspecting Envoy monitor status, clusters, and endpoints.
|
|
31
|
+
|
|
28
32
|
### v0.3.0
|
|
29
33
|
|
|
30
34
|
- Add supervisor-driven out-of-band ORCA load reporting for independently addressable workers.
|
data/releases.md
CHANGED
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: async-service-supervisor-envoy
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Samuel Williams
|
|
@@ -112,6 +112,7 @@ executables: []
|
|
|
112
112
|
extensions: []
|
|
113
113
|
extra_rdoc_files: []
|
|
114
114
|
files:
|
|
115
|
+
- bake/async/service/supervisor/envoy.rb
|
|
115
116
|
- code.md
|
|
116
117
|
- context/getting-started.md
|
|
117
118
|
- context/index.yaml
|
metadata.gz.sig
CHANGED
|
Binary file
|