knuckle_cluster 2.3.4 → 2.3.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c5a7377d7cc39d6948263bf53cb083177c47994ac9326850cf6892635618cd16
4
- data.tar.gz: 37e1d8c19aba10233a69fae610fa272e1ae3211bf2cfe9d5f79e075c659676b2
3
+ metadata.gz: 84f82b515feea431e2df96e78899a69562b1016995db211bd86169e148686b3e
4
+ data.tar.gz: 2608f493b8fc435b31152a9c55b5d86b09e4c5ac18f006411de43c948e910334
5
5
  SHA512:
6
- metadata.gz: afac0665c778de7a1c0c194d6409e4a08c6f37c841c7a7edb8f0d49c6e54cb432eb5225a2720cd16b8c02163158ed0fd93784b980b47d78bb8cf31ddfe51fc6f
7
- data.tar.gz: 1ef9889813baadcbdd9bf3c4b502a160e3fafac4c9051ebaf2f7176772469a7f96c251455f99608a80cdb213726c2eae37c91eb7538f254a15131dc4bb4176f1
6
+ metadata.gz: 71b1a6ac30e70847375319860b4045c0b3a830a1d56daa556a7c61eb5ffaf2cadf6447445554a49b8bca47de9023f75568b8fd9f4581d6816ed1aa7ad753d61c
7
+ data.tar.gz: 353cb8e07c1b7f42b4fad3877001d67692cf132885892d76b6d6c6bac336a32bd179e41c4157b42c72b820f016f215b88d57e97debd198ecaeb2f3b63e604cb7
@@ -8,18 +8,18 @@ on:
8
8
 
9
9
  jobs:
10
10
  test:
11
- runs-on: ${{ matrix.operating_system }}
11
+ runs-on: ${{ matrix.operating_system }}-latest
12
12
  strategy:
13
13
  matrix:
14
- operating_system: [ ubuntu-latest, macos-latest ]
15
- ruby_version: [ 2.6, 2.7 ]
14
+ operating_system: [ ubuntu ]
15
+ ruby_version: [ '2.6', '2.7', '3.0', '3.1', '3.2', '3.3' ]
16
+ include:
17
+ - { operating_system: macos, ruby_version: '3.2' }
16
18
  steps:
17
- - uses: actions/checkout@v2
19
+ - uses: actions/checkout@v4
18
20
  - name: Set up Ruby ${{ matrix.ruby_version }}
19
21
  uses: ruby/setup-ruby@v1
20
22
  with:
21
23
  ruby-version: ${{ matrix.ruby_version }}
