elastic-apm 4.6.2 → 4.8.0

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.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/.ci/.exclude.yml +132 -0
  3. data/.ci/{.jenkins_framework.yml → .framework.yml} +1 -4
  4. data/.ci/.ruby.yml +10 -0
  5. data/.ci/scripts/bench.sh +52 -0
  6. data/.ci/scripts/install-build-system.sh +5 -0
  7. data/.ci/updatecli/values.d/apm-data-spec.yml +1 -0
  8. data/.ci/updatecli/values.d/apm-gherkin.yml +1 -0
  9. data/.ci/updatecli/values.d/apm-json-specs.yml +1 -0
  10. data/.ci/updatecli/values.d/scm.yml +10 -0
  11. data/.ci/updatecli/values.d/update-compose.yml +3 -0
  12. data/.github/PULL_REQUEST_TEMPLATE.md +2 -2
  13. data/.github/dependabot.yml +35 -14
  14. data/.github/workflows/README.md +57 -0
  15. data/.github/workflows/addToProject.yml +19 -2
  16. data/.github/workflows/ci-docs.yml +20 -0
  17. data/.github/workflows/ci.yml +70 -0
  18. data/.github/workflows/docs-build.yml +19 -0
  19. data/.github/workflows/docs-cleanup.yml +14 -0
  20. data/.github/workflows/github-commands-comment.yml +38 -0
  21. data/.github/workflows/labeler.yml +5 -0
  22. data/.github/workflows/microbenchmark.yml +31 -0
  23. data/.github/workflows/release.yml +86 -0
  24. data/.github/workflows/run-matrix.yml +68 -0
  25. data/.github/workflows/test-reporter.yml +25 -0
  26. data/.github/workflows/updatecli.yml +61 -0
  27. data/.pre-commit-config.yaml +0 -2
  28. data/Gemfile +29 -3
  29. data/README.md +1 -1
  30. data/bench/rubyprof.rb +1 -0
  31. data/bin/dev +2 -2
  32. data/bin/run-tests +10 -1
  33. data/docker-compose.yml +4 -1
  34. data/docs/docset.yml +9 -0
  35. data/docs/reference/advanced-topics.md +12 -0
  36. data/docs/reference/api-reference.md +422 -0
  37. data/docs/reference/configuration.md +734 -0
  38. data/docs/{context.asciidoc → reference/context.md} +21 -21
  39. data/docs/reference/custom-instrumentation.md +72 -0
  40. data/docs/{getting-started-rack.asciidoc → reference/getting-started-rack.md} +20 -29
  41. data/docs/reference/getting-started-rails.md +27 -0
  42. data/docs/reference/graphql.md +21 -0
  43. data/docs/reference/index.md +24 -0
  44. data/docs/{log-correlation.asciidoc → reference/logs.md} +50 -41
  45. data/docs/reference/metrics.md +199 -0
  46. data/docs/reference/opentracing-api.md +70 -0
  47. data/docs/reference/performance-tuning.md +71 -0
  48. data/docs/reference/set-up-apm-ruby-agent.md +16 -0
  49. data/docs/reference/supported-technologies.md +128 -0
  50. data/docs/reference/toc.yml +22 -0
  51. data/docs/reference/upgrading.md +19 -0
  52. data/docs/release-notes/index.md +166 -0
  53. data/docs/release-notes/known-issues.md +24 -0
  54. data/docs/release-notes/toc.yml +3 -0
  55. data/lib/elastic_apm/context_builder.rb +15 -7
  56. data/lib/elastic_apm/metadata/cloud_info.rb +9 -7
  57. data/lib/elastic_apm/metrics.rb +24 -20
  58. data/lib/elastic_apm/span_helpers.rb +6 -6
  59. data/lib/elastic_apm/spies/action_dispatch.rb +11 -3
  60. data/lib/elastic_apm/spies/faraday.rb +8 -1
  61. data/lib/elastic_apm/spies/sidekiq.rb +2 -1
  62. data/lib/elastic_apm/stacktrace_builder.rb +3 -3
  63. data/lib/elastic_apm/version.rb +1 -1
  64. data/updatecli-compose.yaml +23 -0
  65. metadata +52 -44
  66. data/.ci/.jenkins_exclude.yml +0 -191
  67. data/.ci/.jenkins_ruby.yml +0 -10
  68. data/.ci/.jenkins_ruby_benchmarks.yml +0 -6
  69. data/.ci/Jenkinsfile +0 -450
  70. data/.ci/jobs/apm-agent-ruby-downstream.yml +0 -38
  71. data/.ci/jobs/apm-agent-ruby-linting-mbp.yml +0 -39
  72. data/.ci/jobs/apm-agent-ruby-mbp.yml +0 -43
  73. data/.ci/jobs/apm-agent-ruby.yml +0 -4
  74. data/.ci/jobs/defaults.yml +0 -24
  75. data/.ci/linting.groovy +0 -32
  76. data/.ci/packer_cache.sh +0 -16
  77. data/.ci/snapshoty.yml +0 -34
  78. data/.ci/update-specs.yml +0 -108
  79. data/.github/workflows/update-specs.yml +0 -30
  80. data/CHANGELOG.asciidoc +0 -951
  81. data/docs/advanced.asciidoc +0 -14
  82. data/docs/api.asciidoc +0 -487
  83. data/docs/configuration.asciidoc +0 -888
  84. data/docs/custom-instrumentation.asciidoc +0 -80
  85. data/docs/debugging.asciidoc +0 -44
  86. data/docs/getting-started-rails.asciidoc +0 -30
  87. data/docs/graphql.asciidoc +0 -23
  88. data/docs/index.asciidoc +0 -38
  89. data/docs/introduction.asciidoc +0 -36
  90. data/docs/metrics.asciidoc +0 -235
  91. data/docs/opentracing.asciidoc +0 -94
  92. data/docs/performance-tuning.asciidoc +0 -106
  93. data/docs/release-notes.asciidoc +0 -15
  94. data/docs/set-up.asciidoc +0 -19
  95. data/docs/supported-technologies.asciidoc +0 -157
  96. data/docs/upgrading.asciidoc +0 -18
  97. /data/.ci/{.jenkins_codecov.yml → .codecov.yml} +0 -0
  98. /data/.ci/{.jenkins_main_framework.yml → .main_framework.yml} +0 -0
  99. /data/docs/{images → reference/images}/dynamic-config.svg +0 -0
