laravel-vapor

My jobs are not being executed by the queue lambda


My understanding is that vapor sets the config for the queue driver to sqs so all jobs are executed on the queue lambda. I am dispatching jobs and can see clearly they are not running on the queue lambda. Did I miss something? env.production does not have an entry for queue_driver as assuming vapor injects it as it does in my other projects.

//In a controller
RenamePhoto::dispatch($photo_id,$name);

class RenamePhoto implements ShouldQueue // so we are clear here

//RenamePhoto constructor
Log::info("Adding to the Rename Process ". $photo_id);

//RenamePhoto handle
Log::info("Processing rename of photo ". $this->photo_id. ' to '.$this->name);

Both those logs show up on the HTTP logs

Laravel Framework 9.24.0

Laravel Vapor 1.42.0


Solution

  • This was caused by me missing an update to Laravel in config/queue.php. QUEUE_DRIVER became QUEUE_CONNECTION and a bunch of values needed by aws were added as env values in the sqs section. Hope this helps someone moving an older project to Vapor.

    See https://github.com/laravel/laravel/blob/9.x/config/queue.php