hieraviz 0.0.2 → 0.1.0

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: 7943ca0a1cce06662064ff153e6574e667a9aebe
4
- data.tar.gz: de8240ae22c0afff43b068cf4af11fc84a3247a9
3
+ metadata.gz: 49399d4e687c122f2333b3a02f475d5ec8d769bd
4
+ data.tar.gz: a376b1c4332bac9deddd0d60491b3ac4d4627236
5
5
  SHA512:
6
- metadata.gz: 7e5839350259c94f8ed16c922570e507647bc89d0cc6dd478a37763ed5bdb2601317613a13244295e8f876fa7123e0a07e6f8c55e7164e2139cacea54dda6fc7
7
- data.tar.gz: fc6cd1e5c0a66630be9b33268234e5ee234778e35c6b15aba708e6d6061b5b0e8fab71203a6a0f93fa0b5e6483b8b81e3acce86de3f2fcd40242bfefe8ea4027
6
+ metadata.gz: 03e9edf186cd492acd366519a017fcf998d47e1a2ee083ec3344060afec06ae90134aedf364a47eff989120dfe4f48d938e252464104ec8b91a1a8c5825b1ae5
7
+ data.tar.gz: 09845cede54c3d470d4482e42be46e9efd8aaba6a9b884c219fb6bcab444b227e7f71dc32e09d8d38da163b558c4c2b63dba4267dd914d61437287e500649164
data/CHANGELOG.md CHANGED
@@ -1,6 +1,9 @@
1
1
  Hieraviz Changelog
2
2
  ========================
3
3
 
4
+ ### v0.1.0 - 2016-01-20
5
+ - extend test coverage
6
+
4
7
  ### v0.0.2 - 2016-01-18
5
8
  - add oauth2 auth method against gitlab server
6
9
  - add session persistence on disk
data/app/apiv1.rb CHANGED
@@ -31,10 +31,6 @@ module HieravizApp
31
31
  end
32
32
  end
33
33
 
34
- get '/test' do
35
- json data: Time.new
36
- end
37
-
38
34
  get '/nodes' do
39
35
  check_authorization
40
36
  json Hieracles::Registry.nodes(settings.config)
@@ -69,12 +65,12 @@ module HieravizApp
69
65
  json Hieracles::Registry.farms(settings.config)
70
66
  end
71
67
 
72
- get '/farm/:n' do |farm|
73
- check_authorization
74
- req = Hieracles::Puppetdb::Request.new(settings.configdata['puppetdb'])
75
- farm_nodes = req.facts('farm', farm)
76
- json farm_nodes.data
77
- end
68
+ # get '/farm/:n' do |farm|
69
+ # check_authorization
70
+ # req = Hieracles::Puppetdb::Request.new(settings.configdata['puppetdb'])
71
+ # farm_nodes = req.facts('farm', farm)
72
+ # json farm_nodes.data
73
+ # end
78
74
 
79
75
  get '/not_logged' do
80
76
  json({ error: "Not connected." })
data/app/main.rb CHANGED
@@ -1,4 +1,3 @@
1
- require 'hieracles'
2
1
  require 'hieraviz'
3
2
 
4
3
  require File.expand_path '../web.rb', __FILE__
data/app/web.rb CHANGED
@@ -41,8 +41,10 @@ module HieravizApp
41
41
  end
42
42
 
43
43
  helpers do
44
+ def get_username
45
+ settings.configdata['http_auth']['username']
46
+ end
44
47
  def check_authorization
45
- set :username, settings.configdata['http_auth']['username']
46
48
  true
47
49
  end
48
50
  end
@@ -51,35 +53,37 @@ module HieravizApp
51
53
 
52
54
  set :oauth, Hieraviz::AuthGitlab.new(settings.configdata['gitlab_auth'])
53
55
 
54
- def get_username
55
- if session['access_token']
56
- session_info = Hieraviz::Store.get(session['access_token'], settings.configdata['session_renew'])
57
- if session_info
58
- session_info['username']
59
- else
60
- ''
56
+ helpers do
57
+ def get_username
58
+ if session['access_token']
59
+ session_info = Hieraviz::Store.get(session['access_token'], settings.configdata['session_renew'])
60
+ if session_info
61
+ session_info['username']
62
+ else
63
+ ''
64
+ end
61
65
  end
62
66
  end
63
- end
64
67
 
