Remove proxy only if no apps are installed

This commit is contained in:
Donal McBreen
2024-09-12 16:47:03 +01:00
parent 35fe9c154d
commit 24031fefb0
16 changed files with 131 additions and 33 deletions

View File

@@ -49,5 +49,6 @@ class AppTest < IntegrationTest
kamal :app, :remove
assert_app_is_down
assert_app_directory_removed
end
end

View File

@@ -148,4 +148,16 @@ class IntegrationTest < ActiveSupport::TestCase
def container_running?(host:, name:)
docker_compose("exec #{host} docker ps --filter=name=#{name} | tail -n+2", capture: true).strip.present?
end
def assert_app_directory_removed
assert_directory_removed("./kamal/apps/#{@app}")
end
def assert_proxy_directory_removed
assert_directory_removed("./kamal/proxy")
end
def assert_directory_removed(directory)
assert docker_compose("exec vm1 ls #{directory} | wc -l", capture: true).strip == "0"
end
end

View File

@@ -97,6 +97,8 @@ class MainTest < IntegrationTest
kamal :remove, "-y"
assert_no_images_or_containers
assert_app_directory_removed
assert_proxy_directory_removed
end
private

View File

@@ -48,6 +48,7 @@ class ProxyTest < IntegrationTest
kamal :proxy, :remove
assert_proxy_not_running
assert_proxy_directory_removed
kamal :env, :delete
end