Class: KuberKit::Shell::Commands::GitCommands

Inherits:
Object
  • Object
show all
Defined in:
lib/kuber_kit/shell/commands/git_commands.rb

Instance Method Summary collapse

Instance Method Details

#download_repo(shell, remote_url:, path:, branch:) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/kuber_kit/shell/commands/git_commands.rb', line 11

def download_repo(shell, remote_url:, path:, branch:)
  shell.exec! [
    "rm -rf #{path}",
    "mkdir -p #{path}",
    "git clone -b #{branch} --depth 1 #{remote_url} #{path}",
  ].join(" && ")
end

#force_pull_repo(shell, path:, branch:) ⇒ Object



19
20
21
22
23
24
25
26
27
# File 'lib/kuber_kit/shell/commands/git_commands.rb', line 19

def force_pull_repo(shell, path:, branch:)
  shell.exec! [
    "cd #{path}",
    "git add .",
    "git reset HEAD --hard",
    "git checkout #{branch}",
    "git pull --force",
  ].join(" && ")
end

#get_remote_url(shell, git_repo_path, remote_name: "origin") ⇒ Object



2
3
4
5
6
7
8
9
# File 'lib/kuber_kit/shell/commands/git_commands.rb', line 2

def get_remote_url(shell, git_repo_path, remote_name: "origin")
  shell.exec! [
    "cd #{git_repo_path}",
    "git config --get remote.#{remote_name}.url",
  ].join(" && ")
rescue KuberKit::Shell::AbstractShell::ShellError
  return nil
end