tdl-client-ruby 0.27.1 → 0.29.4

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: c21fabde1dffd7b252ae1438f362b9018b6deb9ed61f4bd219d091dc1f5e09ba
4
- data.tar.gz: 36f0f12a5522a95447c7bd470bbd7f5325f5a438e98443161098c03063a36362
3
+ metadata.gz: e64bfd9dd197392feb63e983cf7e7c750a7230c22df262f36df9bb0b2a0220c0
4
+ data.tar.gz: 0e6729ab9ca8032daf6cec1729ced178eb73a9a92843b01634169db3935defb1
5
5
  SHA512:
6
- metadata.gz: 258f1d764d311e2a4654c7130df1d33c1dc3d54f6ff16ed89228158c5f69164b03043a6b84e74a69181a460d6518c3ee1f4a2c7c41aacf7c2f1a5f10dbe08df2
7
- data.tar.gz: dd61feba2aac7cfaed51d2e21b65ea2fe3be6509fec189d2d9432adf4d2a8522cd67b9f24c74ff618c89c954e067135f3b8ad64b6d9d61503c63ca35cd1915bc
6
+ metadata.gz: '0902bab8f5252f03c9c023f9d7ddf375a23640bd341c1fdfdb45039bf53cf7157616060a637016f0a10b89b08d557bf174383dea3d57c3e080c97090ad5f1b70'
7
+ data.tar.gz: 70d5e958a0d07dade50f43190e321ed7e49bc299c88df38428326aabd28ddb79ca03a8f7f475503a828d2a34a47ff275534ab46167e7edb3266f0c909e5b2680
@@ -0,0 +1,11 @@
1
+ # To get started with Dependabot version updates, you'll need to specify which
2
+ # package ecosystems to update and where the package manifests are located.
3
+ # Please see the documentation for all configuration options:
4
+ # https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
5
+
6
+ version: 2
7
+ updates:
8
+ - package-ecosystem: "bundler" # See documentation for possible values
9
+ directory: "/" # Location of package manifests
10
+ schedule:
11
+ interval: "monthly"
@@ -0,0 +1,45 @@
1
+ name: Ruby test
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ build-and-test:
7
+
8
+ runs-on: ubuntu-latest
9
+
10
+ services:
11
+ activemq:
12
+ image: apache/activemq-classic:6.1.0
13
+ ports:
14
+ - 28161:8161
15
+ - 21613:61613
16
+ challenge-server:
17
+ image: wiremock/wiremock:3.7.0
18
+ ports:
19
+ - 8222:8080
20
+ recording-server:
21
+ image: wiremock/wiremock:3.7.0
22
+ ports:
23
+ - 41375:8080
24
+
25
+ steps:
26
+ - uses: actions/checkout@v4
27
+ with:
28
+ submodules: 'true'
29
+
30
+ # ~~~~~~~~~~~~~ Ruby setup ~~~~~~~~~~~~~
31
+ - name: Set up Ruby
32
+ uses: ruby/setup-ruby@v1
33
+ with:
34
+ ruby-version: '3.4' # Adjust to your Ruby version
35
+ bundler-cache: true
36
+
37
+ - name: Display Ruby version
38
+ run: ruby -v
39
+
40
+ - name: Install dependencies
41
+ run: bundle install
42
+
43
+ # ~~~~~~~~~~~~~ Test ~~~~~~~~~~~~~
44
+ - name: Run tests
45
+ run: bundle exec rake features
@@ -0,0 +1,39 @@
1
+ name: Publish to RubyGems
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - v*
7
+
8
+ permissions:
9
+ contents: read
10
+
11
+ jobs:
12
+ deploy:
13
+ runs-on: ubuntu-latest
14
+
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+
18
+ # ~~~~~~~~~~~~~ Ruby setup ~~~~~~~~~~~~~
19
+ - name: Set up Ruby
20
+ uses: ruby/setup-ruby@v1
21
+ with:
22
+ ruby-version: '3.4'
23
+ bundler-cache: true
24
+
25
+ - name: Display Ruby version
26
+ run: ruby -v
27
+
28
+ - name: Install dependencies
29
+ run: bundle install
30
+
31
+ # ~~~~~~~~~~~~~ Build gem ~~~~~~~~~~~~~
32
+ - name: Build gem
33
+ run: gem build tdl-client-ruby.gemspec
34
+
35
+ # ~~~~~~~~~~~~~ Publish to RubyGems ~~~~~~~~~~~~~
36
+ - name: Push to RubyGems
37
+ run: gem push *.gem
38
+ env:
39
+ GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
@@ -0,0 +1,46 @@
1
+ name: Create GitHub Release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - v*
7
+
8
+ permissions:
9
+ contents: write
10
+
11
+ jobs:
12
+ build_and_release:
13
+ runs-on: ubuntu-latest
14
+
15
+ steps:
16
+ - name: Checkout
17
+ uses: actions/checkout@v4
18
+
19
+ # ~~~~~~~~~~~~~ Ruby setup ~~~~~~~~~~~~~
20
+ - name: Set up Ruby
21
+ uses: ruby/setup-ruby@v1
22
+ with:
23
+ ruby-version: '3.4' # adjust as needed
24
+ bundler-cache: true
25
+
26
+ - name: Display Ruby version
27
+ run: ruby -v
28
+
29
+ - name: Install dependencies
30
+ run: bundle install
31
+
32
+ # ~~~~~~~~~~~~~ Build the gem ~~~~~~~~~~~~~
33
+ - name: Build gem
34
+ run: gem build your_gem.gemspec
35
+
36
+ - name: Rename gem for consistency
37
+ run: |
38
+ mkdir -p pkg
39
+ mv *.gem pkg/tdl-client-ruby.gem
40
+
41
+ # ~~~~~~~~~~~~~ Create GitHub Release ~~~~~~~~~~~~~
42
+ - name: Upload Release Asset
43
+ uses: softprops/action-gh-release@v2
44
+ if: startsWith(github.ref, 'refs/tags/')
45
+ with:
46
+ files: pkg/tdl-client-ruby.gem
data/.gitmodules CHANGED
@@ -1,9 +1,3 @@
1
- [submodule "broker"]
2
- path = broker
3
- url = git@github.com:julianghionoiu/tdl-client-test-broker.git
4
1
  [submodule "features/spec"]
