Module: Buildizer::Packager::OvercommitMod
- Included in:
- Buildizer::Packager
- Defined in:
- lib/buildizer/packager/overcommit_mod.rb
Instance Method Summary collapse
- #_overcommit_add_precommit!(name, hookcode, desc: nil, required: true) ⇒ Object
- #overcommit_ci_setup! ⇒ Object
- #overcommit_conf ⇒ Object
- #overcommit_conf_dump! ⇒ Object
- #overcommit_conf_path ⇒ Object
- #overcommit_conf_raw ⇒ Object
- #overcommit_hooks_path ⇒ Object
- #overcommit_hooks_pre_commit_path ⇒ Object
- #overcommit_setup! ⇒ Object
- #overcommit_verify_setup! ⇒ Object
Instance Method Details
#_overcommit_add_precommit!(name, hookcode, desc: nil, required: true) ⇒ Object
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 68 def _overcommit_add_precommit!(name, hookcode, desc: nil, required: true) hook_name = name.to_s.split('_').map(&:capitalize).join overcommit_conf['PreCommit'] ||= {} overcommit_conf['PreCommit'][hook_name] = {}.tap do |hook| hook['enabled'] = true hook['required'] = required hook['desc'] = desc if desc end overcommit_conf_dump! overcommit_hooks_pre_commit_path.mkpath path = overcommit_hooks_pre_commit_path.join("#{name}.rb") write_path path, hookcode command! 'overcommit --sign pre-commit' end |
#overcommit_ci_setup! ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 52 def overcommit_ci_setup! hookcode = "module Overcommit::Hook::PreCommit\n class BuildizerCiVerify < Base\n def run\nreturn :fail unless system(\"buildizer setup --verify-ci\")\n:pass\n end\n end\nend\n HOOKCODE\n\n _overcommit_add_precommit!(:buildizer_ci_verify, hookcode,\n desc: \"Verify \#{ci.ci_name} configuration is up to date\")\nend\n" |
#overcommit_conf ⇒ Object
18 19 20 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 18 def overcommit_conf @overcommit_conf ||= overcommit_conf_path.load_yaml end |
#overcommit_conf_dump! ⇒ Object
26 27 28 29 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 26 def overcommit_conf_dump! write_path overcommit_conf_path, overcommit_conf_raw command! 'overcommit --sign' end |
#overcommit_conf_path ⇒ Object
6 7 8 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 6 def overcommit_conf_path package_path.join('.overcommit.yml') end |
#overcommit_conf_raw ⇒ Object
22 23 24 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 22 def overcommit_conf_raw YAML.dump(overcommit_conf) end |
#overcommit_hooks_path ⇒ Object
10 11 12 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 10 def overcommit_hooks_path package_path.join('.git-hooks') end |
#overcommit_hooks_pre_commit_path ⇒ Object
14 15 16 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 14 def overcommit_hooks_pre_commit_path overcommit_hooks_path.join('pre_commit') end |
#overcommit_setup! ⇒ Object
31 32 33 34 35 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 31 def overcommit_setup! overcommit_hooks_path.mkpath overcommit_conf_dump! command! 'overcommit --install' end |
#overcommit_verify_setup! ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/buildizer/packager/overcommit_mod.rb', line 37 def overcommit_verify_setup! hookcode = "module Overcommit::Hook::PreCommit\n class BuildizerVerify < Base\n def run\nreturn :fail unless system(\"buildizer verify\")\n:pass\n end\n end\nend\n HOOKCODE\n\n _overcommit_add_precommit!(:buildizer_verify, hookcode, desc: \"Verify Buildizer conf file\")\nend\n" |