65
- def check_authorization
66
- if !session['access_token']
67
- redirect settings.oauth.login_url(request)
68
- else
69
- session_info = Hieraviz::Store.get(session['access_token'], settings.configdata['session_renew'])
70
- if !session_info
71
- if !settings.oauth.authorized?(session['access_token'])
72
- flash[:fatal] = "Sorry you are not authorized to read puppet repo on gitlab."
73
- redirect '/'
74
- else
75
- Hieraviz::Store.set session['access_token'], settings.oauth.user_info(session['access_token'])
76
- session_info = Hieraviz::Store.get(session['access_token'], settings.configdata['session_renew'])
68
+ def check_authorization
69
+ if !session['access_token']
70
+ redirect settings.oauth.login_url(request)
71
+ else
72
+ session_info = Hieraviz::Store.get(session['access_token'], settings.configdata['session_renew'])
73
+ if !session_info
74
+ if !settings.oauth.authorized?(session['access_token'])
75
+ flash[:fatal] = "Sorry you are not authorized to read puppet repo on gitlab."
76
+ redirect '/'
77
+ else
78
+ Hieraviz::Store.set session['access_token'], settings.oauth.user_info(session['access_token'])
79
+ session_info = Hieraviz::Store.get(session['access_token'], settings.configdata['session_renew'])
80
+ end
77
81
  end
82
+ session_info['username']
78
83
  end
79
- session_info['username']
80
84
  end
81
85
  end
82
-
86
+
83
87
  get '/login' do
84
88
  redirect settings.oauth.login_url(request)
85
89
  end
@@ -128,27 +132,30 @@ module HieravizApp
128
132
  erb :resources
129
133
  end
130
134
 
131
- get '/store' do
132
- # Hieraviz::Store.set 'woot', 'nada'
133
- erb :store
134
- end
135
-
136
- get '/user' do
137
- if session[:access_token]
138
- @data = settings.oauth.user_info(session[:access_token])
139
- else
140
- @data = 'nada'
141
- end
142
- erb :data
143
- end
135
+ # debug pages --------------------
136
+ # get '/store' do
137
+ # # Hieraviz::Store.set 'woot', 'nada'
138
+ # erb :store
139
+ # end
140
+
141
+ # get '/user' do
142
+ # if session[:access_token]
143
+ # @data = settings.oauth.user_info(session[:access_token])
144
+ # else
145
+ # @data = 'nada'
146
+ # end
147
+ # erb :data
148
+ # end
149
+
150
+ # error 401 do
151
+ # 'Access forbidden'
152
+ # end
153
+ # debug pages --------------------
144
154
 
145
155
  not_found do
146
156
  erb :not_found, layout: :_layout
147
157
  end
148
158
 
149
- error 401 do
150
- 'Access forbidden'
151
- end
152
159
 
153
160
  end
154
161
  end
@@ -13,28 +13,28 @@ module Hieraviz
13
13
  end
14
14
 
15
15
  def access_token(request, code)
16
- @@client.auth_code.get_token(code, :redirect_uri => redirect_uri(request))
16
+ @@client.auth_code.get_token(code, :redirect_uri => redirect_uri(request.url))
17
17
  end
18
18
 
19
19
  def get_response(url, token)
20
- access_token = OAuth2::AccessToken.new(@@client, token)
20
+ a_token = OAuth2::AccessToken.new(@@client, token)
21
21
  begin
22
- JSON.parse(access_token.get(url).body)
22
+ JSON.parse(a_token.get(url).body)
23
23
  rescue Exception => e
24
24
  { 'error' => JSON.parse(e.message.split(/\n/)[1])['message'] }
25
25
  end
26
26
  end
27
27
 
28
-
29
- def redirect_uri(request)
30
- uri = URI.parse(request.url)
28
+ def redirect_uri(url)
29
+ uri = URI.parse(url)
31
30
  uri.path = '/logged-in'
32
31
  uri.query = nil
32
+ uri.fragment = nil
33
33
  uri.to_s
34
34
  end
35
35
 
36
36
  def login_url(request)
37
- @@client.auth_code.authorize_url(:redirect_uri => redirect_uri(request))
37
+ @@client.auth_code.authorize_url(:redirect_uri => redirect_uri(request.url))
38
38
  end
39
39
 
40
40
  def authorized?(token)
data/lib/hieraviz.rb CHANGED
@@ -1,3 +1,4 @@
1
+ require 'hieracles'
1
2
  require "hieraviz/version"
