Sha256: 6cec2cabe8590f787d2632cf0d22614b89ad284c7a6528c0bf84bafd41982691
Contents?: true
Size: 920 Bytes
Versions: 3
Compression:
Stored size: 920 Bytes
Contents
require 'modulesync' module ModuleSync class Hook attr_reader :hook_file, :namespace, :branch, :args def initialize(hook_file, options = []) @hook_file = hook_file @namespace = options['namespace'] @branch = options['branch'] @args = options['hook_args'] end def content(arguments) <<-EOF #!/usr/bin/env bash current_branch=\`git symbolic-ref HEAD | sed -e 's,.*/\(.*\),\1,'\` git_dir=\`git rev-parse --show-toplevel\` message=\`git log -1 --format=%B\` msync -m "\$message" #{arguments} EOF end def activate hook_args = [] hook_args << "-n #{namespace}" if namespace hook_args << "-b #{branch}" if branch hook_args << args if args File.open(hook_file, 'w') do |file| file.write(content(hook_args.join(' '))) end end def deactivate File.delete(hook_file) if File.exist?(hook_file) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
modulesync-0.8.1 | lib/modulesync/hook.rb |
modulesync-0.8.0 | lib/modulesync/hook.rb |
modulesync-0.7.2 | lib/modulesync/hook.rb |