Sha256: 63b5d61bb4ae984b1c49d9cfbf8318e751890af8f72129465a8b4bd019f86f68

Contents?: true

Size: 1.02 KB

Versions: 1

Compression:

Stored size: 1.02 KB

Contents

# encoding: UTF-8

module Tetra
  # tetra dry-run
  class DryRunSubcommand < Tetra::Subcommand
    def execute
      checking_exceptions do
        project = Tetra::Project.new(".")

        if project.src_patched?
          puts "Some files in src/ were changed since last dry-run,"
          puts "use \"tetra patch message\" to include changes in a patch before dry-running."
          puts "Dry run not started"
        else
          project.dry_run
          puts "Dry-run started in a new bash shell."
          puts "Build your project now, you can use \"tetra mvn\" and \"tetra ant\"."
          puts "If the build succeedes end this dry run with ^D (Ctrl+D),"
          puts "if the build does not succeed use ^C^D to abort and undo any change"

          begin
            history = Bash.new.bash
            project.finish(history)
            puts "Dry-run finished"
          rescue ExecutionFailed
            project.abort
            puts "Project reverted as before dry-run"
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tetra-0.52.0 lib/tetra/ui/dry_run_subcommand.rb