codecov_opentelem 0.1.0 → 0.1.3

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: 60048234598ab361913a778271de941824f809ffbcd10a99a196a633e85fca4c
4
- data.tar.gz: 6929cb70f8ad00564757efdc05a5d8e848d1b35652e97e908f9f10f157d1855a
3
+ metadata.gz: 6914eed45d30e64ce8c2982e130fc182539e953e463ec31eb5924ebac9347002
4
+ data.tar.gz: bdc8110f1234339151b7a8bbc51aead42603faf263f1fc75d1fc89f73ff07993
5
5
  SHA512:
6
- metadata.gz: 3dab6244c860ce0955fda8e3f21b26702a37223601395ab604e175057f3e3db0bb2272ad879da8cf824cde34ccf830e7f6bab35ec513ea9a9d33281ae7a0f5d8
7
- data.tar.gz: d7e275ad9f8a9eb9d3b59b428078bd5682e72326e51d1a4a6aef7c9dfd954dceff66f7de705e103f36c296e33f1fdfaa4ea2309d2bb58ac35c1a0e4be9cef936
6
+ metadata.gz: 66932b7701993e76e43798ec280718293333ab88520cb1bd881f1a9f0ce653dc4680b727fb22288e082296f6479bf8fe7161d3e834c3c562c7ccce4870d8b2f2
7
+ data.tar.gz: a727af20f23a98ca148612f0cc792da9733f5c8e37290a4e532ba8396a145b6129e77f1bf3e14b919407a82140ff39227a536082bd6092b1dd7bbb76032d005c
data/Gemfile CHANGED
@@ -10,3 +10,4 @@ gem "rake", "~> 13.0"
10
10
  gem 'opentelemetry-sdk'
11
11
  gem 'opentelemetry-exporter-otlp'
12
12
  gem 'opentelemetry-instrumentation-all'
13
+ gem "rspec"
data/Rakefile CHANGED
@@ -1,4 +1,20 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "bundler/gem_tasks"
4
+ require_relative "lib/codecov_opentelem/version"
5
+
4
6
  task default: %i[]
7
+
8
+
9
+ task :compare_versions, [:github_ref] do |t, args|
10
+ unless args.github_ref.end_with?(CodecovOpentelem::VERSION)
11
+ abort("version mismatch between GITHUB_REF=#{args.github_ref} and gem veriosn=#{CodecovOpentelem::VERSION}")
12
+ else
13
+ puts "gem version #{CodecovOpentelem::VERSION} matched with GITHUB_REF"
14
+ end
15
+ end
16
+
17
+
18
+ task :get_version do |t|
19
+ puts CodecovOpentelem::VERSION
20
+ end
@@ -14,6 +14,7 @@ end
14
14
 
15
15
  class CodecovCoverageStorageManager
16
16
  def initialize(filters)
17
+ Coverage.start
17
18
  @filters = filters
18
19
  @inner = {}
19
20
  end
@@ -23,7 +24,7 @@ class CodecovCoverageStorageManager
23
24
  return false
24
25
  end
25
26
 
26
- Coverage.resume
27
+ Coverage.resume unless Coverage.running?
27
28
  true
28
29
  end
29
30
 
@@ -39,7 +40,7 @@ class CodecovCoverageStorageManager
39
40
  end
40
41
  end
41
42
 
42
- class CodecovCoverageGenerator < SpanProcessor
43
+ class CodecovCoverageGenerator < OpenTelemetry::SDK::Trace::SpanProcessor
43
44
  def initialize(cov_storage, sample_rate)
44
45
  super()
45
46
  @cov_storage = cov_storage
@@ -47,7 +48,7 @@ class CodecovCoverageGenerator < SpanProcessor
47
48
  end
48
49
 
49
50
  def on_start(span, _parent_context = nil)
50
- @cov_storage.possibly_start_cov_for_span(span) if rand < @sample_rate
51
+ @cov_storage.start_coverage_for_span(span) if rand < @sample_rate
51
52
  end
52
53
 
53
54
  def on_end(span)
@@ -55,7 +56,7 @@ class CodecovCoverageGenerator < SpanProcessor
55
56
  end
56
57
  end
57
58
 
58
- class CoverageExporter < SpanExporter
59
+ class CoverageExporter < OpenTelemetry::SDK::Trace::Export::SpanExporter
59
60
  def initialize(cov_storage, repository_token, code, codecov_url, untracked_export_rate)
60
61
  super()
61
62
  @cov_storage = cov_storage
@@ -69,7 +70,7 @@ class CoverageExporter < SpanExporter
69
70
  tracked_spans = []
