Module: Buildizer::Packager::DockerCacheMod
- Included in:
- Buildizer::Packager
- Defined in:
- lib/buildizer/packager/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/packager/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
70 71 72 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 70 def docker_cache_clear_settings? cli.['clear_docker_cache'] end |
#docker_cache_setup! ⇒ Object
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 74 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
66 67 68 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 66 def docker_cache_update_settings? not setup_docker_cache_repo.nil? end |
#setup_docker_cache_email ⇒ Object
36 37 38 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 36 def setup_docker_cache_email cli.['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/packager/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 |
# File 'lib/buildizer/packager/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 cli.['reset_docker_cache_password'] or settings_password.nil? cli.ask("Docker cache user '#{setup_docker_cache_user}' password:", echo: false).tap{puts} else settings_password end end end |
#setup_docker_cache_repo ⇒ Object
13 14 15 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 13 def setup_docker_cache_repo cli.['docker_cache'] end |
#setup_docker_cache_server ⇒ Object
40 41 42 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 40 def setup_docker_cache_server cli.['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/packager/docker_cache_mod.rb', line 21 def setup_docker_cache_user cli.['docker_cache_user'] || user_settings_docker_cache_user_list(setup_docker_cache_org).first end |
#user_settings_docker_cache ⇒ Object
44 45 46 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 44 def user_settings_docker_cache user_settings['docker_cache'] ||= {} end |
#user_settings_docker_cache_org(org) ⇒ Object
48 49 50 51 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 48 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
62 63 64 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 62 def user_settings_docker_cache_repo_list(org) user_settings_docker_cache_org(org)['repo'] ||= [] end |
#user_settings_docker_cache_user(user) ⇒ Object
53 54 55 56 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 53 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
58 59 60 |
# File 'lib/buildizer/packager/docker_cache_mod.rb', line 58 def user_settings_docker_cache_user_list(org) user_settings_docker_cache_org(org)['user'] ||= [] end |