22
- - name: Install dependencies
23
- run: bundle install
24
- - name: Run tests
25
- run: bundle exec rake
24
+ bundler-cache: true
25
+ - run: bundle exec rake
data/CHANGELOG.md CHANGED
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.3.5] - 2025-03-09
11
+
12
+ * Be explicit that an index number is expected in the lists for agents and containers ([#36](https://github.com/envato/knuckle_cluster/pull/36))
13
+
10
14
  ## [2.3.4] - 2023-03-06
11
15
 
12
16
  ### Fixed
@@ -26,6 +30,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
26
30
  * Refactor SCP implementation to use new syntax
27
31
  * Allow SCP copy files FROM agents or containers
28
32
 
29
- [unreleased]: https://github.com/envato/knuckle_cluster/compare/v2.3.4...HEAD
30
- [2.3.4]: https://github.com/envato/knuckle_cluster/compare/v2.3.2...v2.3.4
33
+ [unreleased]: https://github.com/envato/knuckle_cluster/compare/v2.3.5...HEAD
34
+ [2.3.5]: https://github.com/envato/knuckle_cluster/compare/v2.3.4...v2.3.5
35
+ [2.3.4]: https://github.com/envato/knuckle_cluster/compare/v2.3.3...v2.3.4
31
36
  [2.3.3]: https://github.com/envato/knuckle_cluster/compare/v2.3.2...v2.3.3
data/Gemfile CHANGED
@@ -1,4 +1,11 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
- # Specify your gem's dependencies in knuckle_cluster.gemspec
4
5
  gemspec
6
+
7
+ group :development do
8
+ gem 'pry'
9
+ gem 'rake', '~> 13.0'
10
+ gem 'rspec', '~> 3.0'
11
+ end
data/README.md CHANGED
@@ -74,37 +74,6 @@ platform:
74
74
  task: some_task_regex_i_dont_care_about
75
75
  ```
76
76
 
77
- You can also use inheritance to simplify the inclusion of multiple similar targets:
78
- ```
79
- super_platform:
80
- <<: *default_platform
81
- cluster_name: super-platform-ecs-cluster-ABC123
82
-
83
- ultra_platform:
84
- <<: *default_platform
85
- cluster_name: ultra-platform-ecs-cluster-DEF987
86
- sudo: false
87
-
88
- default_platform: &default_platform
89
- region: us-east-1
90
- bastion: platform_bastion
91
- rsa_key_location: ~/.ssh/platform_rsa_key
92
- ssh_username: ubuntu
93
- sudo: true
94
- aws_vault_profile: platform_super_user
95
-
96
- other_platform: &other_platform
97
- region: us-east-1
98
- bastion:
99
- username: ubuntu
100
- host: bastion.endpoint.example.com
101
- rsa_key_location: ~/.ssh/bastion_rsa_key
102
- rsa_key_location: ~/.ssh/platform_rsa_key
103
- ssh_username: ubuntu
104
- sudo: true
105
- aws_vault_profile: platform_super_user
106
- ```
107
-
108
77
  See [Options for Knuckle Cluster](#options-for-knuckle-cluster) below for a list of what each option does.
109
78
 
110
79
  Command line options:
@@ -161,7 +130,7 @@ task-three | i-456def456def456de | 4 | t3-container-one
161
130
  | | 5 | t3-container-two
162
131
  | | 6 | t3-container-three
163
132
 
164
- Connect to which container?
133
+ Enter the INDEX number and press ENTER to connect:
165
134
  ```
166
135
 
167
136
  Same with connecting directly to agents
@@ -179,7 +148,7 @@ INDEX | INSTANCE_ID | TASK | CONTAINER
179
148
  | | | t3-container-two
180
149
  | | | t3-container-three
181
150
 
182
- Connect to which agent?
151
+ Enter the INDEX number and press ENTER to connect:
183
152
  ```
184
153
 
185
154
  Both `connect_to_containers` and `connect_to_agents` can have the following optional arguments:
@@ -214,6 +183,18 @@ aws_vault_profile | If you use the `aws-vault` tool to manage your AWS credentia
214
183
  profile | Another profile to inherit settings from. Settings from lower profiles can be overridden in higher ones.
215
184
  hide | allows you to specify a regex for either `task` or `container` to omit these from being shown
216
185
 
186
+ ## Known Issues
187
+
188
+ ### Aliases in the config file
189
+
190
+ Currently, aliases cannot be used in the config file. If you have aliases in your config, you might see the following error.
191
+
192
+ ```
193
+ ERROR: There was a problem loading your configuration: Alias parsing was not enabled. To enable it, pass `aliases: true` to `Psych::load` or `Psych::safe_load`.
194
+ ```
195
+
196
+ This is an issue with Psych changing the default behaviour around expanding aliases in Ruby 3. See [this issue](https://github.com/envato/knuckle_cluster/issues/32) for a workaround.
197
+
217
198
  ## Spot Fleets
218
199
  If you wish to see what instances are running within a spot fleet, KnuckleCluster can do that too!. In your config, use `spot_request_id` instead of `cluster_name`. Note that the `containers` command will not work when invoking (use `agents` instead).
219
200
 
@@ -19,14 +19,11 @@ Gem::Specification.new do |spec|
19
19
  end
20
20
  spec.require_paths = ["lib"]
21
21
 
22
- spec.add_development_dependency "rake", "~> 10.0"
23
- spec.add_development_dependency "rspec", "~> 3.0"
24
- spec.add_development_dependency "pry", "~> 0.11"
25
-
26
22
  spec.add_dependency 'aws-sdk-core', '~> 3'
27
23
  spec.add_dependency 'aws-sdk-ec2', '~> 1'
28
24
  spec.add_dependency 'aws-sdk-ecs', '~> 1'
29
25
  spec.add_dependency 'aws-sdk-autoscaling', '~> 1'
26
+ spec.add_dependency 'rexml', '~> 3'
30
27
 
31
28
  spec.add_dependency 'table_print', '~> 1.5'
32
29
 
@@ -1,3 +1,3 @@
1
1
  module KnuckleCluster
2
- VERSION = '2.3.4'
2
+ VERSION = '2.3.5'
3
3
  end
@@ -101,7 +101,7 @@ module KnuckleCluster
101
101
 
102
102
  output_agents
103
103
 
104
- puts "\nConnect to which agent?"
104
+ puts "\nEnter the INDEX number and press ENTER to connect:"
105
105
  agents[STDIN.gets.strip.to_i - 1]
106
106
  end
107
107
 
@@ -116,7 +116,7 @@ module KnuckleCluster
116
116
  { index: { display_method: 'containers.index' } },
117
117
  { container: { display_method: 'containers.name', width: 999 } }
118
118
 
119
- puts "\nConnect to which container?"
119
+ puts "\nEnter the INDEX number and press ENTER to connect:"
120
120
  containers[STDIN.gets.strip.to_i - 1]
121
121
  end
122
122
 
metadata CHANGED
@@ -1,73 +1,44 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knuckle_cluster
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.4
4
+ version: 2.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Envato
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-03-06 00:00:00.000000000 Z
10
+ date: 2025-04-09 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
- name: rake
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '10.0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '10.0'
27
- - !ruby/object:Gem::Dependency
28
- name: rspec
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '3.0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '3.0'
41
- - !ruby/object:Gem::Dependency
42
- name: pry
13
+ name: aws-sdk-core
43
14
  requirement: !ruby/object:Gem::Requirement
44
15
  requirements:
45
16
  - - "~>"
46
17
  - !ruby/object:Gem::Version
47
- version: '0.11'
48
- type: :development
18
+ version: '3'
19
+ type: :runtime
49
20
  prerelease: false
50
21
  version_requirements: !ruby/object:Gem::Requirement
51
22
  requirements:
52
23
  - - "~>"
53
24
  - !ruby/object:Gem::Version
54
- version: '0.11'
25
+ version: '3'
55
26
  - !ruby/object:Gem::Dependency
56
- name: aws-sdk-core
27
+ name: aws-sdk-ec2
57
28
  requirement: !ruby/object:Gem::Requirement
58
29
  requirements:
59
30
  - - "~>"
60
31
  - !ruby/object:Gem::Version
61
- version: '3'
32
+ version: '1'
62
33
  type: :runtime
63
34
  prerelease: false
64
35
  version_requirements: !ruby/object:Gem::Requirement
65
36
  requirements:
66
37
  - - "~>"
67
38
  - !ruby/object:Gem::Version
68
- version: '3'
39
+ version: '1'
69
40
  - !ruby/object:Gem::Dependency
70
- name: aws-sdk-ec2
41
+ name: aws-sdk-ecs
71
42
  requirement: !ruby/object:Gem::Requirement
72
43
  requirements:
73
44
  - - "~>"
@@ -81,7 +52,7 @@ dependencies:
81
52
  - !ruby/object:Gem::Version
82
53
  version: '1'
83
54
  - !ruby/object:Gem::Dependency
84
- name: aws-sdk-ecs
55
+ name: aws-sdk-autoscaling
85
56
  requirement: !ruby/object:Gem::Requirement
86
57
  requirements:
87
58
  - - "~>"
@@ -95,19 +66,19 @@ dependencies:
95
66
  - !ruby/object:Gem::Version
96
67
  version: '1'
97
68
  - !ruby/object:Gem::Dependency
98
- name: aws-sdk-autoscaling
69
+ name: rexml
99
70
  requirement: !ruby/object:Gem::Requirement
100
71
  requirements:
101
72
  - - "~>"
102
73
  - !ruby/object:Gem::Version
103
- version: '1'
74
+ version: '3'
104
75
  type: :runtime
105
76
  prerelease: false
106
77
  version_requirements: !ruby/object:Gem::Requirement
107
78
  requirements:
108
79
  - - "~>"
109
80
  - !ruby/object:Gem::Version
110
- version: '1'
81
+ version: '3'
111
82
  - !ruby/object:Gem::Dependency
112
83
  name: table_print
113
84
  requirement: !ruby/object:Gem::Requirement
@@ -160,7 +131,6 @@ homepage: https://github.com/envato/knuckle_cluster
160
131
  licenses:
161
132
  - MIT
162
133
  metadata: {}
163
- post_install_message:
164
134
  rdoc_options: []
165
135
  require_paths:
166
136
  - lib
@@ -175,8 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
175
145
  - !ruby/object:Gem::Version
176
146
  version: '0'
177
147
  requirements: []
178
- rubygems_version: 3.3.7
179
- signing_key:
148
+ rubygems_version: 3.6.2
180
149
  specification_version: 4
181
150
  summary: Handy cluster tool
182
151
  test_files: []