5
2
  path = features/spec
6
3
  url = git@github.com:julianghionoiu/tdl-client-spec.git
7
- [submodule "wiremock"]
8
- path = wiremock
9
- url = git@github.com:julianghionoiu/tdl-client-test-wiremock.git
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.2.2
1
+ 3.4.2
data/Gemfile CHANGED
@@ -1,6 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- ruby '~> 3.2.2'
3
+ ruby '~> 3.4.2'
4
4
 
5
5
  # Specify your gem's dependencies in tdl-client-ruby.gemspec
6
6
  gemspec
data/README.md CHANGED
@@ -26,21 +26,31 @@ Ruby client to connect to the central kata server.
26
26
  ### Installing
27
27
 
28
28
  #### Install RBENV
29
+
29
30
  ```bash
30
- brew install rbenv
31
+ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
32
+ git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
31
33
 
32
- # Then add this to bash_locations
33
- export PATH="$HOME/.rbenv/bin:$PATH"
34
- eval "$(rbenv init -)"
34
+ # Then activate
35
+ ~/.rbenv/bin/rbenv init
35
36
  ```
36
37
 
37
38
  #### Install ruby
38
39
  ```bash
39
- rbenv install 3.2.2
40
- rbenv local 3.2.2
40
+ rbenv install 3.4.2
41
+ rbenv local 3.4.2
41
42
  ruby --version
42
43
  ```
43
44
 
45
+ If the above fails, you might need to install libyaml:
46
+ ```shell
47
+ https://pyyaml.org/download/libyaml/
48
+
49
+ ./configure
50
+ make
51
+ make install
52
+ ```
53
+
44
54
  #### Install bundler
