docked 0.1.1.alpha

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/docked.rb +23 -0
  3. metadata +43 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: b9e0e8c1e1240caf89ce53fb090f3e905a6280334470d7141a353cdd203c62ac
4
+ data.tar.gz: '0235860d0040ba769279d0ec97c44a3c965de8ad1a3d4194f83b74d3854ad0b5'
5
+ SHA512:
6
+ metadata.gz: b0866eca6b9ff98cb3c37ce325da3f6d60859b84341d2f86d636c38ad629593c50b5ddeb6f43eb0ba1de5d8d0d84bb7b4fc43b28ead4420d0aa90608b8989810
7
+ data.tar.gz: ece1c7e9e8eb660c5092c140a8711d06fdde16a4d75241e024a48d9d5f37d62077271721fc6a9ba6ac893adeed6adff9266b61e74657dd8cf8586a34c45f0fbc
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'socket'
4
+
5
+ # Docked is able to detect whether a docker is being used and then return the local addresses.
6
+ class Docked
7
+ def self.ip_addresses
8
+ return [] unless File.file?('/.dockerenv')
9
+
10
+ ip_addresses = []
11
+
12
+ Socket.ip_address_list.each do |addrinfo|
13
+ next unless addrinfo.ipv4?
14
+ next if addrinfo.ip_address == '127.0.0.1'
15
+
16
+ ip_address = IPAddr.new(addrinfo.ip_address).mask(24)
17
+
18
+ ip_addresses << ip_address
19
+ end
20
+
21
+ ip_addresses
22
+ end
23
+ end
metadata ADDED
@@ -0,0 +1,43 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: docked
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1.alpha
5
+ platform: ruby
6
+ authors:
7
+ - Pedro Paiva
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-10-31 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Simple one-liner method to get IP addresses of docker
14
+ email: pedro.v.s.paiva@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/docked.rb
20
+ homepage: https://rubygems.org/gems/docked
21
+ licenses:
22
+ - MIT
23
+ metadata: {}
24
+ post_install_message:
25
+ rdoc_options: []
26
+ require_paths:
27
+ - lib
28
+ required_ruby_version: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 2.4.0
33
+ required_rubygems_version: !ruby/object:Gem::Requirement
34
+ requirements:
35
+ - - ">"
36
+ - !ruby/object:Gem::Version
37
+ version: 1.3.1
38
+ requirements: []
39
+ rubygems_version: 3.1.4
40
+ signing_key:
41
+ specification_version: 4
42
+ summary: Get IP addresses of docker
43
+ test_files: []