lex-consul 0.1.1 → 0.1.2
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
- data/CHANGELOG.md +6 -0
- data/CLAUDE.md +5 -3
- data/README.md +6 -0
- data/lex-consul.gemspec +7 -0
- data/lib/legion/extensions/consul/version.rb +1 -1
- metadata +99 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 519308e388c1029a91f6b4d7533a6aa162f2002a1e95799ef3743cbc3923a5ac
|
|
4
|
+
data.tar.gz: 5db80a28ac34e91b13ca1c93ad92ff084ed44254e6c7a47d4c1be31d7b123c54
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d29462f8ca0e59d445aac009f128982dd5da56aea38a14d697dbc502a754b89bf3495bed3b76bc8348190cbb7fb03840dbc7395114ad6bf9203bab1b8975cd77
|
|
7
|
+
data.tar.gz: 8bf0ac27f79ef55897685f53383f048e80103251a5f826f9020556d6431834a3b038ac99ddebf03708adc917de22c10912bb495f6b5172cc0b47b016ccf6226d
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.1.2] - 2026-03-22
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
- Add runtime dependencies on legion-cache, legion-crypt, legion-data, legion-json, legion-logging, legion-settings, legion-transport
|
|
7
|
+
- Update spec_helper to require real sub-gem helpers and define Helpers::Lex with all 7 includes
|
|
8
|
+
|
|
3
9
|
## [0.1.1] - 2026-03-21
|
|
4
10
|
|
|
5
11
|
### Added
|
data/CLAUDE.md
CHANGED
|
@@ -10,7 +10,7 @@ Legion Extension that connects LegionIO to HashiCorp Consul. Provides runners fo
|
|
|
10
10
|
|
|
11
11
|
**GitHub**: https://github.com/LegionIO/lex-consul
|
|
12
12
|
**License**: MIT
|
|
13
|
-
**Version**: 0.1.
|
|
13
|
+
**Version**: 0.1.1
|
|
14
14
|
|
|
15
15
|
## Architecture
|
|
16
16
|
|
|
@@ -23,7 +23,8 @@ Legion::Extensions::Consul
|
|
|
23
23
|
│ ├── Health # Node health, service checks, checks by state
|
|
24
24
|
│ ├── Session # Distributed lock sessions (create, destroy, renew)
|
|
25
25
|
│ ├── Event # Custom event fire and list
|
|
26
|
-
│
|
|
26
|
+
│ ├── Status # Raft leader and peers
|
|
27
|
+
│ └── Partitions # Admin Partitions CRUD (Enterprise)
|
|
27
28
|
├── Helpers/
|
|
28
29
|
│ └── Client # Faraday connection builder (Consul HTTP API v1)
|
|
29
30
|
└── Client # Standalone client class (includes all runners)
|
|
@@ -46,10 +47,11 @@ Legion::Extensions::Consul
|
|
|
46
47
|
| `/v1/session/` | Session | create_session, destroy_session, session_info, list_sessions, node_sessions, renew_session |
|
|
47
48
|
| `/v1/event/` | Event | fire_event, list_events |
|
|
48
49
|
| `/v1/status/` | Status | leader, peers |
|
|
50
|
+
| `/v1/partitions` | Partitions | list_partitions, get_partition, create_partition, delete_partition (Enterprise) |
|
|
49
51
|
|
|
50
52
|
## Testing
|
|
51
53
|
|
|
52
|
-
30 specs across
|
|
54
|
+
30 specs across 10 spec files.
|
|
53
55
|
|
|
54
56
|
```bash
|
|
55
57
|
bundle install
|
data/README.md
CHANGED
|
@@ -57,6 +57,12 @@ gem install lex-consul
|
|
|
57
57
|
- `leader` - Get Raft leader address
|
|
58
58
|
- `peers` - List Raft peer addresses
|
|
59
59
|
|
|
60
|
+
### Partitions (`Runners::Partitions`) — Consul Enterprise
|
|
61
|
+
- `list_partitions` - List all admin partitions
|
|
62
|
+
- `get_partition` - Get a partition by name
|
|
63
|
+
- `create_partition` - Create or update a partition
|
|
64
|
+
- `delete_partition` - Delete a partition
|
|
65
|
+
|
|
60
66
|
## Standalone Usage
|
|
61
67
|
|
|
62
68
|
```ruby
|
data/lex-consul.gemspec
CHANGED
|
@@ -27,4 +27,11 @@ Gem::Specification.new do |spec|
|
|
|
27
27
|
spec.require_paths = ['lib']
|
|
28
28
|
|
|
29
29
|
spec.add_dependency 'faraday', '>= 2.0'
|
|
30
|
+
spec.add_dependency 'legion-cache', '>= 1.3.11'
|
|
31
|
+
spec.add_dependency 'legion-crypt', '>= 1.4.9'
|
|
32
|
+
spec.add_dependency 'legion-data', '>= 1.4.17'
|
|
33
|
+
spec.add_dependency 'legion-json', '>= 1.2.1'
|
|
34
|
+
spec.add_dependency 'legion-logging', '>= 1.3.2'
|
|
35
|
+
spec.add_dependency 'legion-settings', '>= 1.3.14'
|
|
36
|
+
spec.add_dependency 'legion-transport', '>= 1.3.9'
|
|
30
37
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lex-consul
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Esity
|
|
@@ -23,6 +23,104 @@ dependencies:
|
|
|
23
23
|
- - ">="
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
25
|
version: '2.0'
|
|
26
|
+
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: legion-cache
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - ">="
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: 1.3.11
|
|
33
|
+
type: :runtime
|
|
34
|
+
prerelease: false
|
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - ">="
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: 1.3.11
|
|
40
|
+
- !ruby/object:Gem::Dependency
|
|
41
|
+
name: legion-crypt
|
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
|
43
|
+
requirements:
|
|
44
|
+
- - ">="
|
|
45
|
+
- !ruby/object:Gem::Version
|
|
46
|
+
version: 1.4.9
|
|
47
|
+
type: :runtime
|
|
48
|
+
prerelease: false
|
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - ">="
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: 1.4.9
|
|
54
|
+
- !ruby/object:Gem::Dependency
|
|
55
|
+
name: legion-data
|
|
56
|
+
requirement: !ruby/object:Gem::Requirement
|
|
57
|
+
requirements:
|
|
58
|
+
- - ">="
|
|
59
|
+
- !ruby/object:Gem::Version
|
|
60
|
+
version: 1.4.17
|
|
61
|
+
type: :runtime
|
|
62
|
+
prerelease: false
|
|
63
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
64
|
+
requirements:
|
|
65
|
+
- - ">="
|
|
66
|
+
- !ruby/object:Gem::Version
|
|
67
|
+
version: 1.4.17
|
|
68
|
+
- !ruby/object:Gem::Dependency
|
|
69
|
+
name: legion-json
|
|
70
|
+
requirement: !ruby/object:Gem::Requirement
|
|
71
|
+
requirements:
|
|
72
|
+
- - ">="
|
|
73
|
+
- !ruby/object:Gem::Version
|
|
74
|
+
version: 1.2.1
|
|
75
|
+
type: :runtime
|
|
76
|
+
prerelease: false
|
|
77
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
78
|
+
requirements:
|
|
79
|
+
- - ">="
|
|
80
|
+
- !ruby/object:Gem::Version
|
|
81
|
+
version: 1.2.1
|
|
82
|
+
- !ruby/object:Gem::Dependency
|
|
83
|
+
name: legion-logging
|
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
|
85
|
+
requirements:
|
|
86
|
+
- - ">="
|
|
87
|
+
- !ruby/object:Gem::Version
|
|
88
|
+
version: 1.3.2
|
|
89
|
+
type: :runtime
|
|
90
|
+
prerelease: false
|
|
91
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
92
|
+
requirements:
|
|
93
|
+
- - ">="
|
|
94
|
+
- !ruby/object:Gem::Version
|
|
95
|
+
version: 1.3.2
|
|
96
|
+
- !ruby/object:Gem::Dependency
|
|
97
|
+
name: legion-settings
|
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
|
99
|
+
requirements:
|
|
100
|
+
- - ">="
|
|
101
|
+
- !ruby/object:Gem::Version
|
|
102
|
+
version: 1.3.14
|
|
103
|
+
type: :runtime
|
|
104
|
+
prerelease: false
|
|
105
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
106
|
+
requirements:
|
|
107
|
+
- - ">="
|
|
108
|
+
- !ruby/object:Gem::Version
|
|
109
|
+
version: 1.3.14
|
|
110
|
+
- !ruby/object:Gem::Dependency
|
|
111
|
+
name: legion-transport
|
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
|
113
|
+
requirements:
|
|
114
|
+
- - ">="
|
|
115
|
+
- !ruby/object:Gem::Version
|
|
116
|
+
version: 1.3.9
|
|
117
|
+
type: :runtime
|
|
118
|
+
prerelease: false
|
|
119
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
120
|
+
requirements:
|
|
121
|
+
- - ">="
|
|
122
|
+
- !ruby/object:Gem::Version
|
|
123
|
+
version: 1.3.9
|
|
26
124
|
description: Connects LegionIO to HashiCorp Consul
|
|
27
125
|
email:
|
|
28
126
|
- matthewdiverson@gmail.com
|