Sha256: 14ca23bc9978c948fd7ab1d72978a54de149ec401c5a84df96acde6a555b9956

Contents?: true

Size: 1.45 KB

Versions: 2

Compression:

Stored size: 1.45 KB

Contents

module DevFlow
  class Complete < App

    def process!
      self.hello

      # whether I am working on a proper task branch
      current_task = self.task
      error "Not on a known task branch. Can not continue." unless current_task

      info "Assigned resources for current task: " + current_task.resources.join(", ")
      info "Task resource list are #{current_task.resources.join(',')}, you are #{@config["whoami"]}"
      unless current_task.resources.include?(@config["whoami"]) 
        if i_have_power?
          role = 'supervisor' if i_am_supervisor?
          role = 'moderator' if i_am_moderator?
          role = 'leader' if i_am_leader?
          warn "You are complete the task as a #{role}"
        else
          error "You are not in the resource list for that task."
        end      
      end

      self.ask_rebase true # force rebase
      puts hr

      # commit you current branch and push
      progress = 99
      message = ARGV[2] || "complete the branch by set progress to 99."
      message = "[complete] " + message

      info "Commit your progress"
      `git commit -am '#{message}'`
      if @config["git_remote"]
        info "push your progress to remote server"
        `git push #{@config["git_remote"]} #{current_task.branch_name}`
      end
      
      # rewrite progress in ROADMAP file under develop trunk
      upload_progress! current_task, progress, true
    end

  end # class
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
dev_flow-0.2.4 lib/dev_flow/commands/complete.rb
dev_flow-0.2.3 lib/dev_flow/commands/complete.rb