@@ -50,27 +50,9 @@ module ElasticAPM
50
50
  return
51
51
  end
52
52
 
53
- debug 'Starting metrics'
54
-
55
- # Only set the @sets once, in case we stop
56
- # and start again.
57
- if @sets.nil?
58
- sets = {
59
- system: CpuMemSet,
60
- vm: VMSet,
61
- breakdown: BreakdownSet,
62
- transaction: TransactionSet
63
- }
64
- if defined?(JVMSet)
65
- debug "Enabling JVM metrics collection"
66
- sets[:jvm] = JVMSet
67
- end
53
+ define_sets
68
54
 
69
- @sets = sets.each_with_object({}) do |(key, kls), _sets_|
70
- debug "Adding metrics collector '#{kls}'"
71
- _sets_[key] = kls.new(config)
72
- end
73
- end
55
+ debug 'Starting metrics'
74
56
 
75
57
  @timer_task = Concurrent::TimerTask.execute(
76
58
  run_now: true,
@@ -135,6 +117,28 @@ module ElasticAPM
135
117
  arr.concat(samples)
136
118
  end
137
119
  end
120
+
121
+ def define_sets
122
+ # Only set the @sets once, in case we stop
123
+ # and start again.
124
+ return unless @sets.nil?
125
+
126
+ sets = {
127
+ system: CpuMemSet,
128
+ vm: VMSet,
129
+ breakdown: BreakdownSet,
130
+ transaction: TransactionSet
131
+ }
132
+ if defined?(JVMSet)
133
+ debug "Enabling JVM metrics collection"
134
+ sets[:jvm] = JVMSet
135
+ end
136
+
137
+ @sets = sets.each_with_object({}) do |(key, kls), _sets_|
138
+ debug "Adding metrics collector '#{kls}'"
139
+ _sets_[key] = kls.new(config)
140
+ end
141
+ end
138
142
  end
139
143
  end
140
144
  end
@@ -22,17 +22,17 @@ module ElasticAPM
22
22
  module SpanHelpers
23
23
  # @api private
24
24
  module ClassMethods
25
- def span_class_method(method, name = nil, type = nil)
26
- __span_method_on(singleton_class, method, name, type)
25
+ def span_class_method(method, name = nil, type = nil, **kwargs)
26
+ __span_method_on(singleton_class, method, name, type, **kwargs)
27
27
  end
28
28
 
29
- def span_method(method, name = nil, type = nil)
30
- __span_method_on(self, method, name, type)
29
+ def span_method(method, name = nil, type = nil, **kwargs)
30
+ __span_method_on(self, method, name, type, **kwargs)
31
31
  end
32
32
 
33
33
  private
34
34
 
35
- def __span_method_on(klass, method, name = nil, type = nil)
35
+ def __span_method_on(klass, method, name = nil, type = nil, **kwargs)
36
36
  name ||= method.to_s
37
37
  type ||= Span::DEFAULT_TYPE
38
38
 
@@ -42,7 +42,7 @@ module ElasticAPM
42
42
  return super(*args, &block)
43
43
  end
44
44
 
45
- ElasticAPM.with_span name.to_s, type.to_s do
45
+ ElasticAPM.with_span name.to_s, type.to_s, **kwargs do
46
46
  super(*args, &block)
47
47
  end
48
48
  end)
