puppet-community-mvp 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f77ade2721786fdca7fd96827ca510e0404a02a8
4
- data.tar.gz: ad32f5a43392ed7f23d49d60db3fbe308ae73e2d
3
+ metadata.gz: e45ff6e06d776fb8c3129789b4f469f25f86ea59
4
+ data.tar.gz: 640dd10a4620d77281ebb58ec4d097dc40b9bfbd
5
5
  SHA512:
6
- metadata.gz: be5282a77000b433c3aedd58ddfd29ea594df089007e38e74cb8b18c5c6b576ff048b218ec30cb9f60b8291faa1b62525f8d2c79694444bb3f95df2ede98efc0
7
- data.tar.gz: 94894492ffba9d187f9178a17d51e412d80dc7b3434681bf43da79f422c6bbb0ddddba7f347b49ed048e0134a72eefe5ff3d83a615d5c4402d809f3e8010c1ac
6
+ metadata.gz: 00fffd365248a810b1542eb7e4e370398330d469834a2e5cecab70f0fe370149d8bc87ac7027c9260c6a2d0a8f24a06915e5946bf5d84c5dd6c07a8e4ac95ac3
7
+ data.tar.gz: ac1e153462e94226eb56621e687667f369aa0ca35f3d34dd6e3c9096e0d7dc56dcb1f4584f0b2072cda3f47a5c5f1b2b645f106d5f314ef45fdcc3d9f6af6a25
@@ -58,7 +58,8 @@ class Mvp
58
58
  # Build a table with this schema
59
59
  # module | version | source | kind | element | count
60
60
  def table(itemized, data)
61
- modname = data['slug']
61
+ modname = data['name']
62
+ slug = data['slug']
62
63
  version = data['version']
63
64
  dependencies = data['dependencies']
64
65
 
@@ -67,11 +68,21 @@ class Mvp
67
68
  kind = kind.to_s
68
69
  kind = kind.end_with?('ses') ? kind.chomp('es') : kind.chomp('s')
69
70
  elements.map do |name, count|
70
- # TODO: this may suffer from collisions, (module foo, function foo, for example)
71
- depname = name.split('::').first
71
+ if name == modname
72
+ depname = name
73
+ else
74
+ # This relies on a little guesswork.
75
+ segments = name.split('::') # First see if its already namespaced and we can just use it
76
+ segments = name.split('_') if segments.size == 1 # If not, then maybe it follows the pattern like 'mysql_password'
77
+ depname = segments.first
78
+ end
79
+
80
+ # There's a chance of collisions here. For example, if you depended on a module
81
+ # named 'foobar-notify' and you used a 'notify' resource, then the resource would
82
+ # be improperly linked to that module. That's a pretty small edge case though.
72
83
  source = dependencies.find {|row| row.split('-').last == depname} rescue nil
73
84
 
74
- { :module => modname, :version => version, :source => source, :kind => kind, :element => name, :count => count }
85
+ { :module => slug, :version => version, :source => source, :kind => kind, :element => name, :count => count }
75
86
  end
76
87
  end.flatten(1)
77
88
  end
@@ -16,7 +16,7 @@ class Mvp
16
16
  raise "\nThere is a problem with the gCloud configuration: \n #{JSON.pretty_generate(options)}" if @dataset.nil?
17
17
 
18
18
  @itemized = @dataset.table('forge_itemized') || @dataset.create_table('forge_itemized') do |table|
19
- table.name = 'Itemied dependencies between modules'
19
+ table.name = 'Itemized dependencies between modules'
20
20
  table.description = 'A list of all types/classes/functions used by each module and where they come from'
21
21
  table.schema do |s|
22
22
  s.string "module", mode: :required
@@ -255,7 +255,7 @@ class Mvp
255
255
  end
256
256
 
257
257
  def version_itemized?(mod, version)
258
- str = "SELECT version FROM forge_itemized WHERE name = '#{mod}' UNIQUE"
258
+ str = "SELECT DISTINCT version FROM forge_itemized WHERE module = '#{mod}'"
259
259
  versions = @dataset.query(str).map {|row| row[:version] } rescue []
260
260
 
261
261
  versions.include? version
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet-community-mvp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Ford
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-26 00:00:00.000000000 Z
11
+ date: 2018-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -109,7 +109,21 @@ dependencies:
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
- name: google-cloud
112
+ name: google-cloud-bigquery
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: puppet-itemize
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
129
  - - ">="
@@ -164,7 +178,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
164
178
  version: '0'
165
179
  requirements: []
166
180
  rubyforge_project:
167
- rubygems_version: 2.6.10
181
+ rubygems_version: 2.5.2.3
168
182
  signing_key:
169
183
  specification_version: 4
170
184
  summary: Generate some stats about the Puppet Community.