Skip to content

Commit 2e7d0dd

Browse files
authored
Merge pull request #1358 from basecamp/dont-run-assets-container
Create but don't run the assets container
2 parents ab8396f + 2cdca45 commit 2e7d0dd

File tree

3 files changed

+9
-9
lines changed

3 files changed

+9
-9
lines changed

lib/kamal/commands/app/assets.rb

+4-4
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ def extract_assets
44

55
combine \
66
make_directory(role.asset_extracted_directory),
7-
[ *docker(:stop, "-t 1", asset_container, "2> /dev/null"), "|| true" ],
8-
docker(:run, "--name", asset_container, "--detach", "--rm", "--entrypoint", "sleep", config.absolute_image, "1000000"),
9-
docker(:cp, "-L", "#{asset_container}:#{role.asset_path}/.", role.asset_extracted_directory),
10-
docker(:stop, "-t 1", asset_container),
7+
[ *docker(:container, :rm, asset_container, "2> /dev/null"), "|| true" ],
8+
docker(:container, :create, "--name", asset_container, config.absolute_image),
9+
docker(:container, :cp, "-L", "#{asset_container}:#{role.asset_path}/.", role.asset_extracted_directory),
10+
docker(:container, :rm, asset_container),
1111
by: "&&"
1212
end
1313

test/cli/app_test.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ class CliAppTest < CliTestCase
7373
run_command("boot", config: :with_assets).tap do |output|
7474
assert_match "docker tag dhh/app:latest dhh/app:latest", output
7575
assert_match "/usr/bin/env mkdir -p .kamal/apps/app/assets/volumes/web-latest ; cp -rnT .kamal/apps/app/assets/extracted/web-latest .kamal/apps/app/assets/volumes/web-latest ; cp -rnT .kamal/apps/app/assets/extracted/web-latest .kamal/apps/app/assets/volumes/web-123 || true ; cp -rnT .kamal/apps/app/assets/extracted/web-123 .kamal/apps/app/assets/volumes/web-latest || true", output
76-
assert_match "/usr/bin/env mkdir -p .kamal/apps/app/assets/extracted/web-latest && docker stop -t 1 app-web-assets 2> /dev/null || true && docker run --name app-web-assets --detach --rm --entrypoint sleep dhh/app:latest 1000000 && docker cp -L app-web-assets:/public/assets/. .kamal/apps/app/assets/extracted/web-latest && docker stop -t 1 app-web-assets", output
76+
assert_match "/usr/bin/env mkdir -p .kamal/apps/app/assets/extracted/web-latest && docker container rm app-web-assets 2> /dev/null || true && docker container create --name app-web-assets dhh/app:latest && docker container cp -L app-web-assets:/public/assets/. .kamal/apps/app/assets/extracted/web-latest && docker container rm app-web-assets", output
7777
assert_match /docker run --detach --restart unless-stopped --name app-web-latest --network kamal --hostname 1.1.1.1-[0-9a-f]{12} /, output
7878
assert_match "docker container ls --all --filter name=^app-web-123$ --quiet | xargs docker stop", output
7979
assert_match "/usr/bin/env find .kamal/apps/app/assets/extracted -maxdepth 1 -name 'web-*' ! -name web-latest -exec rm -rf \"{}\" + ; find .kamal/apps/app/assets/volumes -maxdepth 1 -name 'web-*' ! -name web-latest -exec rm -rf \"{}\" +", output

test/commands/app_test.rb

+4-4
Original file line numberDiff line numberDiff line change
@@ -469,10 +469,10 @@ class CommandsAppTest < ActiveSupport::TestCase
469469
test "extract assets" do
470470
assert_equal [
471471
:mkdir, "-p", ".kamal/apps/app/assets/extracted/web-999", "&&",
472-
:docker, :stop, "-t 1", "app-web-assets", "2> /dev/null", "|| true", "&&",
473-
:docker, :run, "--name", "app-web-assets", "--detach", "--rm", "--entrypoint", "sleep", "dhh/app:999", "1000000", "&&",
474-
:docker, :cp, "-L", "app-web-assets:/public/assets/.", ".kamal/apps/app/assets/extracted/web-999", "&&",
475-
:docker, :stop, "-t 1", "app-web-assets"
472+
:docker, :container, :rm, "app-web-assets", "2> /dev/null", "|| true", "&&",
473+
:docker, :container, :create, "--name", "app-web-assets", "dhh/app:999", "&&",
474+
:docker, :container, :cp, "-L", "app-web-assets:/public/assets/.", ".kamal/apps/app/assets/extracted/web-999", "&&",
475+
:docker, :container, :rm, "app-web-assets"
476476
], new_command(asset_path: "/public/assets").extract_assets
477477
end
478478

0 commit comments

Comments
 (0)