@@ -24,11 +24,19 @@ module ElasticAPM
24
24
  class ActionDispatchSpy
25
25
  # @api private
26
26
  module Ext
27
- def render_exception(env, exception)
28
- context = ElasticAPM.build_context(rack_env: env, for_type: :error)
27
+ def render_exception(request, exception_or_wrapper)
28
+ context = ElasticAPM.build_context(
29
+ rack_env: request, for_type: :error
30
+ )
31
+ exception =
32
+ if exception_or_wrapper.is_a?(ActionDispatch::ExceptionWrapper)
33
+ exception_or_wrapper.exception
34
+ else
35
+ exception_or_wrapper
36
+ end
29
37
  ElasticAPM.report(exception, context: context, handled: false)
30
38
 
31
- super(env, exception)
39
+ super(request, exception_or_wrapper)
32
40
  end
33
41
  end
34
42
 
@@ -109,7 +109,14 @@ module ElasticAPM
109
109
  yield req if block
110
110
  end
111
111
  rescue Faraday::ClientError, Faraday::ServerError => e # Faraday::Response::RaiseError
112
- status = e.response[:status]
112
+ status =
113
+ if e.respond_to?(:response_status)
114
+ e.response_status
115
+ elsif e.response && e.response.respond_to?(:status)
116
+ e.response.status
117
+ elsif e.response && e.response.respond_to?(:fetch)
118
+ e.response[:status]
119
+ end
113
120
  http = span&.context&.http
114
121
  if http && status
115
122
  http.status_code = status.to_s
@@ -24,6 +24,7 @@ module ElasticAPM
24
24
  class SidekiqSpy
25
25
  ACTIVE_JOB_WRAPPER =
26
26
  'ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper'
27
+ ACTIVE_JOB_WRAPPER_V8 = 'Sidekiq::ActiveJob::Wrapper'
27
28
 
28
29
  # @api private
29
30
  class Middleware
@@ -50,7 +51,7 @@ module ElasticAPM
50
51
  klass = job['class']
51
52
 
52
53
  case klass
53
- when ACTIVE_JOB_WRAPPER
54
+ when ACTIVE_JOB_WRAPPER, ACTIVE_JOB_WRAPPER_V8
54
55
  job['wrapped']