45
55
  ```bash
46
56
  gem install bundler
@@ -56,39 +66,44 @@ gem install cucumber
56
66
  bundle install
57
67
  ```
58
68
 
59
- #### Manual
60
69
 
61
- Stopping the wiremocks and broker services would be the same, using the `stop` command instead of the `start` command.
70
+ # Testing
62
71
 
63
- #### Automatic (via script)
72
+ All test require the ActiveMQ broker and Wiremock to be started.
64
73
 
65
- Start and stop the wiremocks and broker services with the below:
66
-
67
- ```bash
68
- ./startExternalDependencies.sh
69
- ```
74
+ Start ActiveMQ
75
+ ```shell
76
+ export ACTIVEMQ_CONTAINER=apache/activemq-classic:6.1.0
77
+ docker run -d -it --rm -p 28161:8161 -p 21613:61613 -p 21616:61616 --name activemq ${ACTIVEMQ_CONTAINER}
78
+ ```
70
79
 
71
- ```bash
72
- ./stopExternalDependencies.sh
73
- ```
80
+ The ActiveMQ web UI can be accessed at:
81
+ http://localhost:28161/admin/
82
+ use admin/admin to login
83
+
84
+ Start two Wiremock servers
85
+ ```shell
86
+ export WIREMOCK_CONTAINER=wiremock/wiremock:3.7.0
87
+ docker run -d -it --rm -p 8222:8080 --name challenge-server ${WIREMOCK_CONTAINER}
88
+ docker run -d -it --rm -p 41375:8080 --name recording-server ${WIREMOCK_CONTAINER}
89
+ ```
74
90
 
75
- ### Testing
91
+ The Wiremock admin UI can be found at:
92
+ http://localhost:8222/__admin/
93
+ and docs at
94
+ http://localhost:8222/__admin/docs
76
95
 
77
- All test require the ActiveMQ broker to be started.
78
- The following commands are available for the broker.
79
96
 
97
+ # Cleanup
98
+
99
+ Stop dependencies
80
100
  ```
81
- java8
82
- python3 ./broker/activemq-wrapper.py start
83
- python3 wiremock/wiremock-wrapper.py start 41375
84
- python3 wiremock/wiremock-wrapper.py start 8222
101
+ docker stop activemq
102
+ docker stop recording-server
103
+ docker stop challenge-server
85
104
  ```
86
105
 
87
- or
88
-
89
- ```bash
90
- ./startExternalDependencies.sh
91
- ```
106
+ # Tests
92
107
 
93
108
  Run tests with:
94
109
  ```
@@ -97,26 +112,36 @@ bundle exec rake features
97
112
  To run a single scenario execute `cucumber path/to/file.feature:line_no`
98
113
  Recommendation is to use the cucumber command instead of rake always outside of CI.
99
114
 
100
- ### Cleanup
101
-
102
- Stop external dependencies
115
+ # To release
116
+ Set version manually in `tdl-client-ruby.gemspec`:
103
117
  ```
104
- java8
105
- python3 ./broker/activemq-wrapper.py stop
106
- python3 wiremock/wiremock-wrapper.py stop 41375
107
- python3 wiremock/wiremock-wrapper.py stop 8222
118
+ VERSION = "0.29.1"
108
119
  ```
109
120
 
110
- or
121
+ Commit the changes
122
+ ```
123
+ export RELEASE_TAG="v$(cat tdl-client-ruby.gemspec | grep "VERSION =" | cut -d "\"" -f2)"
124
+ echo ${RELEASE_TAG}
111
125
 
112
- ```bash
113
- ./stopExternalDependencies.sh
126
+ git add --all
127
+ git commit -m "Releasing version ${RELEASE_TAG}"
128
+
129
+ git tag -a "${RELEASE_TAG}" -m "${RELEASE_TAG}"
130
+ git push --tags
131
+ git push
114
132
  ```
115
133
 
134
+ Wait for the Github build to finish, then go to:
135
+ https://pypi.org/
116
136
 
117
- ## To release
137
+ ## To manually build the RubyGems files
118
138
 