2
3
  require "hieraviz/config"
3
4
  require "hieraviz/store"
@@ -3,12 +3,180 @@ require 'sinatra_helper'
3
3
 
4
4
  describe HieravizApp::ApiV1 do
5
5
 
6
- context "without any auth" do
7
- context "when GET /v1/nodes" do
8
- it "replies error" do
6
+ context "page not found" do
7
+ describe "GET /v1/blahblah" do
8
+ let(:expected) { { 'error' => "data not found" } }
9
+ before do
10
+ get '/blahblah'
11
+ end
12
+ it { expect(last_response).not_to be_ok }
13
+ it { expect(JSON.parse last_response.body).to eq expected }
14
+ end
15
+ end
16
+
17
+ context "when no creds" do
18
+ describe "GET /v1/nodes" do
19
+ let(:expected) { 'http://example.org/v1/not_logged' }
20
+ before do
9
21
  get '/nodes'
10
- expect(last_response).not_to be_ok
11
22
  end
23
+ it { expect(last_response).not_to be_ok }
24
+ it { expect(last_response.header['Location']).to eq expected }
25
+ end
26
+ describe 'GET /v1/not_logged' do
27
+ let(:expected) { { 'error' => "Not connected." } }
28
+ before do
29
+ get '/not_logged'
30
+ end
31
+ it { expect(last_response).to be_ok }
32
+ it { expect(JSON.parse last_response.body).to eq expected }
33
+ end
34
+ end
35
+
36
+ context "with creds but no perms" do
37
+ describe "GET /v1/nodes" do
38
+ let(:expected) { 'http://example.org/v1/unauthorized' }
39
+ before do
40
+ current_session.rack_session[:access_token] = 'sada'
41
+ allow(Hieraviz::Store).
42
+ to receive(:get).
43
+ with('sada', 3600).
44
+ and_return(false)
45
+ get '/nodes'
46
+ end
47
+ it { expect(last_response).not_to be_ok }
48
+ it { expect(last_response.header['Location']).to eq expected }
49
+ end
50
+ describe 'GET /v1/unauthorized' do
51
+ let(:expected) { { 'error' => "Unauthorized" } }
52
+ before do
53
+ get '/unauthorized'
54
+ end
55
+ it { expect(last_response).to be_ok }
56
+ it { expect(JSON.parse last_response.body).to eq expected }
57
+ end
58
+ end
59
+
60
+ context "with proper creds" do
61
+ before do
62
+ current_session.rack_session[:access_token] = 'sada'
63
+ allow(Hieraviz::Store).
64
+ to receive(:get).
65
+ with('sada', 3600).
66
+ and_return({})
67
+ end
68
+ describe "GET /v1/nodes" do
69
+ let(:expected) { ['node1.example.com'] }
70
+ before do
71
+ get '/nodes'
72
+ end
73
+ it { expect(last_response).to be_ok }
74
+ it { expect(JSON.parse last_response.body).to eq expected }
75
+ end
76
+ describe "GET /v1/node/node1.example.com/info" do
77
+ let(:expected) {
78
+ {
79
+ 'classes' => ['farm1'],
80
+ 'country' => 'fr',
81
+ 'datacenter' => 'equinix',
82
+ 'farm' => 'dev',
83
+ 'fqdn' => 'node1.example.com'
84
+ }
85
+ }
86
+ before do
87
+ get '/node/node1.example.com/info'
88
+ end
89
+ it { expect(last_response).to be_ok }
90
+ it { expect(JSON.parse last_response.body).to eq expected }
91
+ end
92
+ describe "GET /v1/node/node1.example.com/params" do
93
+ let(:expected) {
94
+ {
95
+ "param1.subparam1" => {
96
+ "value" => "value1",
97
+ "file" => "params/nodes/node1.example.com.yaml",
98
+ "overriden" => false,
99
+ "found_in" => [
100
+ {
101
+ "value"=>"value1",
102
+ "file"=>"params/nodes/node1.example.com.yaml"
103
+ }
104
+ ]
105
+ }
106
+ }
107
+ }
108
+ before do
109
+ get '/node/node1.example.com/params'
110
+ end
111
+ it { expect(last_response).to be_ok }
112
+ it { expect(JSON.parse last_response.body).to eq expected }
113
+ end
114
+ describe "GET /v1/node/node1.example.com" do
115
+ let(:expected) {
116
+ {
117
+ "param1.subparam1" => {
118
+ "value" => "value1",
119
+ "file" => "params/nodes/node1.example.com.yaml",
120
+ "overriden" => false,
121
+ "found_in" => [
122
+ {
123
+ "value"=>"value1",
124
+ "file"=>"params/nodes/node1.example.com.yaml"
125
+ }
126
+ ]
127
+ }
128
+ }
129
+ }
130
+ before do
131
+ get '/node/node1.example.com'
132
+ end
133
+ it { expect(last_response).to be_ok }
134
+ it { expect(JSON.parse last_response.body).to eq expected }
135
+ end
136
+ describe "GET /v1/node/node1.example.com/allparams" do
137
+ let(:expected) {
138
+ {
139
+ "param1.subparam1" => {
140
+ "value" => "value1",
141
+ "file" => "-",
142
+ "overriden" => true,
143
+ "found_in" => [
144
+ {
145
+ "value" => "value1",
146
+ "file" => "params/nodes/node1.example.com.yaml"
147
+ },
148
+ {
149
+ "value" => "value common",
150
+ "file"=>"params/common/common.yaml"
151
+ }
152
+ ]
153
+ },
154
+ "param2.subparam2" => {
155
+ "value" => "another value",
156
+ "file"=>"params/common/common.yaml",
157
+ "overriden" => false,
158
+ "found_in" => [
159
+ {
160
+ "value" => "another value",
161
+ "file"=>"params/common/common.yaml"
162
+ }
163
+ ]
164
+ }
165
+ }
166
+ }
167
+ before do
168
+ get '/node/node1.example.com/allparams'
169
+ end
170
+ it { expect(last_response).to be_ok }
171
+ it { expect(JSON.parse last_response.body).to eq expected }
172
+ end
173
+ describe "GET /v1/farms" do
174
+ let(:expected) { ['farm1'] }
175
+ before do
176
+ get '/farms'
177
+ end
178
+ it { expect(last_response).to be_ok }
179
+ it { expect(JSON.parse last_response.body).to eq expected }
12
180
  end