70
71
  untracked_spans = []
71
72
  spans.each do |span|
72
- cov = cov_storage.pop_cov_for_span(span)
73
+ cov = cov_storage.pop_coverage_for_span(span)
73
74
  s = JSON.parse(span)
74
75
  if !cov.nil?
75
76
  s['codecov'] = { 'type' => 'bytes', 'coverage' => cov }
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CodecovOpentelem
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.3"
5
5
  end
@@ -40,9 +40,9 @@ def get_codecov_opentelemetry_instances(
40
40
  'Authorization' => "repotoken #{repository_token}")
41
41
  raise UnableToStartProcessorException if res.is_a?(Net::HTTPError)
42
42
  end
43
- manager = CodecovCoverageStorageManager(filters)
44
- generator = CodecovCoverageGenerator(manager, sample_rate)
45
- exporter = CoverageExporter(
43
+ manager = CodecovCoverageStorageManager.new(filters)
44
+ generator = CodecovCoverageGenerator.new(manager, sample_rate)
45
+ exporter = CoverageExporter.new(
46
46
  manager, repository_token, code, codecov_url, untracked_export_rate
47
47
  )
48
48
  [generator, exporter]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codecov_opentelem
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ahmed-Elghrbawy
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-05-13 00:00:00.000000000 Z
11
+ date: 2022-06-17 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email:
@@ -22,7 +22,6 @@ files:
22
22
  - LICENSE.txt
23
23
  - README.md
24
24
  - Rakefile
25
- - codecov_opentelem.gemspec
26
25
  - lib/codecov_opentelem.rb
27
26
  - lib/codecov_opentelem/coverage_exporter.rb
28
27
  - lib/codecov_opentelem/version.rb
@@ -31,8 +30,8 @@ licenses:
31
30
  - MIT
32
31
  metadata:
33
32
  homepage_uri: https://github.com/codecov/opentelem-ruby
34
- source_code_uri: https://github.com/codecov/opentelem-ruby.
35
- changelog_uri: https://github.com/codecov/opentelem-ruby/blob/master/CHANGELOG.md
33
+ source_code_uri: https://github.com/codecov/opentelem-ruby
34
+ changelog_uri: https://github.com/codecov/opentelem-ruby/releases
36
35
  post_install_message:
37
36
  rdoc_options: []
38
37
  require_paths:
@@ -48,7 +47,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
48
47
  - !ruby/object:Gem::Version
49
48
  version: '0'
50
49
  requirements: []
51
- rubygems_version: 3.3.13
50
+ rubygems_version: 3.1.2
52
51
  signing_key:
53
52
  specification_version: 4
54
53
  summary: Ruby Opentelemtry
@@ -1,39 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "lib/codecov_opentelem/version"
4
-
5
- Gem::Specification.new do |spec|
6
- spec.name = "codecov_opentelem"
7
- spec.version = CodecovOpentelem::VERSION
8
- spec.authors = ["Ahmed-Elghrbawy"]
9
- spec.email = ["hello@codecov.io"]
10
-
11
- spec.summary = "Ruby Opentelemtry"
12
- # spec.description = "TODO: Write a longer description or delete this line."
13
- spec.homepage = "https://github.com/codecov/opentelem-ruby"
14
- spec.license = "MIT"
15
- spec.required_ruby_version = ">= 2.6.0"
16
-
17
- # spec.metadata["allowed_push_host"] = "TODO: Set to your gem server 'https://example.com'"
18
-
19
- spec.metadata["homepage_uri"] = spec.homepage
20
- spec.metadata["source_code_uri"] = "https://github.com/codecov/opentelem-ruby."
21
- spec.metadata["changelog_uri"] = "https://github.com/codecov/opentelem-ruby/blob/master/CHANGELOG.md"
22
-
23
- # Specify which files should be added to the gem when it is released.
24
- # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
25
- spec.files = Dir.chdir(__dir__) do
26
- `git ls-files -z`.split("\x0").reject do |f|
27
- (f == __FILE__) || f.match(%r{\A(?:(?:bin|test|spec|features)/|\.(?:git|travis|circleci)|appveyor)})
28
- end
29
- end
30
- spec.bindir = "exe"
31
- spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
32
- spec.require_paths = ["lib"]
33
-
34
- # Uncomment to register a new dependency of your gem
35
- # spec.add_dependency "example-gem", "~> 1.0"
36
-
37
- # For more information and examples about making a new gem, check out our
38
- # guide at: https://bundler.io/guides/creating_gem.html
39
- end