class AvoDeploy::ScmProvider::ScmProvider
scm provider base class
Public Class Methods
Initializes the scm provider
@param env [TaskExecutionEnvironment] env for the commands to be executed in
# File lib/avodeploy/scm_provider/scm_provider.rb, line 27 def initialize(env) raise ArgumentError, 'env must be a TaskExecutionEnvironment' unless env.is_a?(AvoDeploy::Task::TaskExecutionEnvironment) @env = env end
Public Instance Methods
Checks out repository code from a system and switches to the given branch
@param url [String] the repository location @param local_dir [String] path to the working copy @param branch [String] the branch to check out @param tag [String] tag to check out
# File lib/avodeploy/scm_provider/scm_provider.rb, line 39 def checkout_from_remote(url, local_dir, branch, tag = nil) raise NotImplementedError end
Returns scm files to be executed in the deployment process
@return [Array] array of scm control files
# File lib/avodeploy/scm_provider/scm_provider.rb, line 72 def cli_utils raise NotImplementedError end
Finds files that differ between two revisions and returns them as a array
@param rev1 [String] sha1 @param rev2 [String] sha1
@return [Array]
# File lib/avodeploy/scm_provider/scm_provider.rb, line 50 def diff_files_between_revisions(rev1, rev2) raise NotImplementedError end
Returns the scm tools that have to be installed on specific systems
@return [Array] array of utilities
# File lib/avodeploy/scm_provider/scm_provider.rb, line 79 def revision raise NotImplementedError end
Returns the current revision of the working copy
@return [String] the current revision of the working copy
# File lib/avodeploy/scm_provider/scm_provider.rb, line 65 def scm_files raise NotImplementedError end
Finds files unknown file in the working directory and returns them as a array
@return [Array]
# File lib/avodeploy/scm_provider/scm_provider.rb, line 58 def unknown_files_in_workdir raise NotImplementedError end