13
181
  end
14
182
 
data/spec/app/web_spec.rb CHANGED
@@ -3,11 +3,48 @@ require 'sinatra_helper'
3
3
 
4
4
  describe HieravizApp::Web do
5
5
 
6
- context "when GET /" do
7
- it "replies 401" do
8
- get '/'
9
- expect(last_response.status).to be 401
6
+ context "without creds" do
7
+ describe "GET /" do
8
+ before { get '/' }
9
+ it { expect(last_response.status).to eq 401 }
10
10
  end
11
11
  end
12
12
 
13
+ context "with proper creds" do
14
+ before do
15
+ basic_authorize 'toto', 'toto'
16
+ end
17
+ describe "GET /" do
18
+ before { get '/' }
19
+ it { expect(last_response.status).to eq 200 }
20
+ it { expect(last_response.body).to include 'Welcome to hieraviz' }
21
+ end
22
+ describe "GET /logout" do
23
+ before { get '/logout' }
24
+ it { expect(last_response.body).to include 'Please login again' }
25
+ end
26
+ describe "GET /nodes" do
27
+ before { get '/nodes' }
28
+ it { expect(last_response.body).to include 'node1.example.com' }
29
+ end
30
+ describe "GET /farms" do
31
+ before { get '/farms' }
32
+ it { expect(last_response.body).to include 'farm1' }
33
+ end
34
+ describe "GET /modules" do
35
+ before { get '/modules' }
36
+ it { expect(last_response.body).to include 'Work In Progress' }
37
+ end
38
+ describe "GET /resources" do
39
+ before { get '/resources' }
40
+ it { expect(last_response.body).to include 'Work In Progress' }
41
+ end
42
+ describe "GET /toto" do
43
+ before { get '/toto' }
44
+ it { expect(last_response.status).to eq 404 }
45
+ it { expect(last_response.body).to include 'Page not found' }
46
+ end
47
+ end
48
+
49
+
13
50
  end
@@ -1,10 +1,13 @@
1
1
  ---
2
+ app_name: HieraViz
2
3
  basepath: "spec/files/puppet"
3
4
  classpath: "farm_modules/%s/manifests/init.pp"
4
5
  hierafile: "hiera.yml"
5
6
  session_seed: "toto"
6
7
  tmpdir: "spec/files/tmp"
8
+ session_renew: 3600
7
9
  usedb: false
