Lucky app (Crystal) deploy fail

Hey,

I am trying to deploy a simple Lucky app (Crystal), however I am getting a strange exception. The error is from Crystal, the exception is triggered when the watch.yml file is missing. It looks like the aforementioned file is missing. Locally, the app is working absolutely fine. Here is the log. Much appreciated.

Recent Logs
2022-06-24T20:04:37.000 [info] Starting virtual machine
2022-06-24T20:04:37.000 [info] [    0.023912] PCI: Fatal: No config space access function found
2022-06-24T20:04:37.000 [info] Starting init (commit: e21acb3)...
2022-06-24T20:04:37.000 [info] Preparing to run: `./webserver` as root
2022-06-24T20:04:37.000 [info] 2022/06/24 20:04:37 listening on [fdaa:0:714b:a7b:b9b7:12ed:bced:2]:22 (DNS: [fdaa::3]:53)
2022-06-24T20:04:37.000 [info] Unhandled exception: Expected config file for the watcher at ./config/watch.yml (Exception)
2022-06-24T20:04:38.000 [info]   from /usr/share/crystal/src/file.cr:650:26 in 'settings'
2022-06-24T20:04:38.000 [info]   from /webserver_build/lib/lucky/src/lucky/server_settings.cr:9:5 in '__crystal_main'
2022-06-24T20:04:38.000 [info]   from /usr/share/crystal/src/crystal/main.cr:115:5 in 'main'
2022-06-24T20:04:38.000 [info]   from src/env/__libc_start_main.c:94:2 in 'libc_start_main_stage2'
2022-06-24T20:04:38.000 [info] Main child exited normally with code: 1
2022-06-24T20:04:38.000 [info] Starting clean up.
2022-06-24T20:04:44.000 [info] Starting instance
2022-06-24T20:04:44.000 [info] Configuring virtual machine
2022-06-24T20:04:44.000 [info] Pulling container image
2022-06-24T20:04:45.000 [info] Unpacking image
2022-06-24T20:04:45.000 [info] Preparing kernel init
2022-06-24T20:04:45.000 [info] Configuring firecracker
2022-06-24T20:04:45.000 [info] Starting virtual machine
2022-06-24T20:04:45.000 [info] [    0.023043] PCI: Fatal: No config space access function found
2022-06-24T20:04:45.000 [info] Starting init (commit: e21acb3)...
2022-06-24T20:04:45.000 [info] Preparing to run: `./webserver` as root
2022-06-24T20:04:45.000 [info] 2022/06/24 20:04:45 listening on [fdaa:0:714b:a7b:b9b7:12ed:bced:2]:22 (DNS: [fdaa::3]:53)
2022-06-24T20:04:45.000 [info] Unhandled exception: Expected config file for the watcher at ./config/watch.yml (Exception)
2022-06-24T20:04:45.000 [info]   from /usr/share/crystal/src/file.cr:650:26 in 'settings'
2022-06-24T20:04:45.000 [info]   from /webserver_build/lib/lucky/src/lucky/server_settings.cr:9:5 in '__crystal_main'
2022-06-24T20:04:45.000 [info]   from /usr/share/crystal/src/crystal/main.cr:115:5 in 'main'
2022-06-24T20:04:45.000 [info]   from src/env/__libc_start_main.c:94:2 in 'libc_start_main_stage2'
2022-06-24T20:04:46.000 [info] Main child exited normally with code: 1
2022-06-24T20:04:46.000 [info] Starting clean up.
***v0 failed - Failed due to unhealthy allocations - no stable job version to auto revert to and deploying as v1 

It’s crashing because it can’t find a config file for a “watcher”. I’m not super familiar with Lucky, but this sounds like it might be a package that is used for local development.

You may need to tell Lucky it’s running in production, or make sure that library is meant to be installed, or even add the config file it’s asking for.

Hi all! it is my first post here, but I am a huge fan of the services fly.io is building and the Crystal language.

Just wanna mention that the frontpage of https://fly.io incorrectly points the main Crystal-lang logo to
Run a Node App · Fly Docs
where it SHOULD be
Run a Crystal App · Fly Docs

I also submitted an application +CV to work at fly.io as a Ruby developer, would love to help with these projects. Ping the recruiters, please! :wink: