gems-validator 0.3.2 → 0.4.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: 5c72c2d22879cd9c8d66a2062c5ca188b1b47c92e7ec75fa8a3cc98c895b4f12
4
- data.tar.gz: ac70c06d03af86a323676b31fccac4d2046565209dfb285842299de9a23e96b2
3
+ metadata.gz: fd766d16712cec21ba9dbf14c12ca843d91f214b386e5708fec6d82c188d217f
4
+ data.tar.gz: 288989358252c40880b504fb9acb869e90e66ea8ee03f30b3674951dca90f718
5
5
  SHA512:
6
- metadata.gz: fbc2ae946a37031e557ac9791b87ae04fc9cec6de319cac856e4fb63da0ab80906f9f31d8c74d21f1c9bd5e708a45b7a8485bef54486d7deab82b817f1cbb61c
7
- data.tar.gz: e97823d37609d686b94b37ca9ff8dadad5a59e014ef71d6281052e39df41d271166dd2f7e75fff64724664500e26cf562eb34f51ba5c01069c3f5b308a3a8ca4
6
+ metadata.gz: 12a59226c122804fc1d95d15d56463ffff1d1dc64356cc1956fbf80da89d15732644743f023f5b789cb48958761dd0f6c28293de187ef4eb1241fa0b44339f86
7
+ data.tar.gz: b2d33a09a58ea98a258964aab01dbab3db7b3b83d7d8cf18bbc6ac1390727f06b3f3d552914e757a79d1b6dbdc3424d8297f66cb76e06b69529de62d9990e361
data/README.md ADDED
@@ -0,0 +1,25 @@
1
+ # Gems validator
2
+
3
+ Um plugin Bundle para validar gems homologadas nas aplicações do grupo EUAX.
4
+
5
+ ## 📦 **Instalação**
6
+
7
+ Execute `bundle plugin install gems-validator` para adicionar o plugin ao seu bundle.
8
+
9
+ ## 🤷‍♂️ **Como funciona?**
10
+
11
+ Após instalar o plugin ele irá rodar toda vez que `bundle install` for executado. O plugin utiliza da [API de gems homologadas](https://github.com/Artia/euax-gems)
12
+ para validar as gems de um produto, verificando se elas podem ou não serem instaladas. Ao detectar que uma gem não pode ser instalada o processo de instalação
13
+ é interrompido e uma mensagem de erro com o motivo da falha é apresentada no terminal.
14
+
15
+ ## 🤝 **Contribuindo**
16
+
17
+ Todo tipo de contribuição é muito bem vinda e apreciada!
18
+
19
+ - ⭐️ Dê uma estrela ao projeto
20
+ - 🐛 Encontre e reporte issues
21
+ - 📥 Envie PRs e ajude a resolver issues e adição de features
22
+
23
+ ---
24
+
25
+ Feito com ❤️ por **Henrique Schmeller**.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module GemsValidator
2
4
  class FormatError < Bundler::InstallError
3
5
  def initialize(gem:, message:)
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module GemsValidator
2
4
  class GemsService
3
5
  def initialize()
4
- @access_token = 'eG5hJT9SZUQyYXpyLUBUX2pqJVU0eiRmVjl5RisjdUV0WmY4LTRWanZ2Rz1VVyo3VHlYXndCbms4V3dkLU1MWA=='
6
+ @access_token = get_token
5
7
  end
6
8
 
7
9
  # Response:
@@ -18,25 +20,35 @@ module GemsValidator
18
20
  # version?: String
19
21
  # }
20
22
  # },
21
- # gems_pending_approval: {
23
+ # pending_gems: {
22
24
  # [name]: {
23
25
  # requested_at: Date
24
26
  # }
25
27
  # }
26
28
  # }
27
29
  def get_gems()
28
- response = request
29
- JSON.parse(response.body)["data"]
30
+ JSON.parse(gems_formatted_request.body)["data"]
30
31
  end
31
32
 
32
33
  private
33
- def request
34
+ def get_token
35
+ uri = URI('http://ec2-54-173-249-114.compute-1.amazonaws.com:3333/sessions/token')
36
+ request = Net::HTTP::Post.new(uri)
37
+ request.body = { username: 'developers', password: 'devs@euax' }.to_json
38
+ request['Content-Type'] = 'application/json'
39
+
40
+ Net::HTTP.start(uri.host, uri.port) do |http|
41
+ response = http.request request
42
+ response.header['access_token']
43
+ end
44
+ end
45
+
46
+ def gems_formatted_request
34
47
  uri = URI('http://ec2-54-173-249-114.compute-1.amazonaws.com:3333/gems/formatted')
35
- # Net::HTTP.get_response(uri, { "Authorization" => "Bearer #{@access_token}" })
36
48
  Net::HTTP.start(uri.host, uri.port) do |http|
37
49
  request = Net::HTTP::Get.new uri
38
- request["Authorization"] = "Bearer #{@access_token}"
39
- response = http.request request
50
+ request["Authorization"] = @access_token
51
+ http.request request
40
52
  end
41
53
  end
42
54
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GemsValidator
4
- VERSION = "0.3.2"
4
+ VERSION = "0.4.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gems-validator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - henriquesml
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-06-16 00:00:00.000000000 Z
11
+ date: 2022-06-21 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: gems-validator
14
14
  email:
@@ -21,6 +21,7 @@ files:
21
21
  - Dockerfile
22
22
  - Gemfile
23
23
  - Makefile
24
+ - README.md
24
25
  - Rakefile
25
26
  - docker-compose.yml
26
27
  - lib/gems-validator.rb
@@ -47,7 +48,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
47
48
  - !ruby/object:Gem::Version
48
49
  version: '0'
49
50
  requirements: []
50
- rubygems_version: 3.0.3
51
+ rubygems_version: 3.3.7
51
52
  signing_key:
52
53
  specification_version: 4
53
54
  summary: gems-validator