10
+ debug: false
8
11
  puppetdb:
9
12
  usessl: false
10
13
  host: puppetdb.example.com
@@ -0,0 +1,25 @@
1
+ ---
2
+ app_name: HieraViz
3
+ basepath: "spec/files/puppet"
4
+ classpath: "farm_modules/%s/manifests/init.pp"
5
+ hierafile: "hiera.yml"
6
+ session_seed: "toto"
7
+ tmpdir: "spec/files/tmp"
8
+ session_renew: 3600
9
+ usedb: false
10
+ debug: false
11
+ puppetdb:
12
+ usessl: false
13
+ host: puppetdb.example.com
14
+ port: 8080
15
+ auth_method: gitlab
16
+ http_auth:
17
+ username: 'toto'
18
+ password: 'toto'
19
+ gitlab_auth:
20
+ host: https://gitlab.example.com
21
+ application_id: xxxid
22
+ secret: xxxsecret
23
+ resource_required: '/api/v3/projects/group%2Fpuppet'
24
+ required_response_key: 'id'
25
+ required_response_value: '42'
@@ -0,0 +1,4 @@
1
+ param1:
2
+ subparam1: value common
3
+ param2:
4
+ subparam2: another value
@@ -1,26 +1,72 @@
1
1
  require 'spec_helper'
2
+ require 'oauth2_helper'
2
3
 
3
4
  describe Hieraviz::AuthGitlab do
4
5
 
6
+ let(:oauth2) { Hieraviz::AuthGitlab.new({}) }
7
+ before do
8
+ allow(OAuth2::Client).
9
+ to receive(:new).
10
+ and_return(Oauth2Mock.new)
11
+ end
12
+
5
13
  describe '.new' do
14
+ it { expect(oauth2).to be_a Hieraviz::AuthGitlab }
6
15
  end
7
16
 
8
17
  describe '.access_token' do
18
+ it { expect(oauth2.access_token(RequestMock.new, 'code')).to eq '123456' }
9
19
  end
10
20
 
11
21
  describe '.get_response' do
22
+ let(:url) { 'http://example.com/something' }
23
+ let(:token) { '123456' }
24
+ let(:urlfail) { 'fail' }
25
+ let(:expected) {
26
+ {
27
+ "somekey" => "somevalue"
28
+ }
29
+ }
30
+ let(:expectedfail) {
31
+ {
32
+ "error" => "message"
33
+ }
34
+ }
35
+ before do
36
+ allow(OAuth2::AccessToken).
37
+ to receive(:new).
38
+ and_return(AccessTokenMock.new)
39
+ end
40
+ context "when there is an error" do
41
+ it { expect(oauth2.get_response(urlfail, token)).to eq expectedfail }
42
+ end
43
+ context "when everything is fine" do
44
+ it { expect(oauth2.get_response(url, token)).to eq expected }
45
+ end
12
46
  end
13
47
 
14
48
  describe '.redirect_uri' do
49
+ let(:url) { 'http://example.com/something?var=value#hash' }
50
+ let(:expected) { 'http://example.com/logged-in' }
51
+ it { expect(oauth2.redirect_uri(url)).to eq expected }
15
52
  end
16
53
 
17
54
  describe '.login_url' do
55
+ it { expect(oauth2.login_url(RequestMock.new)).to eq 'authorize url' }
18
56
  end
19
57
 
20
58
  describe '.authorized?' do
21
59
  end
22
60
 
23
61
  describe '.user_info' do
62
+ let(:token) { '123456' }
63
+ let(:expected) { { "somekey" => "somevalue" } }
64
+ before do
65
+ allow(OAuth2::AccessToken).
66
+ to receive(:new).
67
+ and_return(AccessTokenMock.new)
68
+ end
69
+ it { expect(oauth2.user_info(token)).to eq expected }
24
70
  end
25
71
 
26
72
  end
@@ -2,6 +2,10 @@ require 'spec_helper'
2
2
 
3
3
  describe Hieraviz::Config do
4
4
 
5
+ before do
6
+ ENV['HIERAVIZ_CONFIG_FILE'] = File.expand_path '../../files/config.yml', __FILE__
7
+ end
8
+
5
9
  describe '.load' do
6
10
  let(:expected) { "spec/files/puppet" }
7
11
  it { expect(Hieraviz::Config.load['basepath']).to eq expected }
