eltesla 0.0.1 → 0.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d5a5688dc14f783b38a944c3e29088ee53343beab09b3a7dd0a4d59a54eadcc
4
- data.tar.gz: 39b89807a086e30b1b0d680975a29a3f657591e82e192b9709fc4c91388d3487
3
+ metadata.gz: 4e7520c1394694294d1fdbab00367c3dec3c01e436b3773778d6ac03fcdb5ef7
4
+ data.tar.gz: 4155476a6632f309539487b271cb149fb7642062fb2ad83f85db87a7e84f4da6
5
5
  SHA512:
6
- metadata.gz: b263b136234020ac7b6e88b7493131b2f815120409b36b1c6bd51d1d873adae29a4456e05a6e1613150fe4fbbb72d6c9f65e49be6a49e54963673749fe6a3036
7
- data.tar.gz: 1b935e5420b4720c16be076184c13a32ba98f597043bc32b9dd4fbecaf74dcd99a9670ba7765354908e86864db976380c038beec17bb346e3ff4bed2f455b91a
6
+ metadata.gz: a88845ef7751dcddef46437ee1af4e3c87c101b42dc90c8d5ed3d5c08cbeebb3a3980680c5ead1ec3afd2912b65473768a5d53130f00c0427046a4c641a48fbb
7
+ data.tar.gz: 2290df53217c14638ef852e1584e0649532d24442454682a3407c4c790c6d434b6701ddea6b8fb80d6d20e6be25e5782001f9d778e0d724682aa2557487c016f
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'net/http'
3
+ require 'httparty'
4
4
  require 'uri'
5
5
  require 'json'
6
6
 
@@ -50,14 +50,17 @@ module Eltesla
50
50
  private
51
51
 
52
52
  def http_post!
53
- http = Net::HTTP.new(ENDPOINT.host, ENDPOINT.port)
54
- request = Net::HTTP::Post.new(
55
- ENDPOINT.request_uri,
56
- { 'Content-Type': 'application/json' }
53
+ result = HTTParty.post(
54
+ 'https://eltesla.dev/metrics',
55
+ headers: {
56
+ 'Content-Type' => 'application/json',
57
+ 'X-API-Key' => Eltesla::Configuration.api_key || raise('Missing API KEY')
58
+ },
59
+ body: { results: queue.map(&:to_h) }.to_json
57
60
  )
58
- request.body = { results: queue }.to_json
61
+ return if result.success?
59
62
 
60
- http.request(request).value
63
+ raise "HTTP error: code #{result.response.code}"
61
64
  end
62
65
  end
63
66
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Eltesla
4
+ # Client for the Eltesla backend
5
+ class Configuration
6
+ class << self
7
+ attr_accessor :api_key
8
+ end
9
+ end
10
+ end
11
+
@@ -1,3 +1,3 @@
1
1
  module Eltesla
2
- VERSION = '0.0.1'
2
+ VERSION = '0.1.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eltesla
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexandre Ignjatovic
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.6'
27
+ - !ruby/object:Gem::Dependency
28
+ name: httparty
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.21'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0.21'
27
41
  description: Client for the Eltesla service, for easier refactoring
28
42
  email: alexandre.ignjatovic@gmail.com
29
43
  executables: []
@@ -32,6 +46,7 @@ extra_rdoc_files: []
32
46
  files:
33
47
  - lib/eltesla.rb
34
48
  - lib/eltesla/client.rb
49
+ - lib/eltesla/configuration.rb
35
50
  - lib/eltesla/experiment.rb
36
51
  - lib/eltesla/observation.rb
37
52
  - lib/eltesla/result.rb