119
- Run
120
- ```
121
- ./release.sh
139
+ Build the gem:
140
+ ```shell
141
+ bundle exec rake build
122
142
  ```
143
+
144
+ Deploy the gem to RubyGems:
145
+ ```shell
146
+ bundle exec rake release
147
+ ```
data/Rakefile CHANGED
@@ -33,8 +33,6 @@ end
33
33
 
34
34
  #~~~~~~~~ Deploy
35
35
 
36
- require 'tdl/previous_version'
37
-
38
36
  task :build do
39
37
  system 'gem build tdl-client-ruby.gemspec'
40
38
  end
@@ -0,0 +1,48 @@
1
+ module TDL
2
+ module PresentationUtil
3
+
4
+ def self.to_displayable_request(params)
5
+ return params.map{ |param|
6
+ TDL::PresentationUtil.serialize_and_compress(param)
7
+ }.join(', ')
8
+ end
9
+
10
+ def self.to_displayable_response(value)
11
+ return TDL::PresentationUtil.serialize_and_compress(value)
12
+ end
13
+
14
+
15
+ def self.serialize_and_compress(value)
16
+ representation = JSON.generate(value, quirks_mode: true)
17
+
18
+ if list_like?(value)
19
+ representation = representation.gsub(',', ', ')
20
+ elsif multiline_string?(representation)
21
+ representation = suppress_extra_lines(representation)
22
+ end
23
+
24
+ representation
25
+ end
26
+
27
+ def self.list_like?(value)
28
+ value.is_a?(Array)
29
+ end
30
+
31
+ def self.multiline_string?(value)
32
+ value.include?("\\n")
33
+ end
34
+
35
+ def self.suppress_extra_lines(value)
36
+ return value.to_s unless value.is_a?(String)
37
+
38
+ parts = value.split("\\n")
39
+ top_line = parts[0]
40
+ remaining_lines = parts.size - 1
41
+
42
+ representation = "#{top_line} .. ( #{remaining_lines} more line"
43
+ representation += "s" if remaining_lines > 1
44
+ representation += " )\""
45
+ representation
46
+ end
47
+ end
48
+ end
@@ -1,5 +1,3 @@
1
- require 'tdl/util'
2
-
3
1
  module TDL
4
2
  class Request
5
3
  attr_reader :original_message, :id, :method, :params
@@ -10,11 +8,5 @@ module TDL
10
8
  @method = request_data.fetch('method')
11
9
  @params = request_data.fetch('params')
12
10
  end
13
-
14
- def audit_text
15
- "id = #{id}, req = #{method}(#{params.map{ |param|
16
- TDL::Util.compress_data(param)
17
- }.join(', ')})"
18
- end
19
11
  end
20
12
  end
@@ -1,12 +1,9 @@
1
1
  module TDL
2
2
  class FatalErrorResponse
3
-
3
+ attr_reader :message
4
+
4
5
  def initialize(message)
5
- @message = message + ", (NOT PUBLISHED)"
6
- end
7
-
8
- def audit_text
9
- "error = #{@message}"
6
+ @message = message
10
7
  end
11
8
  end
12
9
  end
@@ -1,5 +1,3 @@
1
- require 'tdl/util'
2
-
3
1
  module TDL
4
2
  class ValidResponse
5
3
  attr_reader :id, :result
@@ -16,9 +14,5 @@ module TDL
16
14
  :id => @id,
17
15
  }
18
16
  end
19
-
20
- def audit_text
21
- "resp = #{TDL::Util.compress_data(@result)}"
22
- end
23
17
  end
24
18
  end
@@ -1,4 +1,5 @@
1
1
  require 'logging'
2
+ require 'tdl/audit/presentation_utils'
2
3
  require 'tdl/queue/processing_rules'
3
4
  require 'tdl/queue/transport/remote_broker'
4
5
 
@@ -54,11 +55,11 @@ module TDL
54
55
 
55
56
  def process_next_request_from(remote_broker, request)
56
57
  @audit.start_line
57
- @audit.log(request)
58
+ @audit.log_request(request)
58
59
 
59
60
  # Obtain response from user
60
61
  response = @processing_rules.get_response_for(request)
61
- @audit.log(response)
62
+ @audit.log_response(response)
62
63
 
63
64
  # Act
64
65
  after_response(remote_broker, request, response)
@@ -98,12 +99,27 @@ class AuditStream
98
99
  @str = ''
99
100
  end
100
101
 
101
- def log(auditable)
102
- text = auditable.audit_text
102
+ def log_request(request)
103
+ params_as_string = TDL::PresentationUtil.to_displayable_request(request.params)
104
+ text = "id = #{request.id}, req = #{request.method}(#{params_as_string})"
105
+
103
106
  if not text.empty? and @str.length > 0
104
107
  @str << ', '
105
108
  end
109
+ @str << text
110
+ end
106
111
 
112
+ def log_response(response)
113
+ if response.instance_variable_defined?(:@result)
114
+ representation = TDL::PresentationUtil.to_displayable_response(response.result)
115
+ text = "resp = #{representation}"
116
+ else
117
+ text = "error = #{response.message}" + ", (NOT PUBLISHED)"
118
+ end
119
+
120
+ if not text.empty? and @str.length > 0
121
+ @str << ', '
122
+ end
107
123
  @str << text
108
124
  end
109
125
 
@@ -1,36 +1,9 @@
1
1
  # coding: utf-8
2
2
  lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'tdl/previous_version'
5
4
 
6
- #~~~~~~ Compute version
7
-
8
- # Add increment to Version class
9
- class ComparableVersion < Gem::Version
10
- def increment
11
- segments = self.segments.dup
12
- segments[-1] = segments[-1].succ
13
-
14
- self.class.new segments.join('.')
15
- end
16
- end
17
-
18
- # Get Spec version from Git
19
- spec_folder = File.expand_path('../features/spec',__FILE__).to_s
20
- major_minor_version = `git --git-dir #{spec_folder}/.git describe --all | cut -d '/' -f 2 | tr -d 'v'`.strip
21
-
22
- # Compute next version
23
- previous_version = ComparableVersion.new(TDL::PREVIOUS_VERSION)
24
- new_spec_version = ComparableVersion.new(major_minor_version+'.1')
25
- if new_spec_version > previous_version
26
- current_version = new_spec_version
27
- else
28
- current_version = previous_version.increment
29
- end
30
- # puts "previous_version = #{previous_version}"
31
- # puts "current_version = #{current_version}"
32
-
33
- VERSION = "#{current_version}"
5
+ #
6
+ VERSION = "0.29.4"
34
7
 
