Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,6 @@ Gemfile.lock
.bundle/
spec/fixtures/
.yardoc
vendor/
.ruby-version
*.swp
4 changes: 4 additions & 0 deletions CHANGELOG.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
v0.1.0
* BREAKING CHANGE: Move to the v2 PE RBAC API. (j0sh3rs)
* Add support for optional ldap validation and Display Name (j0sh3rs)

v0.0.10
* Add support for user names instead of just UUIDs (dylanratcliffe)

Expand Down
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,10 @@ rbac_role { 'Viewers':
}

rbac_group { 'admins':
ensure => 'present',
roles => ['Administrators'],
ensure => 'present',
roles => ['Administrators'],
display_name => 'Global Admins',
validate => false
}

```
Expand Down
2 changes: 1 addition & 1 deletion lib/puppet/provider/rbac_api.rb
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def self.build_auth(uri)
https
end

def self.make_uri(path, prefix = '/rbac-api/v1')
def self.make_uri(path, prefix = '/rbac-api/v2')
uri = URI.parse("https://#{@config['server']}:#{@config['port']}#{prefix}#{path}")
uri
end
Expand Down
6 changes: 4 additions & 2 deletions lib/puppet/provider/rbac_group/ruby.rb
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,10 @@ def create
role_ids = resource['roles'].map { |name| $roles.key(name) }

group = {
'login' => resource[:name],
'role_ids' => role_ids,
'login' => resource[:name],
'role_ids' => role_ids,
'display_name' => display_name || resource[:name]
'validate' => validate || false,
}
Puppet::Provider::Rbac_api::post_response('/groups', group)

Expand Down
8 changes: 8 additions & 0 deletions lib/puppet/type/rbac_group.rb
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,12 @@ def insync?(is)
desc 'The read-only ID of the group'
end

newproperty(:display_name) do
desc '[Optional] The Display Name to show in PE Console. Default to role-name'
end

newproperty(:validate) do
desc '[Optional] Validate the rbac_group against the LDAP configuration. Default: false'
end

end
2 changes: 1 addition & 1 deletion metadata.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
}
],
"name": "pltraining-rbac",
"version": "0.0.10",
"version": "0.1.0",
"author": "pltraining",
"summary": "Exposes Puppet Enterprise Console RBAC APIs to the Puppet DSL",
"license": "Apache 2.0",
Expand Down
5 changes: 3 additions & 2 deletions tests/groups.pp
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
rbac_group { 'contractors':
ensure => 'present',
roles => ['Viewers','Operators'],
ensure => 'present',
roles => ['Viewers','Operators'],
validate => false,
}