Sha256: de647047920f1c25a35893177fe270faa1f09ef722f204b33356685e6586541d
Contents?: true
Size: 1.72 KB
Versions: 2
Compression:
Stored size: 1.72 KB
Contents
# frozen_string_literal: true require "thor" require_relative "base" module Neetob class CLI module Github module MakePr class Script < Base attr_accessor :apps, :sandbox, :path_to_the_script_file, :pr_description def initialize(apps, path_to_the_script_file, pr_title, branch_name, pr_description, sandbox = false) super(pr_title, branch_name) @apps = apps @sandbox = sandbox @path_to_the_script_file = path_to_the_script_file @pr_description = pr_description end def run matching_apps = find_all_matching_apps(apps, :github, sandbox) delete_and_create_temp_neetob_dir matching_apps.each do |app| ui.info("\n Working on #{app} \n") begin clone_app_in_tmp_dir(app) check_and_delete_remote_branch(app) update_script_file_permissions execute_script(app) ui.info(add_commmit_and_push_changes(app)) delete_local_feature_branch(app) res = client.create_pull_request(app, "main", branch_name, pr_title, pr_description) ui.success("PR created in \"#{app}\" project successfully.") rescue StandardError => e ExceptionHandler.new(e).process end end `rm -rf /tmp/neetob` end private def update_script_file_permissions `chmod +x #{path_to_the_script_file}` end def execute_script(app) `#{cd_to_app_in_tmp_dir(app)} && #{path_to_the_script_file}` end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
neetob-0.1.5 | lib/neetob/cli/github/make_pr/script.rb |
neetob-0.1.4 | lib/neetob/cli/github/make_pr/script.rb |