35
8
 
36
9
  #~~~~~ Create gemspec
@@ -38,7 +11,7 @@ VERSION = "#{current_version}"
38
11
  Gem::Specification.new do |spec|
39
12
  spec.name = 'tdl-client-ruby'
40
13
  spec.version = VERSION
41
- spec.metadata = { 'previous_version' => TDL::PREVIOUS_VERSION }
14
+ spec.metadata = {}
42
15
  spec.authors = ['Julian Ghionoiu']
43
16
  spec.email = ['iulian.ghionoiu@gmail.com']
44
17
 
@@ -54,10 +27,13 @@ Gem::Specification.new do |spec|
54
27
  spec.add_runtime_dependency 'logging', '2.3.1'
55
28
 
56
29
  spec.add_development_dependency 'bundler'
57
- spec.add_development_dependency 'rake', '~> 13.0.6'
58
- spec.add_development_dependency 'minitest', '~> 5.18.1'
59
- spec.add_development_dependency 'minitest-reporters', '~> 1.6.0'
60
- spec.add_development_dependency 'json', '~> 2.6.3'
61
- spec.add_development_dependency 'cucumber', '~> 8.0.0'
62
- spec.add_development_dependency 'debase', '~> 3.0.0.beta.6'
30
+ spec.add_development_dependency 'rake', '~> 13.2.1'
31
+ spec.add_development_dependency 'minitest', '~> 5.25.5'
32
+ spec.add_development_dependency 'minitest-reporters', '~> 1.7.1'
33
+ spec.add_development_dependency 'json', '~> 2.9.1'
34
+ spec.add_development_dependency 'cucumber', '~> 9.2.1'
35
+ spec.add_development_dependency 'debase', '~> 0.2.9'
36
+ spec.add_development_dependency 'ostruct', '~> 0.6.1'
37
+ spec.add_development_dependency 'logger', '~> 1.6.6'
38
+ spec.add_development_dependency 'syslog', '~> 0.3.0'
63
39
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tdl-client-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.27.1
4
+ version: 0.29.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Julian Ghionoiu
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-07-17 00:00:00.000000000 Z
10
+ date: 2025-03-27 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: stomp
@@ -58,84 +57,126 @@ dependencies:
58
57
  requirements:
59
58
  - - "~>"
60
59
  - !ruby/object:Gem::Version
61
- version: 13.0.6
60
+ version: 13.2.1
62
61
  type: :development
63
62
  prerelease: false
64
63
  version_requirements: !ruby/object:Gem::Requirement
65
64
  requirements:
66
65
  - - "~>"
67
66
  - !ruby/object:Gem::Version
68
- version: 13.0.6
67
+ version: 13.2.1
69
68
  - !ruby/object:Gem::Dependency
70
69
  name: minitest
71
70
  requirement: !ruby/object:Gem::Requirement
72
71
  requirements:
73
72
  - - "~>"
74
73
  - !ruby/object:Gem::Version
75
- version: 5.18.1
74
+ version: 5.25.5
76
75
  type: :development
77
76
  prerelease: false
78
77
  version_requirements: !ruby/object:Gem::Requirement
79
78
  requirements:
80
79
  - - "~>"
81
80
  - !ruby/object:Gem::Version
82
- version: 5.18.1
81
+ version: 5.25.5
83
82
  - !ruby/object:Gem::Dependency
84
83
  name: minitest-reporters
85
84
  requirement: !ruby/object:Gem::Requirement
86
85
  requirements:
87
86
  - - "~>"
88
87
  - !ruby/object:Gem::Version
89
- version: 1.6.0
88
+ version: 1.7.1
90
89
  type: :development
91
90
  prerelease: false
92
91
  version_requirements: !ruby/object:Gem::Requirement
93
92
  requirements:
94
93
  - - "~>"
95
94
  - !ruby/object:Gem::Version
96
- version: 1.6.0
95
+ version: 1.7.1
97
96
  - !ruby/object:Gem::Dependency
98
97
  name: json
99
98
  requirement: !ruby/object:Gem::Requirement
100
99
  requirements:
101
100
  - - "~>"
102
101
  - !ruby/object:Gem::Version
103
- version: 2.6.3
102
+ version: 2.9.1
104
103
  type: :development
105
104
  prerelease: false
106
105
  version_requirements: !ruby/object:Gem::Requirement
107
106
  requirements:
108
107
  - - "~>"
109
108
  - !ruby/object:Gem::Version
110
- version: 2.6.3
109
+ version: 2.9.1
111
110
  - !ruby/object:Gem::Dependency
112
111
  name: cucumber
113
112
  requirement: !ruby/object:Gem::Requirement
114
113
  requirements:
115
114
  - - "~>"
116
115
  - !ruby/object:Gem::Version
117
- version: 8.0.0
116
+ version: 9.2.1
118
117
  type: :development
119
118
  prerelease: false
120
119
  version_requirements: !ruby/object:Gem::Requirement
121
120
  requirements:
122
121
  - - "~>"
123
122
  - !ruby/object:Gem::Version
124
- version: 8.0.0
123
+ version: 9.2.1
125
124
  - !ruby/object:Gem::Dependency
126
125
  name: debase
127
126
  requirement: !ruby/object:Gem::Requirement
128
127
  requirements:
129
128
  - - "~>"
130
129
  - !ruby/object:Gem::Version
