Class: Golem::DB::Static
- Inherits:
-
Object
- Object
- Golem::DB::Static
- Defined in:
- lib/golem/db/static.rb
Overview
Static database for small installations. To use it, write:
Golem.configure do |cfg|
cfg.db = 'static'
Golem::DB.setup do |db|
db.add_user 'test_user'
db.add_repository 'test_repository', 'test_user'
db.add_key 'test_user', 'test_key'
end
end
Instance Method Summary (collapse)
-
- (Array) add_key(user_name, key)
Add key to database.
-
- (Array) add_repository(name, user_name)
Add repository to database.
-
- (Array) add_user(name)
Add user to database.
-
- (Static) initialize
constructor
Create database, initialize users, repositories and ssh_keys to [].
-
- (Array) repositories(opts = {})
Retrieve repositories.
-
- (Object) setup {|_self| ... }
Setup database.
-
- (Array) ssh_keys(opts = {})
Retrieve ssh keys.
-
- (Array) users(opts = {})
Retrieve users.
Constructor Details
- (Static) initialize
Create database, initialize users, repositories and ssh_keys to [].
12 13 14 |
# File 'lib/golem/db/static.rb', line 12 def initialize @users, @repositories, @ssh_keys = [], [], [] end |
Instance Method Details
- (Array) add_key(user_name, key)
Add key to database.
57 58 59 60 |
# File 'lib/golem/db/static.rb', line 57 def add_key(user_name, key) abort "Cannot add key, user not found!" unless users(:return => :array).include?(user_name) @ssh_keys << {:user_name => user_name, :key => key} end |
- (Array) add_repository(name, user_name)
Add repository to database.
48 49 50 51 |
# File 'lib/golem/db/static.rb', line 48 def add_repository(name, user_name) abort "Cannot add repository, user not found!" unless users(:return => :array).include?(user_name) @repositories << {:name => name, :user_name => user_name} end |
- (Array) add_user(name)
Add user to database.
40 41 42 |
# File 'lib/golem/db/static.rb', line 40 def add_user(name) @users << {:name => name} end |
- (Array) repositories(opts = {})
Retrieve repositories.
26 27 28 |
# File 'lib/golem/db/static.rb', line 26 def repositories(opts = {}) opts[:return] == :array ? @repositories.collect {|r| r[:name]} : @repositories end |
- (Object) setup {|_self| ... }
Setup database.
63 64 65 |
# File 'lib/golem/db/static.rb', line 63 def setup(&block) yield self end |
- (Array) ssh_keys(opts = {})
Retrieve ssh keys.
33 34 35 |
# File 'lib/golem/db/static.rb', line 33 def ssh_keys(opts = {}) opts[:return] == :array ? @ssh_keys.collect {|k| [k[:user_name], k[:key]]} : @ssh_keys end |
- (Array) users(opts = {})
Retrieve users.
19 20 21 |
# File 'lib/golem/db/static.rb', line 19 def users(opts = {}) opts[:return] == :array ? @users.collect {|u| u[:name]} : @users end |