Skip to content

Commit

Permalink
Merge pull request #501 from rience/optional-envify-push
Browse files Browse the repository at this point in the history
Optionally Skip Push for "envify"
  • Loading branch information
djmb authored Oct 30, 2023
2 parents d2214b4 + 8ca0403 commit e9269d2
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
3 changes: 2 additions & 1 deletion lib/kamal/cli/main.rb
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@ def init
end

desc "envify", "Create .env by evaluating .env.erb (or .env.staging.erb -> .env.staging when using -d staging)"
option :skip_push, aliases: "-P", type: :boolean, default: false, desc: "Skip .env file push"
def envify
if destination = options[:destination]
env_template_path = ".env.#{destination}.erb"
Expand All @@ -182,7 +183,7 @@ def envify
File.write(env_path, ERB.new(File.read(env_template_path)).result, perm: 0600)

load_envs # reload new file
invoke "kamal:cli:env:push", options
invoke "kamal:cli:env:push", options unless options[:skip_push]
end

desc "remove", "Remove Traefik, app, accessories, and registry session from servers"
Expand Down
8 changes: 8 additions & 0 deletions test/cli/main_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,14 @@ class CliMainTest < CliTestCase
run_command("envify", "-d", "world", config_file: "deploy_for_dest")
end

test "envify with skip_push" do
File.expects(:read).with(".env.erb").returns("HELLO=<%= 'world' %>")
File.expects(:write).with(".env", "HELLO=world", perm: 0600)

Kamal::Cli::Main.any_instance.expects(:invoke).with("kamal:cli:env:push").never
run_command("envify", "--skip-push")
end

test "remove with confirmation" do
run_command("remove", "-y", config_file: "deploy_with_accessories").tap do |output|
assert_match /docker container stop traefik/, output
Expand Down

0 comments on commit e9269d2

Please sign in to comment.