Module: Buildizer::Packager::PackageCloudMod

Included in:
Buildizer::Packager
Defined in:
lib/buildizer/packager/package_cloud_mod.rb

Instance Method Summary collapse

Instance Method Details

#package_cloudObject



15
16
17
18
19
20
21
22
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 15

def package_cloud
  tokens = package_cloud_org
  package_cloud_repo.map do |repo|
    org = repo.split('/').first
    token = tokens[org]
    {org: org, repo: repo, token: token}
  end
end

#package_cloud_clear_settings?Boolean

Returns:

  • (Boolean)


55
56
57
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 55

def package_cloud_clear_settings?
  cli.options['clear_package_cloud']
end

#package_cloud_orgObject



8
9
10
11
12
13
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 8

def package_cloud_org
  default_token = ENV['PACKAGECLOUD_TOKEN']
  package_cloud_repo.map {|repo| repo.split('/').first}.uniq.map do |org|
    [org, ENV["PACKAGECLOUD_TOKEN_#{org.upcase}"] || default_token]
  end.to_h
end

#package_cloud_repoObject



4
5
6
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 4

def package_cloud_repo
  ENV['PACKAGECLOUD'].to_s.split(',')
end

#package_cloud_setup!Object



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 59

def package_cloud_setup!
  if package_cloud_update_settings?
     = false
    setup_package_cloud_org_list.each do |org|
      if [org].nil? or
         cli.options['reset_package_cloud_token']
        token = cli.ask("Enter token for package_cloud org '#{org}':",
                         echo: false, default: 'none').tap{puts}
        token = (token == 'none' ? nil : token)
        if [org] != token
          [org] = token
           = true
        end
      end
    end
     if 
  end

  ci.package_cloud_setup!
end

#package_cloud_update_settings?Boolean

Returns:

  • (Boolean)


51
52
53
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 51

def package_cloud_update_settings?
  cli.options['package_cloud']
end

#setup_package_cloud_org_desc_listObject



43
44
45
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 43

def setup_package_cloud_org_desc_list
  setup_package_cloud_repo_desc_list.map {|desc| {org: desc[:org], token: desc[:token]}}.uniq
end

#setup_package_cloud_org_listObject



47
48
49
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 47

def setup_package_cloud_org_list
  setup_package_cloud_repo_desc_list.map {|desc| desc[:org]}.uniq
end

#setup_package_cloud_repo_desc_listObject



36
37
38
39
40
41
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 36

def setup_package_cloud_repo_desc_list
  setup_package_cloud_repo_list.map do |repo|
    org, name = repo.split('/')
    {repo: repo, org: org, name: name, token: [org]}
  end
end

#setup_package_cloud_repo_listObject



32
33
34
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 32

def setup_package_cloud_repo_list
  Array(cli.options['package_cloud']).uniq
end

#user_settings_package_cloudObject



24
25
26
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 24

def 
  ['package_cloud'] ||= {}
end

#user_settings_package_cloud_tokenObject



28
29
30
# File 'lib/buildizer/packager/package_cloud_mod.rb', line 28

def 
  ['token'] ||= {}
end