Skip to content

New deployment failes as env file isn't present on host #1700

@n3ph

Description

@n3ph

Getting this error while deploying to a new instance:

Acquiring the deploy lock...
Running the pre-deploy hook...
  INFO [e152ea13] Running /usr/bin/env .kamal/hooks/pre-deploy as n3ph@localhost
  INFO [e152ea13] Finished in 0.773 seconds with exit status 0 (successful).
Ensure kamal-proxy is running...
  INFO [1f0214a9] Running docker network create kamal on REDACTED
  INFO [2a50e085] Running docker login ghcr.io -u [REDACTED] -p [REDACTED] on REDACTED
  INFO [2a50e085] Finished in 0.708 seconds with exit status 0 (successful).
  INFO [215a75f9] Running docker inspect kamal-proxy --format '{{.Config.Image}}' | awk -F: '{print $NF}' on REDACTED
  INFO [215a75f9] Finished in 0.172 seconds with exit status 0 (successful).
  INFO [222e0ed2] Running /usr/bin/env mkdir -p .kamal/proxy/apps-config on REDACTED
  INFO [222e0ed2] Finished in 0.165 seconds with exit status 0 (successful).
  INFO [0ce71a44] Running docker container start kamal-proxy || echo $(cat .kamal/proxy/options 2> /dev/null || echo "--publish 80:80 --publish 443:443 --log-opt max-size=10m") $(cat .kamal/proxy/image 2> /dev/null || echo "basecamp/kamal-proxy"):$(cat .kamal/proxy/image_version 2> /dev/null || echo "v0.9.0") $(cat .kamal/proxy/run_command 2> /dev/null || echo "") | xargs docker run --name kamal-proxy --network kamal --detach --restart unless-stopped --volume kamal-proxy-config:/home/kamal-proxy/.config/kamal-proxy --volume $(pwd)/.kamal/proxy/apps-config:/home/kamal-proxy/.apps-config on REDACTED
  INFO [0ce71a44] Finished in 0.210 seconds with exit status 0 (successful).
