Skip to content

Commit 46f3da1

Browse files
committed
Add leader_cluster_address field to sys/leader endpoint
The Vault API returns a `leader_cluster_address` field from the /sys/leader endpoint, which provides the cluster address where the leader is running (distinct from `leader_address` which is the API address). This change exposes that field through the `LeaderStatus` response object as `cluster_address`. Changes: - Added `leader_cluster_address` field to `LeaderStatus` class - Added test coverage for the new field - Updated example documentation - Updated CHANGELOG Fixes #204
1 parent b3a15db commit 46f3da1

File tree

3 files changed

+11
-1
lines changed

3 files changed

+11
-1
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
## v?.??.? (Unreleased)
44

5+
IMPROVEMENTS
6+
7+
- Added `cluster_address` field to `LeaderStatus` response from `sys/leader` endpoint [GH-204]
8+
59
BUG FIXES
610

711
- Fixed `encode_path` incorrectly encoding hyphens (`-`), which caused 403 errors on Vault 1.15+ [GH-350, GH-343]

lib/vault/api/sys/leader.rb

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,11 @@ class LeaderStatus < Response
1818
# @return [String]
1919
field :leader_address, as: :address
2020

21+
# @!attribute [r] cluster_address
22+
# URL where the cluster leader is running.
23+
# @return [String]
24+
field :leader_cluster_address, as: :cluster_address
25+
2126
# @deprecated Use {#ha_enabled?} instead
2227
def ha?; ha_enabled?; end
2328

@@ -35,7 +40,7 @@ class Sys
3540
# Determine the leader status for this vault.
3641
#
3742
# @example
38-
# Vault.sys.leader #=> #<Vault::LeaderStatus ha_enabled=false, is_self=false, leader_address="">
43+
# Vault.sys.leader #=> #<Vault::LeaderStatus ha_enabled=false, is_self=false, leader_address="", leader_cluster_address="">
3944
#
4045
# @return [LeaderStatus]
4146
def leader

spec/integration/api/sys/leader_spec.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ module Vault
1717
expect(result.is_leader?).to be(false)
1818
expect(result.leader?).to be(false)
1919
expect(result.address).to eq("")
20+
expect(result.cluster_address).to eq("")
2021
end
2122
end
2223

0 commit comments

Comments
 (0)