Sha256: d1387c2826255f24f8c2a31f72aba9c8e72754b50c04c57527453004193bbda9

Contents?: true

Size: 1.41 KB

Versions: 22

Compression:

Stored size: 1.41 KB

Contents

# frozen_string_literal: true

require "thor"

require_relative "../base"

module Neetob
  class CLI
    module Github
      module Labels
        class DeleteAll < Base
          attr_accessor :apps, :sandbox, :all_neeto_repos

          def initialize(apps, sandbox = false, all_neeto_repos = false)
            super()
            @apps = apps
            @sandbox = sandbox
            @all_neeto_repos = all_neeto_repos
          end

          def run
            check_for_apps_and_all_neeto_repos_option(apps, all_neeto_repos)
            matching_apps = find_all_matching_apps(apps, :github, sandbox, false, all_neeto_repos)
            matching_apps.each do |app|
              ui.info("\n Working on #{app} repo \n")
              begin
                labels = client.labels(app)
                labels.each do |label|
                  delete_label(app, label)
                end
              rescue StandardError => e
                ExceptionHandler.new(e).process
              end
            end
          end

          private

            def delete_label(app, label_details)
              if client.delete_label!(app, label_details[:name])
                ui.success("The \"#{label_details[:name]}\" label deleted successfully")
              else
                ui.error("The \"#{label_details[:name]}\" label can't be deleted. Please try again")
              end
            end
        end
      end
    end
  end
end

Version data entries

22 entries across 22 versions & 2 rubygems

Version Path
neetob-ud-1.0.59 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.8 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.6 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.4 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.3 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.2 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.1 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.0 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.1.3 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.1.2 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.1.1 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.1.0 lib/neetob/cli/github/labels/delete_all.rb
neetob-0.2.2 lib/neetob/cli/github/labels/delete_all.rb
neetob-0.2.1 lib/neetob/cli/github/labels/delete_all.rb
neetob-0.2.0 lib/neetob/cli/github/labels/delete_all.rb
neetob-0.1.5 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.14 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.13 lib/neetob/cli/github/labels/delete_all.rb
neetob-0.1.4 lib/neetob/cli/github/labels/delete_all.rb
neetob-ud-0.2.11 lib/neetob/cli/github/labels/delete_all.rb