Detect stale containers...
  INFO [3c8a617e] Running docker ps --filter label=service=project --filter label=destination=instance --filter label=role=web --format "{{.Names}}" | while read line; do echo ${line#project-web-instance-}; done on REDACTED
  INFO [3c8a617e] Finished in 0.171 seconds with exit status 0 (successful).
  INFO [8fe299d3] Running /usr/bin/env sh -c 'docker ps --latest --format '\''{{.Names}}'\'' --filter label=service=project --filter label=destination=instance --filter label=role=web --filter status=running --filter status=restarting --filter ancestor=$(docker image ls --filter reference=ghcr.io/acme/project:latest-instance --format '\''{{.ID}}'\'') ; docker ps --latest --format '\''{{.Names}}'\'' --filter label=service=project --filter label=destination=instance --filter label=role=web --filter status=running --filter status=restarting' | head -1 | while read line; do echo ${line#project-web-instance-}; done on REDACTED
  INFO [8fe299d3] Finished in 0.261 seconds with exit status 0 (successful).
  INFO [1294a4a2] Running docker ps --filter label=service=project --filter label=destination=instance --filter label=role=workers --format "{{.Names}}" | while read line; do echo ${line#project-workers-instance-}; done on REDACTED
  INFO [1294a4a2] Finished in 0.190 seconds with exit status 0 (successful).
  INFO [99b987e3] Running /usr/bin/env sh -c 'docker ps --latest --format '\''{{.Names}}'\'' --filter label=service=project --filter label=destination=instance --filter label=role=workers --filter status=running --filter status=restarting --filter ancestor=$(docker image ls --filter reference=ghcr.io/acme/project:latest-instance --format '\''{{.ID}}'\'') ; docker ps --latest --format '\''{{.Names}}'\'' --filter label=service=project --filter label=destination=instance --filter label=role=workers --filter status=running --filter status=restarting' | head -1 | while read line; do echo ${line#project-workers-instance-}; done on REDACTED
  INFO [99b987e3] Finished in 0.271 seconds with exit status 0 (successful).
Start container with version 1012e116ced31df3484c03f2e0611321e0773337 (or reboot if already running)...
  INFO [96d7235c] Running /usr/bin/env mkdir -p .kamal/apps/project-instance/assets/extracted/web-1012e116ced31df3484c03f2e0611321e0773337 && docker container rm project-web-instance-assets 2> /dev/null || true && docker container create --name project-web-instance-assets ghcr.io/acme/project:1012e116ced31df3484c03f2e0611321e0773337 && docker container cp -L project-web-instance-assets:/rails/public/assets/. .kamal/apps/project-instance/assets/extracted/web-1012e116ced31df3484c03f2e0611321e0773337 && docker container rm project-web-instance-assets on REDACTED
  INFO [96d7235c] Finished in 0.985 seconds with exit status 0 (successful).
  INFO [51b42a1b] Running /usr/bin/env sh -c 'docker ps --latest --format '\''{{.Names}}'\'' --filter label=service=project --filter label=destination=instance --filter label=role=web --filter status=running --filter status=restarting --filter ancestor=$(docker image ls --filter reference=ghcr.io/acme/project:latest-instance --format '\''{{.ID}}'\'') ; docker ps --latest --format '\''{{.Names}}'\'' --filter label=service=project --filter label=destination=instance --filter label=role=web --filter status=running --filter status=restarting' | head -1 | while read line; do echo ${line#project-web-instance-}; done on REDACTED
  INFO [51b42a1b] Finished in 0.275 seconds with exit status 0 (successful).
  INFO [c5a6892e] Running /usr/bin/env mkdir -p .kamal/apps/project-instance/assets/volumes/web-1012e116ced31df3484c03f2e0611321e0773337 ; cp -rnT .kamal/apps/project-instance/assets/extracted/web-1012e116ced31df3484c03f2e0611321e0773337 .kamal/apps/project-instance/assets/volumes/web-1012e116ced31df3484c03f2e0611321e0773337 on REDACTED
  INFO [c5a6892e] Finished in 0.179 seconds with exit status 0 (successful).
Running the pre-app-boot hook...
  INFO [ec00bf1e] Running /usr/bin/env .kamal/hooks/pre-app-boot as n3ph@localhost
Releasing the deploy lock...
  Finished all in 54.1 seconds
  ERROR (Kamal::Cli::HookError): Hook `pre-app-boot` failed:
.kamal/hooks/pre-app-boot exit status: 256
.kamal/hooks/pre-app-boot stdout: Launching command with version 1012e116ced31df3484c03f2e0611321e0773337 from new container...
  INFO [6317f936] Running docker login ghcr.io -u [REDACTED] -p [REDACTED] on REDACTED
  INFO [6317f936] Finished in 1.476 seconds with exit status 0 (successful).
  INFO [389b7082] Running docker run --rm --network kamal --env PORT="3000" --env RAILS_ENV="staging" --env-file .kamal/apps/project-instance/env/roles/web.env --log-opt max-size="10m" --volume /storage/project/active_storage:/data --volume /storage/project/schema_cache:/rails/tmp/schema_cache --network "private" ghcr.io/acme/project:1012e116ced31df3484c03f2e0611321e0773337 ./bin/rails db:prepare on REDACTED
  ERROR (SSHKit::Command::Failed): Exception while executing on host REDACTED: docker exit status: 125
docker stdout: Nothing written
docker stderr: docker: open .kamal/apps/project-instance/env/roles/web.env: no such file or directory

Run 'docker run --help' for more information

Launching command with version 1012e116ced31df3484c03f2e0611321e0773337 from new container...
  INFO [d16795b0] Running docker login ghcr.io -u [REDACTED] -p [REDACTED] on REDACTED
  INFO [d16795b0] Finished in 1.485 seconds with exit status 0 (successful).
  INFO [d0aee741] Running docker run --rm --network kamal --env PORT="3000" --env RAILS_ENV="staging" --env-file .kamal/apps/project-instance/env/roles/web.env --log-opt max-size="10m" --volume /storage/project/active_storage:/data --volume /storage/project/schema_cache:/rails/tmp/schema_cache --network "private" ghcr.io/acme/project:1012e116ced31df3484c03f2e0611321e0773337 ./bin/rails db:seed on REDACTED
  ERROR (SSHKit::Command::Failed): Exception while executing on host REDACTED: docker exit status: 125
docker stdout: Nothing written
docker stderr: docker: open .kamal/apps/project-instance/env/roles/web.env: no such file or directory

Run 'docker run --help' for more information

Launching command with version 1012e116ced31df3484c03f2e0611321e0773337 from new container...
  INFO [ec3a44dc] Running docker login ghcr.io -u [REDACTED] -p [REDACTED] on REDACTED
  INFO [ec3a44dc] Finished in 1.401 seconds with exit status 0 (successful).
  INFO [364c910b] Running docker run --rm --network kamal --env PORT="3000" --env RAILS_ENV="staging" --env-file .kamal/apps/project-instance/env/roles/web.env --log-opt max-size="10m" --volume /storage/project/active_storage:/data --volume /storage/project/schema_cache:/rails/tmp/schema_cache --network "private" ghcr.io/acme/project:1012e116ced31df3484c03f2e0611321e0773337 ./bin/rails db:schema:cache:dump on REDACTED
  ERROR (SSHKit::Command::Failed): Exception while executing on host REDACTED: docker exit status: 125
docker stdout: Nothing written
docker stderr: docker: open .kamal/apps/project-instance/env/roles/web.env: no such file or directory

Run 'docker run --help' for more information

.kamal/hooks/pre-app-boot stderr: Nothing written

IIRC creating the folder and copying the secrets into this folder should happen before pre-app-boot hook?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions