Class: Buildizer::Packager
- Inherits:
-
Object
- Object
- Buildizer::Packager
- Includes:
- BuildizerConfMod, CiMod, DockerCacheMod, GitMod, MiscMod, OvercommitMod, PackageCloudMod, PackageVersionTagMod, ProjectSettingsMod, UserSettingsMod
- Defined in:
- lib/buildizer/packager.rb,
lib/buildizer/packager/ci_mod.rb,
lib/buildizer/packager/git_mod.rb,
lib/buildizer/packager/misc_mod.rb,
lib/buildizer/packager/overcommit_mod.rb,
lib/buildizer/packager/docker_cache_mod.rb,
lib/buildizer/packager/package_cloud_mod.rb,
lib/buildizer/packager/user_settings_mod.rb,
lib/buildizer/packager/buildizer_conf_mod.rb,
lib/buildizer/packager/project_settings_mod.rb,
lib/buildizer/packager/package_version_tag_mod.rb
Defined Under Namespace
Modules: BuildizerConfMod, CiMod, DockerCacheMod, GitMod, MiscMod, OvercommitMod, PackageCloudMod, PackageVersionTagMod, ProjectSettingsMod, UserSettingsMod
Instance Attribute Summary collapse
-
#cli ⇒ Object
readonly
Returns the value of attribute cli.
-
#debug ⇒ Object
readonly
Returns the value of attribute debug.
-
#package_path ⇒ Object
readonly
Returns the value of attribute package_path.
-
#work_path ⇒ Object
readonly
Returns the value of attribute work_path.
Instance Method Summary collapse
- #build! ⇒ Object
- #builder ⇒ Object
- #deploy! ⇒ Object
- #git_hooks_path ⇒ Object
- #git_old_hooks_path ⇒ Object
- #git_old_precommit_path ⇒ Object
- #git_precommit_path ⇒ Object
-
#initialize(cli) ⇒ Packager
constructor
A new instance of Packager.
- #prepare! ⇒ Object
- #verify! ⇒ Object
Methods included from DockerCacheMod
#docker_cache, #docker_cache_clear_settings?, #docker_cache_setup!, #docker_cache_update_settings?, #setup_docker_cache_email, #setup_docker_cache_org, #setup_docker_cache_password, #setup_docker_cache_repo, #setup_docker_cache_server, #setup_docker_cache_user, #user_settings_docker_cache, #user_settings_docker_cache_org, #user_settings_docker_cache_repo_list, #user_settings_docker_cache_user, #user_settings_docker_cache_user_list
Methods included from PackageCloudMod
#package_cloud, #package_cloud_clear_settings?, #package_cloud_org, #package_cloud_repo, #package_cloud_setup!, #package_cloud_update_settings?, #setup_package_cloud_org_desc_list, #setup_package_cloud_org_list, #setup_package_cloud_repo_desc_list, #setup_package_cloud_repo_list, #user_settings_package_cloud, #user_settings_package_cloud_token
Methods included from OvercommitMod
#_overcommit_add_precommit!, #overcommit_ci_setup!, #overcommit_conf, #overcommit_conf_dump!, #overcommit_conf_path, #overcommit_conf_raw, #overcommit_hooks_path, #overcommit_hooks_pre_commit_path, #overcommit_setup!, #overcommit_verify_setup!
Methods included from GitMod
#git_available?, #git_remote_url
Methods included from PackageVersionTagMod
#package_version_tag, #package_version_tag_required_for_deploy?
Methods included from BuildizerConfMod
#after_prepare, #before_build, #before_prepare, #build_dep, #buildizer_conf, #buildizer_conf_path, #buildizer_conf_setup!, #buildizer_conf_update, #maintainer, #package_name, #package_version, #prepare, #targets
Methods included from CiMod
Methods included from UserSettingsMod
#user_settings, #user_settings_path, #user_settings_save!, #user_settings_setup!
Methods included from ProjectSettingsMod
#project_settings, #project_settings_path, #project_settings_save!, #project_settings_setup!
Methods included from MiscMod
#command, #command!, #raw_command, #raw_command!, #with_log, #write_path
Constructor Details
#initialize(cli) ⇒ Packager
Returns a new instance of Packager.
32 33 34 35 36 37 |
# File 'lib/buildizer/packager.rb', line 32 def initialize(cli) @cli = cli @package_path = Pathname.new(ENV['BUILDIZER_PATH'] || '.'). @work_path = Pathname.new(ENV['BUILDIZER_WORK_PATH'] || '~/.buildizer'). @debug = ENV['BUILDIZER_DEBUG'].nil? ? cli.['debug'] : ENV['BUILDIZER_DEBUG'].to_s.on? end |
Instance Attribute Details
#cli ⇒ Object (readonly)
Returns the value of attribute cli.
27 28 29 |
# File 'lib/buildizer/packager.rb', line 27 def cli @cli end |
#debug ⇒ Object (readonly)
Returns the value of attribute debug.
30 31 32 |
# File 'lib/buildizer/packager.rb', line 30 def debug @debug end |
#package_path ⇒ Object (readonly)
Returns the value of attribute package_path.
28 29 30 |
# File 'lib/buildizer/packager.rb', line 28 def package_path @package_path end |
#work_path ⇒ Object (readonly)
Returns the value of attribute work_path.
29 30 31 |
# File 'lib/buildizer/packager.rb', line 29 def work_path @work_path end |
Instance Method Details
#build! ⇒ Object
43 44 45 |
# File 'lib/buildizer/packager.rb', line 43 def build! builder.build end |
#builder ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/buildizer/packager.rb', line 71 def builder @builder ||= begin build_type = buildizer_conf['build_type'] raise Error, error: :input_error, message: "Buildizer build_type is not defined" unless build_type klass = {fpm: Builder::Fpm, native: Builder::Native, patch: Builder::Patch}[build_type.to_s.to_sym] raise Error, error: :input_error, message: "unknown build_type '#{build_type}'" unless klass klass.new(self) end end |
#deploy! ⇒ Object
47 48 49 |
# File 'lib/buildizer/packager.rb', line 47 def deploy! builder.deploy end |
#git_hooks_path ⇒ Object
55 56 57 |
# File 'lib/buildizer/packager.rb', line 55 def git_hooks_path package_path.join('.git').join('hooks') end |
#git_old_hooks_path ⇒ Object
59 60 61 |
# File 'lib/buildizer/packager.rb', line 59 def git_old_hooks_path git_hooks_path.join('old-hooks') end |
#git_old_precommit_path ⇒ Object
67 68 69 |
# File 'lib/buildizer/packager.rb', line 67 def git_old_precommit_path git_old_hooks_path.join('pre-commit') end |
#git_precommit_path ⇒ Object
63 64 65 |
# File 'lib/buildizer/packager.rb', line 63 def git_precommit_path git_hooks_path.join('pre-commit') end |
#prepare! ⇒ Object
39 40 41 |
# File 'lib/buildizer/packager.rb', line 39 def prepare! builder.prepare end |
#verify! ⇒ Object
51 52 53 |
# File 'lib/buildizer/packager.rb', line 51 def verify! builder.verify end |