class Xcodeci::GitUtils

Public Instance Methods

checkout_repo(branch) click to toggle source
# File lib/xcodeci/gitutils.rb, line 26
def checkout_repo branch 
  %x(git checkout #{branch} 2>&1)
  $?.exitstatus.zero?
end
cloning_repo(repository_url) click to toggle source

def execute_in_repo_folder (repository_url, &block)

Dir.chdir "#{Xcodeci::HOME}/#{repository_name repository_url}"
result = block.call
Dir.chdir "#{Xcodeci::HOME}"
result

end

# File lib/xcodeci/gitutils.rb, line 14
def cloning_repo repository_url
  #Cloning the repository, it fails if the repository is already cloned
  dest_folder = File.join(Xcodeci::HOME, (repository_name repository_url))
  clone_result = %x(git clone #{repository_url} #{dest_folder} 2>&1)
  $?.exitstatus.zero?
end
fetch_repo() click to toggle source
# File lib/xcodeci/gitutils.rb, line 21
def fetch_repo
  %x(git fetch 2>&1)
  $?.exitstatus.zero?
end
get_commit_lists() click to toggle source
# File lib/xcodeci/gitutils.rb, line 36
def get_commit_lists      
  last_commit = %x(git log  -10 --date-order --pretty=format:"%h %ce").split(/\n/)
  # a single line shoud be in this format  "e2d4a86 ignaziocgmail.com"
  last_commit
end
pull_repo() click to toggle source
# File lib/xcodeci/gitutils.rb, line 31
def pull_repo      
  %x(git pull 2>&1)
  $?.exitstatus.zero?
end
repository_name(repo_url) click to toggle source
# File lib/xcodeci/gitutils.rb, line 4
def repository_name repo_url
  repo_url[repo_url.rindex('/') + 1..-1].sub('.git', '')
end
rollback_repo(commit) click to toggle source
# File lib/xcodeci/gitutils.rb, line 42
def rollback_repo commit
    %x(git checkout "#{commit}" 2>&1)
    $?.exitstatus.zero?
end