files/gitlab-cookbooks/gitlab/libraries/account_helper.rb (62 lines of code) (raw):

# # Copyright:: Copyright (c) 2015 GitLab Inc. # License:: Apache License, Version 2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # class AccountHelper attr_reader :node def initialize(node) @node = node end def gitlab_user node['gitlab']['user']['username'] end def gitlab_group node['gitlab']['user']['group'] end def web_server_user node['gitlab']['web_server']['username'] end def web_server_group node['gitlab']['web_server']['group'] end def redis_user node['redis']['username'] end def redis_group node['redis']['group'] end def postgresql_user node['postgresql']['username'] end def postgresql_group node['postgresql']['group'] end def mattermost_user node['mattermost']['username'] end def mattermost_group node['mattermost']['group'] end def registry_user node['registry']['username'] end def registry_group node['registry']['group'] end def prometheus_user node['monitoring']['prometheus']['username'] end def prometheus_group node['monitoring']['prometheus']['group'] end def consul_user node['consul']['username'] end def consul_group node['consul']['group'] end def users %W( #{gitlab_user} #{web_server_user} #{redis_user} #{postgresql_user} #{mattermost_user} #{registry_user} #{prometheus_user} #{consul_user} ) end def groups %W( #{gitlab_group} #{web_server_group} #{redis_group} #{postgresql_group} #{mattermost_group} #{registry_group} #{consul_group} #{prometheus_group} ) end end