def run(*args)
error "cannot combine --override and --append" if append? and override?
error "--append without --add makes no sense" if append? and not add?
error "--override without --add makes no sense" if override? and not add?
self.override |= !config_key.start_with?('env.') if add? and not append?
if args.first =~ %r{\w+/\w+} && !args.first.include?("=")
warn "WARNING: The name of the repository is now passed to the command with the -r option:"
warn " #{command("encrypt [...] -r #{args.first}")}"
warn " If you tried to pass the name of the repository as the first argument, you"
warn " probably won't get the results you wanted.\n"
end
data = args.join(" ")
if data.empty?
say color("Reading from stdin, press Ctrl+D when done", :info) if $stdin.tty?
data = $stdin.read
end
data = split? ? data.split("\n") : [data.strip]
warn_env_assignments(data)
encrypted = data.map { |data| repository.encrypt(data) }
if config_key
set_config encrypted.map { |e| { 'secure' => e } }
save_travis_config
else
list = encrypted.map { |data| format(data.inspect, " secure: %s") }
say(list.join("\n"), template(__FILE__), :none)
end
rescue OpenSSL::PKey::RSAError => error
error "#{error.message.sub(" for key size", "")} - consider using " <<
color("travis encrypt-file", [:red, :bold]) <<
color(" or ", :red) <<
color("travis env set", [:red, :bold])
end