calling add user service

This commit is contained in:
Artur Gurgul1 2025-08-07 16:29:11 +02:00
parent 29a9b08573
commit 055744e7f7
4 changed files with 38 additions and 5 deletions

View file

@ -1,5 +1,5 @@
[Unit] [Unit]
Description=PostgreSQL <%= version %> database server Description=PostgreSQL <%= version %>
After=network.target After=network.target
[Service] [Service]

View file

@ -26,6 +26,28 @@ module Execute
end end
end end
class UserInstallContext
attr_accessor :user_name, :type, :can_login
def initialize(user_name, type = :user, can_login = nil)
@user_name = user_name
@type = type
if can_login == nil
case type
when :service
@can_login = false
when :user
@can_login = true
else
raise "Can not create user for type: #{type}"
end
else
@can_login = can_login
end
end
end
def dependency(name) def dependency(name)
puts "Checking for #{name}..." puts "Checking for #{name}..."
@ -91,8 +113,12 @@ module Execute
end end
end end
def user(name) def user(*users)
puts "Creating user: #{name}" require 'user'
users.each do |name|
context = UserInstallContext.new(name, :user)
User.install(context)
end
end end
def install(*packages) def install(*packages)

View file

@ -1,6 +1,8 @@
module Setup module Setup
require_relative '../templates' require_relative '../templates'
require_relative "../user"
require_relative "../execute"
# dat execute postgres # dat execute postgres
# example.rcp # example.rcp
@ -28,8 +30,10 @@ module Setup
version: context.version, version: context.version,
database_dir: context.data_dir database_dir: context.data_dir
) )
puts service # puts service
user_context = Execute::UserInstallContext.new(context.user_name, :service)
User.install(user_context)
end end
end end
end end

View file

@ -1,5 +1,8 @@
module User module User
def self.install(context)
puts "Creating #{context.type}: #{context.user_name}"
end
end end