131
- version: 3.0.0.beta.6
130
+ version: 0.2.9
132
131
  type: :development
133
132
  prerelease: false
134
133
  version_requirements: !ruby/object:Gem::Requirement
135
134
  requirements:
136
135
  - - "~>"
137
136
  - !ruby/object:Gem::Version
138
- version: 3.0.0.beta.6
137
+ version: 0.2.9
138
+ - !ruby/object:Gem::Dependency
139
+ name: ostruct
140
+ requirement: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: 0.6.1
145
+ type: :development
146
+ prerelease: false
147
+ version_requirements: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: 0.6.1
152
+ - !ruby/object:Gem::Dependency
153
+ name: logger
154
+ requirement: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: 1.6.6
159
+ type: :development
160
+ prerelease: false
161
+ version_requirements: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - "~>"
164
+ - !ruby/object:Gem::Version
165
+ version: 1.6.6
166
+ - !ruby/object:Gem::Dependency
167
+ name: syslog
168
+ requirement: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - "~>"
171
+ - !ruby/object:Gem::Version
172
+ version: 0.3.0
173
+ type: :development
174
+ prerelease: false
175
+ version_requirements: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: 0.3.0
139
180
  description: A ruby client to connect to the kata server
140
181
  email:
141
182
  - iulian.ghionoiu@gmail.com
@@ -143,6 +184,10 @@ executables: []
143
184
  extensions: []
144
185
  extra_rdoc_files: []
145
186
  files:
187
+ - ".github/dependabot.yml"
188
+ - ".github/workflows/build_and_test.yml"
189
+ - ".github/workflows/publish.yml"
190
+ - ".github/workflows/release.yml"
146
191
  - ".gitignore"
147
192
  - ".gitmodules"
148
193
  - ".ruby-version"
@@ -153,7 +198,7 @@ files:
153
198
  - Rakefile
154
199
  - lib/tdl.rb
155
200
  - lib/tdl/audit/console_audit_stream.rb
156
- - lib/tdl/previous_version.rb
201
+ - lib/tdl/audit/presentation_utils.rb
157
202
  - lib/tdl/queue/abstractions/processing_rule.rb
158
203
  - lib/tdl/queue/abstractions/request.rb
159
204
  - lib/tdl/queue/abstractions/response/fatal_error_response.rb
@@ -172,18 +217,12 @@ files:
172
217
  - lib/tdl/runner/round_management.rb
173
218
  - lib/tdl/runner/runner_action.rb
174
219
  - lib/tdl/thread_timer.rb
175
- - lib/tdl/util.rb
176
- - release.sh
177
- - startExternalDependencies.sh
178
- - stopExternalDependencies.sh
179
220
  - tdl-client-ruby.gemspec
180
221
  - tdl-client-ruby.iml
181
222
  homepage: https://github.com/julianghionoiu/tdl-client-ruby
182
223
  licenses:
183
224
  - GPL-3.0
184
- metadata:
185
- previous_version: 0.27.0
186
- post_install_message:
225
+ metadata: {}
187
226
  rdoc_options: []
188
227
  require_paths:
189
228
  - lib
@@ -198,8 +237,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
198
237
  - !ruby/object:Gem::Version
199
238
  version: '0'
200
239
  requirements: []
201
- rubygems_version: 3.4.10
202
- signing_key:
240
+ rubygems_version: 3.6.2
203
241
  specification_version: 4
204
242
  summary: A client to connect to the central kata server.
205
243
  test_files: []
