Module: Buildizer::Buildizer::DockerCacheMod
- Included in:
- Buildizer::Buildizer
- Defined in:
- lib/buildizer/buildizer/docker_cache_mod.rb
Instance Method Summary collapse
- #docker_cache ⇒ Object
- #docker_cache_clear_settings? ⇒ Boolean
- #docker_cache_setup! ⇒ Object
- #docker_cache_update_settings? ⇒ Boolean
- #setup_docker_cache_email ⇒ Object
- #setup_docker_cache_org ⇒ Object
- #setup_docker_cache_password ⇒ Object
- #setup_docker_cache_repo ⇒ Object
- #setup_docker_cache_server ⇒ Object
- #setup_docker_cache_user ⇒ Object
- #user_settings_docker_cache ⇒ Object
- #user_settings_docker_cache_org(org) ⇒ Object
- #user_settings_docker_cache_repo_list(org) ⇒ Object
- #user_settings_docker_cache_user(user) ⇒ Object
- #user_settings_docker_cache_user_list(org) ⇒ Object
Instance Method Details
#docker_cache ⇒ Object
4 5 6 7 8 9 10 11 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 4 def docker_cache return unless repo = ENV['BUILDIZER_DOCKER_CACHE'] {user: ENV['BUILDIZER_DOCKER_CACHE_USERNAME'], password: ENV['BUILDIZER_DOCKER_CACHE_PASSWORD'], email: ENV['BUILDIZER_DOCKER_CACHE_EMAIL'], server: ENV['BUILDIZER_DOCKER_CACHE_SERVER'], repo: repo} end |
#docker_cache_clear_settings? ⇒ Boolean
73 74 75 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 73 def docker_cache_clear_settings? [:clear_docker_cache] end |
#docker_cache_setup! ⇒ Object
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 77 def docker_cache_setup! if docker_cache_update_settings? raise Error, error: :input_error, message: "docker cache user required" unless setup_docker_cache_user raise Error, error: :input_error, message: "bad docker cache user" if setup_docker_cache_user.empty? user_list = user_settings_docker_cache_user_list(setup_docker_cache_org) user_list.push(setup_docker_cache_user) unless user_list.include? setup_docker_cache_user raise Error, error: :input_error, message: 'docker cache email required' unless setup_docker_cache_email raise Error, error: :input_error, message: "bad docker cache email" unless setup_docker_cache_email =~ /.+@.+/ user_settings_docker_cache_user(setup_docker_cache_user)['email'] = setup_docker_cache_email user_settings_docker_cache_user(setup_docker_cache_user)['server'] = setup_docker_cache_server user_settings_docker_cache_user(setup_docker_cache_user)['password'] = setup_docker_cache_password repo_list = user_settings_docker_cache_repo_list(setup_docker_cache_org) repo_list.push(setup_docker_cache_repo) unless repo_list.include? setup_docker_cache_repo user_settings_save! end ci.docker_cache_setup! end |
#docker_cache_update_settings? ⇒ Boolean
69 70 71 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 69 def docker_cache_update_settings? not setup_docker_cache_repo.nil? end |
#setup_docker_cache_email ⇒ Object
39 40 41 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 39 def setup_docker_cache_email [:docker_cache_email] || user_settings_docker_cache_user(setup_docker_cache_user)['email'] end |
#setup_docker_cache_org ⇒ Object
17 18 19 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 17 def setup_docker_cache_org setup_docker_cache_repo.split('/').first end |
#setup_docker_cache_password ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 25 def setup_docker_cache_password @setup_docker_cache_password ||= begin settings_password = user_settings_docker_cache_user(setup_docker_cache_user)['password'] if [:reset_docker_cache_password] or settings_password.nil? secure_option( :docker_cache_password, ask: "Docker cache user '#{setup_docker_cache_user}' password:" ) else settings_password end end end |
#setup_docker_cache_repo ⇒ Object
13 14 15 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 13 def setup_docker_cache_repo [:docker_cache] end |
#setup_docker_cache_server ⇒ Object
43 44 45 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 43 def setup_docker_cache_server [:docker_cache_server] || user_settings_docker_cache_user(setup_docker_cache_user)['server'] end |
#setup_docker_cache_user ⇒ Object
21 22 23 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 21 def setup_docker_cache_user [:docker_cache_user] || user_settings_docker_cache_user_list(setup_docker_cache_org).first end |
#user_settings_docker_cache ⇒ Object
47 48 49 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 47 def user_settings_docker_cache user_settings['docker_cache'] ||= {} end |
#user_settings_docker_cache_org(org) ⇒ Object
51 52 53 54 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 51 def user_settings_docker_cache_org(org) user_settings_docker_cache['org'] ||= {} user_settings_docker_cache['org'][org] ||= {} end |
#user_settings_docker_cache_repo_list(org) ⇒ Object
65 66 67 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 65 def user_settings_docker_cache_repo_list(org) user_settings_docker_cache_org(org)['repo'] ||= [] end |
#user_settings_docker_cache_user(user) ⇒ Object
56 57 58 59 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 56 def user_settings_docker_cache_user(user) user_settings_docker_cache['user'] ||= {} user_settings_docker_cache['user'][user] ||= {} end |
#user_settings_docker_cache_user_list(org) ⇒ Object
61 62 63 |
# File 'lib/buildizer/buildizer/docker_cache_mod.rb', line 61 def user_settings_docker_cache_user_list(org) user_settings_docker_cache_org(org)['user'] ||= [] end |