@@ -0,0 +1,31 @@
1
+ class AuthCodeMock
2
+ def authorize_url(args)
3
+ 'authorize url'
4
+ end
5
+ def get_token(code, args)
6
+ '123456'
7
+ end
8
+ end
9
+
10
+ class RequestMock
11
+ def body
12
+ '{"somekey":"somevalue"}'
13
+ end
14
+ def url
15
+ 'http://example.com'
16
+ end
17
+ end
18
+
19
+ class AccessTokenMock
20
+ def get(url)
21
+ raise "\n{\"message\":\"message\"}" if url == 'fail'
22
+ RequestMock.new
23
+ end
24
+ end
25
+
26
+ class Oauth2Mock
27
+ attr_reader :auth_code
28
+ def initialize(*args)
29
+ @auth_code = AuthCodeMock.new
30
+ end
31
+ end
@@ -1,3 +1,5 @@
1
+ ENV['HIERAVIZ_CONFIG_FILE'] = File.expand_path '../files/config.yml', __FILE__
2
+
1
3
  require File.expand_path '../../app/main.rb', __FILE__
2
4
 
3
5
  module RSpecMixin
data/spec/spec_helper.rb CHANGED
@@ -23,7 +23,7 @@ require 'rack/test'
23
23
  require 'rspec'
24
24
 
25
25
  ENV['RACK_ENV'] = 'test'
26
- ENV['HIERAVIZ_CONFIG_FILE'] = File.expand_path '../files/config.yml', __FILE__
26
+ # ENV['HIERAVIZ_CONFIG_FILE'] = File.expand_path '../files/config.yml', __FILE__
27
27
 
28
28
  require 'hieraviz'
29
29
 
@@ -33,3 +33,20 @@ RSpec.configure do |config|
33
33
  c.syntax = :expect
34
34
  end
35
35
  end
36
+
37
+ module Rack
38
+ module Test
39
+ class Session
40
+ alias_method :old_env_for, :env_for
41
+ def rack_session
42
+ @rack_session ||= {}
43
+ end
44
+ def rack_session=(hash)
45
+ @rack_session = hash
46
+ end
47
+ def env_for(path, env)
48
+ old_env_for(path, env).merge({'rack.session' => rack_session})
49
+ end
50
+ end
51
+ end
52
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hieraviz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - mose
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-18 00:00:00.000000000 Z
11
+ date: 2016-01-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dotenv
@@ -255,16 +255,18 @@ files:
255
255
  - spec/app/apiv1_spec.rb
256
256
  - spec/app/web_spec.rb
257
257
  - spec/files/config.yml
258
+ - spec/files/config_gitlab.yml
258
259
  - spec/files/hiera.yml
259
260
  - spec/files/puppet/enc/node1.example.com.yaml
260
261
  - spec/files/puppet/farm_modules/farm1/manifests/init.pp
261
262
  - spec/files/puppet/hiera.yml
262
263
  - spec/files/puppet/modules/module1/init.pp
263
- - spec/files/puppet/params/common/common.yml
264
+ - spec/files/puppet/params/common/common.yaml
264
265
  - spec/files/puppet/params/nodes/node1.example.com.yaml
265
266
  - spec/lib/auth_gitlab_spec.rb
266
267
  - spec/lib/config_spec.rb
267
268
  - spec/lib/store_spec.rb
269
+ - spec/oauth2_helper.rb
268
270
  - spec/sinatra_helper.rb
269
271
  - spec/spec_helper.rb
270
272
  homepage: https://github.com/Gandi/hieraviz
@@ -293,12 +295,14 @@ signing_key:
293
295
  specification_version: 4
294
296
  summary: Web and API server for accessing Puppet dev and prod data.
295
297
  test_files:
298
+ - spec/oauth2_helper.rb
296
299
  - spec/spec_helper.rb
297
300
  - spec/app/apiv1_spec.rb
298
301
  - spec/app/web_spec.rb
302
+ - spec/files/config_gitlab.yml
299
303
  - spec/files/hiera.yml
300
304
  - spec/files/config.yml
301
- - spec/files/puppet/params/common/common.yml
305
+ - spec/files/puppet/params/common/common.yaml
302
306
  - spec/files/puppet/params/nodes/node1.example.com.yaml
303
307
  - spec/files/puppet/enc/node1.example.com.yaml
304
308
  - spec/files/puppet/farm_modules/farm1/manifests/init.pp
@@ -1,2 +0,0 @@
1
- param1:
2
- subparam1: value common