@@ -1,4 +0,0 @@
1
- module TDL
2
- PREVIOUS_VERSION = '0.27.0'
3
- # the current MAJOR.MINOR version is dynamically computed from the version of the Spec
4
- end
data/lib/tdl/util.rb DELETED
@@ -1,25 +0,0 @@
1
- module TDL
2
- module Util
3
- def self.compress_text(text)
4
- # DEBT compress text should not add quotes
5
- top_line, *remaing_content = text.split("\n")
6
- lines_remaining = remaing_content.size
7
-
8
- if lines_remaining > 1
9
- "\"#{top_line} .. ( #{lines_remaining} more lines )\""
10
- elsif lines_remaining == 1
11
- "\"#{top_line} .. ( 1 more line )\""
12
- else
13
- "\"#{top_line}\""
14
- end
15
- end
16
-
17
- def self.compress_data(data)
18
- if data.respond_to?(:split)
19
- "#{TDL::Util.compress_text(data)}"
20
- else
21
- "#{data}"
22
- end
23
- end
24
- end
25
- end
data/release.sh DELETED
@@ -1,44 +0,0 @@
1
- #!/bin/bash
2
-
3
- SCRIPT_FOLDER="$(cd -P "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
4
- VERSION_FILE="${SCRIPT_FOLDER}/lib/tdl/previous_version.rb"
5
- TMP_VERSION_FILE="${SCRIPT_FOLDER}/out/versions.txt"
6
-
7
-
8
- function gemspec_property() {
9
- local property=$1
10
- cat ${TMP_VERSION_FILE} | grep ${property} | cut -d "=" -f2 | tr -d " "
11
- }
12
-
13
- echo "Reading gemspec properties. This might take some time."
14
-
15
- # Previous
16
- ruby <<-EOS | tee ${TMP_VERSION_FILE}
17
- require "rubygems"
18
- spec = Gem::Specification::load("tdl-client-ruby.gemspec")
19
- puts "PREVIOUS_VERSION = #{spec.metadata['previous_version']}"
20
- puts "CURRENT_VERSION = #{spec.version}"
21
- EOS
22
- PREVIOUS_VERSION=`gemspec_property PREVIOUS_VERSION`
23
- CURRENT_VERSION=`gemspec_property CURRENT_VERSION`
24
-
25
-
26
- # Prompt for version confirmation
27
- read -p "Going to release version ${CURRENT_VERSION} (previous ${PREVIOUS_VERSION}). Proceed ? [y/n] "
28
- if [[ ! $REPLY =~ ^[Yy]$ ]]
29
- then
30
- echo "Aborting."
31
- exit
32
- fi
33
-
34
- # Release current version
35
- git tag -a "v${CURRENT_VERSION}" -m "Release ${CURRENT_VERSION}"
36
- git push origin "v${CURRENT_VERSION}"
37
- echo "Pushed tag to Git origin. It will now trigger the deployment pipeline."
38
-
39
- cat > "${VERSION_FILE}" <<-EOF
40
- module TDL
41
- PREVIOUS_VERSION = '$CURRENT_VERSION'
42
- # the current MAJOR.MINOR version is dynamically computed from the version of the Spec
43
- end
44
- EOF
@@ -1,19 +0,0 @@
1
- #!/bin/bash
2
-
3
- set -e
4
- set -u
5
- set -o pipefail
6
-
7
- startWiremocks() {
8
- echo "~~~~~~~~~~ Starting Wiremocks on ports 41375 and 8222 ~~~~~~~~~"
9
- python3 wiremock/wiremock-wrapper.py start 41375
10
- python3 wiremock/wiremock-wrapper.py start 8222
11
- }
12
-
13
- startBroker() {
14
- echo "~~~~~~~~~~ Starting Broker ~~~~~~~~~"
15
- python3 broker/activemq-wrapper.py start
16
- }
17
-
18
- startWiremocks
19
- startBroker
@@ -1,19 +0,0 @@
1
- #!/bin/bash
2
-
3
- set -e
4
- set -u
5
- set -o pipefail
6
-
7
- startWiremocks() {
8
- echo "~~~~~~~~~~ Starting Wiremocks on ports 41375 and 8222 ~~~~~~~~~"
9
- python3 wiremock/wiremock-wrapper.py stop 41375
10
- python3 wiremock/wiremock-wrapper.py stop 8222
11
- }
12
-
13
- startBroker() {
14
- echo "~~~~~~~~~~ Starting Broker ~~~~~~~~~"
15
- python3 broker/activemq-wrapper.py stop
16
- }
17
-
18
- startWiremocks
19
- startBroker