55
56
  else
56
57
  klass
@@ -24,7 +24,7 @@ module ElasticAPM
24
24
  # @api private
25
25
  class StacktraceBuilder
26
26
  JAVA_FORMAT = /^(.+)\.([^.]+)\(([^:]+):(\d+)\)$/.freeze
27
- RUBY_FORMAT = /^(.+?):(\d+)(?::in `(.+?)')?$/.freeze
27
+ RUBY_FORMAT = /^(.+?):(\d+)(?::in ['`](.+#)?(.+?)')?$/.freeze
28
28
 
29
29
  RUBY_VERS_REGEX = %r{ruby(/gems)?[-/](\d+\.)+\d}.freeze
30
30
  JRUBY_ORG_REGEX = %r{org/jruby}.freeze
@@ -77,9 +77,9 @@ module ElasticAPM
77
77
  ruby_match = line.match(RUBY_FORMAT)
78
78
 
79
79
  if ruby_match
80
- _, file, number, method = ruby_match.to_a
80
+ _, file, number, module_name, method = ruby_match.to_a
81
81
  file.sub!(/\.class$/, '.rb')
82
- module_name = nil
82
+ module_name&.sub!('#', '')
83
83
  else
84
84
  java_match = line.match(JAVA_FORMAT)
85
85
  _, module_name, method, file, number = java_match.to_a
@@ -18,5 +18,5 @@
18
18
  # frozen_string_literal: true
19
19
 
20
20
  module ElasticAPM
21
- VERSION = '4.6.2'
21
+ VERSION = '4.8.0'
22
22
  end
@@ -0,0 +1,23 @@
1
+ # Config file for `updatecli compose ...`.
2
+ # https://www.updatecli.io/docs/core/compose/
3
+ policies:
4
+ - name: Handle apm-data server specs
5
+ policy: ghcr.io/elastic/oblt-updatecli-policies/apm/apm-data-spec:0.6.0@sha256:c0bbdec23541bed38df1342c95aeb601530a113db1ff11715c1c7616ed5e9e8b
6
+ values:
7
+ - .ci/updatecli/values.d/scm.yml
8
+ - .ci/updatecli/values.d/apm-data-spec.yml
9
+ - name: Handle apm gherkin specs
10
+ policy: ghcr.io/elastic/oblt-updatecli-policies/apm/apm-gherkin:0.6.0@sha256:dbaf4d855c5c212c3b5a8d2cc98c243a2b769ac347198ae8814393a1a0576587
11
+ values:
12
+ - .ci/updatecli/values.d/scm.yml
13
+ - .ci/updatecli/values.d/apm-gherkin.yml
14
+ - name: Handle apm json specs
15
+ policy: ghcr.io/elastic/oblt-updatecli-policies/apm/apm-json-specs:0.6.0@sha256:e5a74c159ceed02fd20515ea76fa25ff81e3ccf977e74e636f9973db86aa52a5
16
+ values:
17
+ - .ci/updatecli/values.d/scm.yml
18
+ - .ci/updatecli/values.d/apm-json-specs.yml
19
+ - name: Update Updatecli policies
20
+ policy: ghcr.io/updatecli/policies/autodiscovery/updatecli:0.8.0@sha256:99e9e61b501575c2c176c39f2275998d198b590a3f6b1fe829f7315f8d457e7f
21
+ values:
22
+ - .ci/updatecli/values.d/scm.yml
23
+ - .ci/updatecli/values.d/update-compose.yml
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elastic-apm
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.6.2
4
+ version: 4.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mikkel Malmberg
8
8
  - Emily Stolfo
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2023-03-22 00:00:00.000000000 Z
12
+ date: 2025-05-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: concurrent-ruby
@@ -53,20 +53,18 @@ dependencies:
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: '0'
56
- description:
56
+ description:
57
57
  email:
58
58
  - info@elastic.co
59
59
  executables: []
60
60
  extensions: []
61
61
  extra_rdoc_files: []
62
62
  files:
63
- - ".ci/.jenkins_codecov.yml"
64
- - ".ci/.jenkins_exclude.yml"
65
- - ".ci/.jenkins_framework.yml"
66
- - ".ci/.jenkins_main_framework.yml"
67
- - ".ci/.jenkins_ruby.yml"
68
- - ".ci/.jenkins_ruby_benchmarks.yml"
69
- - ".ci/Jenkinsfile"
63
+ - ".ci/.codecov.yml"
64
+ - ".ci/.exclude.yml"
65
+ - ".ci/.framework.yml"
66
+ - ".ci/.main_framework.yml"
67
+ - ".ci/.ruby.yml"
70
68
  - ".ci/docker/jruby/11-jdk/Dockerfile"
71
69
  - ".ci/docker/jruby/12-jdk/Dockerfile"
72
70
  - ".ci/docker/jruby/13-jdk/Dockerfile"
@@ -75,28 +73,35 @@ files:
75
73
  - ".ci/docker/jruby/README.md"
76
74
  - ".ci/docker/jruby/run.sh"
77
75
  - ".ci/docker/jruby/test.sh"
78
- - ".ci/jobs/apm-agent-ruby-downstream.yml"
79
- - ".ci/jobs/apm-agent-ruby-linting-mbp.yml"
80
- - ".ci/jobs/apm-agent-ruby-mbp.yml"
81
- - ".ci/jobs/apm-agent-ruby.yml"
82
- - ".ci/jobs/defaults.yml"
83
- - ".ci/linting.groovy"
84
- - ".ci/packer_cache.sh"
85
- - ".ci/snapshoty.yml"
86
- - ".ci/update-specs.yml"
76
+ - ".ci/scripts/bench.sh"
77
+ - ".ci/scripts/install-build-system.sh"
78
+ - ".ci/updatecli/values.d/apm-data-spec.yml"
79
+ - ".ci/updatecli/values.d/apm-gherkin.yml"
80
+ - ".ci/updatecli/values.d/apm-json-specs.yml"
81
+ - ".ci/updatecli/values.d/scm.yml"
82
+ - ".ci/updatecli/values.d/update-compose.yml"
87
83
  - ".github/ISSUE_TEMPLATE/Bug_report.md"
88
84
  - ".github/ISSUE_TEMPLATE/Feature_request.md"
89
85
  - ".github/PULL_REQUEST_TEMPLATE.md"
90
86
  - ".github/dependabot.yml"
91
87
  - ".github/labeler-config.yml"
88
+ - ".github/workflows/README.md"
92
89
  - ".github/workflows/addToProject.yml"
90
+ - ".github/workflows/ci-docs.yml"
91
+ - ".github/workflows/ci.yml"
92
+ - ".github/workflows/docs-build.yml"
93
+ - ".github/workflows/docs-cleanup.yml"
94
+ - ".github/workflows/github-commands-comment.yml"
93
95
  - ".github/workflows/labeler.yml"
94
- - ".github/workflows/update-specs.yml"
96
+ - ".github/workflows/microbenchmark.yml"
97
+ - ".github/workflows/release.yml"
98
+ - ".github/workflows/run-matrix.yml"
99
+ - ".github/workflows/test-reporter.yml"
100
+ - ".github/workflows/updatecli.yml"
95
101
  - ".gitignore"
96
102
  - ".pre-commit-config.yaml"
97
103
  - ".rspec"
98
104
  - ".rubocop.yml"
99
- - CHANGELOG.asciidoc
100
105
  - CODE_OF_CONDUCT.md
101
106
  - CONTRIBUTING.md
102
107
  - Dockerfile
@@ -121,26 +126,28 @@ files:
121
126
  - bin/setup
122
127
  - bin/with_framework
123
128
  - docker-compose.yml
124
- - docs/advanced.asciidoc
125
- - docs/api.asciidoc
126
- - docs/configuration.asciidoc
127
- - docs/context.asciidoc
128
- - docs/custom-instrumentation.asciidoc
129
- - docs/debugging.asciidoc
130
- - docs/getting-started-rack.asciidoc
131
- - docs/getting-started-rails.asciidoc
132
- - docs/graphql.asciidoc
133
- - docs/images/dynamic-config.svg
134
- - docs/index.asciidoc
135
- - docs/introduction.asciidoc
136
- - docs/log-correlation.asciidoc
137
- - docs/metrics.asciidoc
138
- - docs/opentracing.asciidoc
139
- - docs/performance-tuning.asciidoc
140
- - docs/release-notes.asciidoc
141
- - docs/set-up.asciidoc
142
- - docs/supported-technologies.asciidoc
143
- - docs/upgrading.asciidoc
129
+ - docs/docset.yml
130
+ - docs/reference/advanced-topics.md
131
+ - docs/reference/api-reference.md
132
+ - docs/reference/configuration.md
133
+ - docs/reference/context.md
134
+ - docs/reference/custom-instrumentation.md
135
+ - docs/reference/getting-started-rack.md
136
+ - docs/reference/getting-started-rails.md
137
+ - docs/reference/graphql.md
138
+ - docs/reference/images/dynamic-config.svg
139
+ - docs/reference/index.md
140
+ - docs/reference/logs.md
141
+ - docs/reference/metrics.md
142
+ - docs/reference/opentracing-api.md
143
+ - docs/reference/performance-tuning.md
144
+ - docs/reference/set-up-apm-ruby-agent.md
145
+ - docs/reference/supported-technologies.md
146
+ - docs/reference/toc.yml
147
+ - docs/reference/upgrading.md
148
+ - docs/release-notes/index.md
149
+ - docs/release-notes/known-issues.md
150
+ - docs/release-notes/toc.yml
144
151
  - elastic-apm.gemspec
145
152
  - lib/elastic-apm.rb
146
153
  - lib/elastic_apm.rb
@@ -276,12 +283,13 @@ files:
276
283
  - lib/elastic_apm/util/precision_validator.rb
277
284
  - lib/elastic_apm/util/throttle.rb
278
285
  - lib/elastic_apm/version.rb
286
+ - updatecli-compose.yaml
279
287
  homepage: https://github.com/elastic/apm-agent-ruby
280
288
  licenses:
281
289
  - Apache-2.0
282
290
  metadata:
283
291
  source_code_uri: https://github.com/elastic/apm-agent-ruby
284
- post_install_message:
292
+ post_install_message:
285
293
  rdoc_options: []
286
294
  require_paths:
287
295
  - lib
@@ -297,7 +305,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
297
305
  version: '0'
298
306
  requirements: []
299
307
  rubygems_version: 3.0.3.1
300
- signing_key:
308
+ signing_key:
301
309
  specification_version: 4
302
310
  summary: The official Elastic APM agent for Ruby
303
311
  test_files: []
@@ -1,191 +0,0 @@
1
- exclude:
2
- # Ruby 2.4
3
- # Only test on rails-5.2, sinatra-1.4
4
- - RUBY_VERSION: ruby:2.4
5
- FRAMEWORK: rails-7.0
6
- - RUBY_VERSION: ruby:2.4
7
- FRAMEWORK: rails-6.1
8
- - RUBY_VERSION: ruby:2.4
9
- FRAMEWORK: rails-6.0
10
- - RUBY_VERSION: ruby:2.4
11
- FRAMEWORK: rails-4.2
12
- - RUBY_VERSION: ruby:2.4
13
- FRAMEWORK: sinatra-2.2
14
- - RUBY_VERSION: ruby:2.4
15
- FRAMEWORK: grape-1.6
16
- - RUBY_VERSION: ruby:2.4
17
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.0
18
- - RUBY_VERSION: ruby:2.4
19
- FRAMEWORK: rails-main
20
- - RUBY_VERSION: ruby:2.4
21
- FRAMEWORK: sinatra-main
22
- - RUBY_VERSION: ruby:2.4
23
- FRAMEWORK: grape-master
24
-
25
- # rails-4.2 exclusions
26
- # Only test on ruby 2.6, 2.5, 2.4
27
- - RUBY_VERSION: ruby:3.1
28
- FRAMEWORK: rails-4.2
29
- - RUBY_VERSION: ruby:3.0
30
- FRAMEWORK: rails-4.2
31
- - RUBY_VERSION: ruby:2.7
32
- FRAMEWORK: rails-4.2
33
- - RUBY_VERSION: jruby:9.2
34
- FRAMEWORK: rails-4.2
35
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-13-jdk
36
- FRAMEWORK: rails-4.2
37
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-11-jdk
38
- FRAMEWORK: rails-4.2
39
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-8-jdk
40
- FRAMEWORK: rails-4.2
41
- # sinatra-1.4 exclusions
42
- - RUBY_VERSION: ruby:3.1
43
- FRAMEWORK: sinatra-1.4
44
- - RUBY_VERSION: ruby:3.0
45
- FRAMEWORK: sinatra-1.4
46
- - RUBY_VERSION: ruby:2.7
47
- FRAMEWORK: sinatra-1.4
48
- - RUBY_VERSION: jruby:9.2
49
- FRAMEWORK: sinatra-1.4
50
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-13-jdk
51
- FRAMEWORK: sinatra-1.4
52
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-11-jdk
53
- FRAMEWORK: sinatra-1.4
54
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-8-jdk
55
- FRAMEWORK: sinatra-1.4
56
-
57
- # rails-6.0 and rails-6.1 exclusions
58
- # Don't test on ruby 2.4
59
- - RUBY_VERSION: ruby:2.4
60
- FRAMEWORK: rails-6.1
61
- - RUBY_VERSION: ruby:2.4
62
- FRAMEWORK: rails-6.0
63
-
64
- # Only test rails main on ruby 3.1
65
- - RUBY_VERSION: ruby:3.0
66
- FRAMEWORK: rails-main
67
- - RUBY_VERSION: ruby:2.7
68
- FRAMEWORK: rails-main
69
- - RUBY_VERSION: ruby:2.6
70
- FRAMEWORK: rails-main
71
- - RUBY_VERSION: ruby:2.5
72
- FRAMEWORK: rails-main
73
- - RUBY_VERSION: ruby:2.4
74
- FRAMEWORK: rails-main
75
- - RUBY_VERSION: jruby:9.2
76
- FRAMEWORK: rails-main
77
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-13-jdk
78
- FRAMEWORK: rails-main
79
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-11-jdk
80
- FRAMEWORK: rails-main
81
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-8-jdk
82
- FRAMEWORK: rails-main
83
-
84
- # Only test rails 7.0 on ruby >= 2.7
85
- - RUBY_VERSION: ruby:2.6
86
- FRAMEWORK: rails-7.0
87
- - RUBY_VERSION: ruby:2.5
88
- FRAMEWORK: rails-7.0
89
- - RUBY_VERSION: ruby:2.4
90
- FRAMEWORK: rails-7.0
91
- - RUBY_VERSION: jruby:9.2
92
- FRAMEWORK: rails-7.0
93
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-13-jdk
94
- FRAMEWORK: rails-7.0
95
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-11-jdk
96
- FRAMEWORK: rails-7.0
97
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-8-jdk
98
- FRAMEWORK: rails-7.0
99
-
100
- # Only test sinatra main on ruby 2.7 and ruby 3.1
101
- - RUBY_VERSION: ruby:3.0
102
- FRAMEWORK: sinatra-main
103
- - RUBY_VERSION: ruby:2.6
104
- FRAMEWORK: sinatra-main
105
- - RUBY_VERSION: ruby:2.5
106
- FRAMEWORK: sinatra-main
107
- - RUBY_VERSION: ruby:2.4
108
- FRAMEWORK: sinatra-main
109
- - RUBY_VERSION: jruby:9.2
110
- FRAMEWORK: sinatra-main
111
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-13-jdk
112
- FRAMEWORK: sinatra-main
113
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-11-jdk
114
- FRAMEWORK: sinatra-main
115
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-8-jdk
116
- FRAMEWORK: sinatra-main
117
-
118
- # Only test grape master on ruby 2.7 and ruby 3.0
119
- - RUBY_VERSION: ruby:2.6
120
- FRAMEWORK: grape-master
121
- - RUBY_VERSION: ruby:2.5
122
- FRAMEWORK: grape-master
123
- - RUBY_VERSION: ruby:2.4
124
- FRAMEWORK: grape-master
125
- - RUBY_VERSION: jruby:9.2
126
- FRAMEWORK: grape-master
127
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-13-jdk
128
- FRAMEWORK: grape-master
129
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-11-jdk
130
- FRAMEWORK: grape-master
131
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-8-jdk
132
- FRAMEWORK: grape-master
133
-
134
- # grape 1.5 doesn't support ruby 3.0
135
- - RUBY_VERSION: ruby:3.1
136
- FRAMEWORK: grape-1.6
137
- - RUBY_VERSION: ruby:3.1
138
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-7.0
139
- - RUBY_VERSION: ruby:3.1
140
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
141
- - RUBY_VERSION: ruby:3.0
142
- FRAMEWORK: grape-1.6
143
- - RUBY_VERSION: ruby:3.0
144
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
145
-
146
- # only test ruby >= 3.0 with rails 6.0 and rails 6.1
147
- - RUBY_VERSION: ruby:3.1
148
- FRAMEWORK: rails-5.2
149
- - RUBY_VERSION: ruby:3.1
150
- FRAMEWORK: rails-5.1
151
- - RUBY_VERSION: ruby:3.0
152
- FRAMEWORK: rails-5.2
153
- - RUBY_VERSION: ruby:3.0
154
- FRAMEWORK: rails-5.1
155
-
156
- # Unsupported
157
- # Ruby 2.6
158
- - RUBY_VERSION: ruby:2.6
159
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
160
- - RUBY_VERSION: ruby:2.6
161
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-7.0
162
- # Ruby 2.5
163
- - RUBY_VERSION: ruby:2.5
164
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
165
- - RUBY_VERSION: ruby:2.5
166
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-7.0
167
- # Ruby 2.4
168
- - RUBY_VERSION: ruby:2.4
169
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
170
- - RUBY_VERSION: ruby:2.4
171
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-7.0
172
- # JRuby 9.2
173
- - RUBY_VERSION: jruby:9.2
174
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
175
- - RUBY_VERSION: jruby:9.2
176
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-7.0
177
- # JRuby 9.2-13-jdk
178
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-13-jdk
179
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
180
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-13-jdk
181
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-7.0
182
- # JRuby 9.2-11-jdk
183
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-11-jdk
184
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
185
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-11-jdk
186
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-7.0
187
- # JRuby 9.2-8-jdk
188
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-8-jdk
189
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-6.1
190
- - RUBY_VERSION: docker.elastic.co/observability-ci/jruby:9.2-8-jdk
191
- FRAMEWORK: grape-1.6,sinatra-2.2,rails-7.0
@@ -1,10 +0,0 @@
1
- RUBY_VERSION:
2
- - ruby:3.1
3
- - ruby:3.0
4
- - ruby:2.7
5
- - ruby:2.6
6
- - ruby:2.4
7
- - jruby:9.2
8
- - docker.elastic.co/observability-ci/jruby:9.2-13-jdk
9
- - docker.elastic.co/observability-ci/jruby:9.2-11-jdk
10
- - docker.elastic.co/observability-ci/jruby:9.2-8-jdk
@@ -1,6 +0,0 @@
1
- RUBY_VERSION:
2
- - ruby:3.1
3
- - ruby:3.0
4
- - ruby:2.7
5
- - ruby:2.6
6
- - jruby:9.2