Sha256: 073e338a8bea01c1711d914bddc21a00407678e3772cf76dc6902eee74c6f534
Contents?: true
Size: 1.18 KB
Versions: 1
Compression:
Stored size: 1.18 KB
Contents
module Sprinkle module Installers # The user installer helps add users. You may pass flags as an option. # # == Example Usage # # package :users do # add_user 'admin', :flags => "--disabled-password" # # verify do # has_user 'admin', :in_group = "root" # end # end class User < Installer api do def add_user(username, options={}, &block) install User.new(self, username, options, &block) end end verify_api do def has_user(user, opts = {}) if opts[:in_group] @commands << "id -nG #{user} | xargs -n1 echo | grep #{opts[:in_group]}" else @commands << "id #{user}" end end end def initialize(package, username, options = {}, &block) #:nodoc: super package, options, &block @username = username end protected def install_commands #:nodoc: noninteractive = "--gecos ,,," flags = @options[:flags] || "" flags << noninteractive unless flags =~ /--gecos/ "adduser #{flags} #{@username}" end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sprinkle-0.6.0 | lib/sprinkle/installers/user.rb |