Fix tests
This commit is contained in:
@@ -13,7 +13,7 @@ class CommandsAppTest < ActiveSupport::TestCase
|
||||
|
||||
test "run" do
|
||||
assert_equal \
|
||||
"docker run --detach --restart unless-stopped --log-opt max-size=10m --name app-web-999 -e MRSK_CONTAINER_NAME=\"app-999\" -e RAILS_MASTER_KEY=\"456\" --label service=\"app\" --label role=\"web\" --label traefik.http.routers.app.rule=\"PathPrefix(\\`/\\`)\" --label traefik.http.services.app.loadbalancer.healthcheck.path=\"/up\" --label traefik.http.services.app.loadbalancer.healthcheck.interval=\"1s\" --label traefik.http.middlewares.app-retry.retry.attempts=\"5\" --label traefik.http.middlewares.app-retry.retry.initialinterval=\"500ms\" --label traefik.http.routers.app.middlewares=\"app-retry@docker\" dhh/app:999",
|
||||
"docker run --detach --restart unless-stopped --log-opt max-size=10m --name app-web-999 -e MRSK_CONTAINER_NAME=\"app-web-999\" -e RAILS_MASTER_KEY=\"456\" --label service=\"app\" --label role=\"web\" --label traefik.http.routers.app.rule=\"PathPrefix(\\`/\\`)\" --label traefik.http.services.app.loadbalancer.healthcheck.path=\"/up\" --label traefik.http.services.app.loadbalancer.healthcheck.interval=\"1s\" --label traefik.http.middlewares.app-retry.retry.attempts=\"5\" --label traefik.http.middlewares.app-retry.retry.initialinterval=\"500ms\" --label traefik.http.routers.app.middlewares=\"app-retry@docker\" dhh/app:999",
|
||||
new_command.run.join(" ")
|
||||
end
|
||||
|
||||
@@ -37,7 +37,7 @@ class CommandsAppTest < ActiveSupport::TestCase
|
||||
@config[:servers] = { "web" => [ "1.1.1.1" ], "jobs" => { "hosts" => [ "1.1.1.2" ], "cmd" => "bin/jobs", "options" => { "mount" => "somewhere", "cap-add" => true } } }
|
||||
assert_equal \
|
||||
"docker run --detach --restart unless-stopped --log-opt max-size=10m --name app-jobs-999 -e MRSK_CONTAINER_NAME=\"app-jobs-999\" -e RAILS_MASTER_KEY=\"456\" --label service=\"app\" --label role=\"jobs\" --mount \"somewhere\" --cap-add dhh/app:999 bin/jobs",
|
||||
new_command.run(role: :jobs).join(" ")
|
||||
new_command(role: "jobs").run.join(" ")
|
||||
end
|
||||
|
||||
test "start" do
|
||||
@@ -49,7 +49,7 @@ class CommandsAppTest < ActiveSupport::TestCase
|
||||
test "start with destination" do
|
||||
@destination = "staging"
|
||||
assert_equal \
|
||||
"docker start app-staging-999",
|
||||
"docker start app-web-staging-999",
|
||||
new_command.start.join(" ")
|
||||
end
|
||||
|
||||
@@ -74,7 +74,7 @@ class CommandsAppTest < ActiveSupport::TestCase
|
||||
test "info with destination" do
|
||||
@destination = "staging"
|
||||
assert_equal \
|
||||
"docker ps --filter label=service=app --filter label=role=web --filter label=destination=staging",
|
||||
"docker ps --filter label=service=app --filter label=destination=staging --filter label=role=web",
|
||||
new_command.info.join(" ")
|
||||
end
|
||||
|
||||
@@ -165,20 +165,20 @@ class CommandsAppTest < ActiveSupport::TestCase
|
||||
|
||||
test "current_container_id" do
|
||||
assert_equal \
|
||||
"docker ps --quiet --filter label=service=app--filter label=role=web",
|
||||
"docker ps --quiet --filter label=service=app --filter label=role=web",
|
||||
new_command.current_container_id.join(" ")
|
||||
end
|
||||
|
||||
test "current_container_id with destination" do
|
||||
@destination = "staging"
|
||||
assert_equal \
|
||||
"docker ps --quiet --filter label=service=app--filter label=role=web --filter label=destination=staging",
|
||||
"docker ps --quiet --filter label=service=app --filter label=destination=staging --filter label=role=web",
|
||||
new_command.current_container_id.join(" ")
|
||||
end
|
||||
|
||||
test "container_id_for" do
|
||||
assert_equal \
|
||||
"docker container ls --all --filter name=app-web-999 --quiet",
|
||||
"docker container ls --all --filter name=app-999 --quiet",
|
||||
new_command.container_id_for(container_name: "app-999").join(" ")
|
||||
end
|
||||
|
||||
@@ -196,46 +196,46 @@ class CommandsAppTest < ActiveSupport::TestCase
|
||||
|
||||
test "list_containers" do
|
||||
assert_equal \
|
||||
"docker container ls --all --filter label=service=app",
|
||||
"docker container ls --all --filter label=service=app --filter label=role=web",
|
||||
new_command.list_containers.join(" ")
|
||||
end
|
||||
|
||||
test "list_containers with destination" do
|
||||
@destination = "staging"
|
||||
assert_equal \
|
||||
"docker container ls --all --filter label=service=app --filter label=destination=staging",
|
||||
"docker container ls --all --filter label=service=app --filter label=destination=staging --filter label=role=web",
|
||||
new_command.list_containers.join(" ")
|
||||
end
|
||||
|
||||
test "list_container_names" do
|
||||
assert_equal \
|
||||
"docker container ls --all --filter label=service=app --format '{{ .Names }}'",
|
||||
"docker container ls --all --filter label=service=app --filter label=role=web --format '{{ .Names }}'",
|
||||
new_command.list_container_names.join(" ")
|
||||
end
|
||||
|
||||
test "remove_container" do
|
||||
assert_equal \
|
||||
"docker container ls --all --filter name=app-999 --quiet | xargs docker container rm",
|
||||
"docker container ls --all --filter name=app-web-999 --quiet | xargs docker container rm",
|
||||
new_command.remove_container(version: "999").join(" ")
|
||||
end
|
||||
|
||||
test "remove_container with destination" do
|
||||
@destination = "staging"
|
||||
assert_equal \
|
||||
"docker container ls --all --filter name=app-staging-999 --quiet | xargs docker container rm",
|
||||
"docker container ls --all --filter name=app-web-staging-999 --quiet | xargs docker container rm",
|
||||
new_command.remove_container(version: "999").join(" ")
|
||||
end
|
||||
|
||||
test "remove_containers" do
|
||||
assert_equal \
|
||||
"docker container prune --force --filter label=service=app",
|
||||
"docker container prune --force --filter label=service=app --filter label=role=web",
|
||||
new_command.remove_containers.join(" ")
|
||||
end
|
||||
|
||||
test "remove_containers with destination" do
|
||||
@destination = "staging"
|
||||
assert_equal \
|
||||
"docker container prune --force --filter label=service=app --filter label=destination=staging",
|
||||
"docker container prune --force --filter label=service=app --filter label=destination=staging --filter label=role=web",
|
||||
new_command.remove_containers.join(" ")
|
||||
end
|
||||
|
||||
@@ -247,19 +247,19 @@ class CommandsAppTest < ActiveSupport::TestCase
|
||||
|
||||
test "remove_images" do
|
||||
assert_equal \
|
||||
"docker image prune --all --force --filter label=service=app",
|
||||
"docker image prune --all --force --filter label=service=app --filter label=role=web",
|
||||
new_command.remove_images.join(" ")
|
||||
end
|
||||
|
||||
test "remove_images with destination" do
|
||||
@destination = "staging"
|
||||
assert_equal \
|
||||
"docker image prune --all --force --filter label=service=app --filter label=destination=staging",
|
||||
"docker image prune --all --force --filter label=service=app --filter label=destination=staging --filter label=role=web",
|
||||
new_command.remove_images.join(" ")
|
||||
end
|
||||
|
||||
private
|
||||
def new_command
|
||||
Mrsk::Commands::App.new(Mrsk::Configuration.new(@config, destination: @destination, role: "web", version: "999"))
|
||||
def new_command(role: "web")
|
||||
Mrsk::Commands::App.new(Mrsk::Configuration.new(@config, destination: @destination, version: "999"), role: role)
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user