Exception
The /var/www/sportbook-backend/bootstrap/cache directory must be present and writable. Exception thrown with message "The /var/www/sportbook-backend/bootstrap/cache directory must be present and writable." Stacktrace: #10 Exception in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php:177 #9 Illuminate\Foundation\PackageManifest:write in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php:136 #8 Illuminate\Foundation\PackageManifest:build in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php:106 #7 Illuminate\Foundation\PackageManifest:getManifest in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php:89 #6 Illuminate\Foundation\PackageManifest:config in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php:78 #5 Illuminate\Foundation\PackageManifest:aliases in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/RegisterFacades.php:26 #4 Illuminate\Foundation\Bootstrap\RegisterFacades:bootstrap in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:237 #3 Illuminate\Foundation\Application:bootstrapWith in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:153 #2 Illuminate\Foundation\Http\Kernel:bootstrap in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:137 #1 Illuminate\Foundation\Http\Kernel:sendRequestThroughRouter in /var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:111 #0 Illuminate\Foundation\Http\Kernel:handle in /var/www/sportbook-backend/public/index.php:54
10
Exception
/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php177
9
Illuminate\Foundation\PackageManifest write
/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php136
8
Illuminate\Foundation\PackageManifest build
/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php106
7
Illuminate\Foundation\PackageManifest getManifest
/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php89
6
Illuminate\Foundation\PackageManifest config
/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php78
5
Illuminate\Foundation\PackageManifest aliases
/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/RegisterFacades.php26
4
Illuminate\Foundation\Bootstrap\RegisterFacades bootstrap
/vendor/laravel/framework/src/Illuminate/Foundation/Application.php237
3
Illuminate\Foundation\Application bootstrapWith
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php153
2
Illuminate\Foundation\Http\Kernel bootstrap
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php137
1
Illuminate\Foundation\Http\Kernel sendRequestThroughRouter
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php111
0
Illuminate\Foundation\Http\Kernel handle
/public/index.php54
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php
            return [];
        }
 
        return json_decode(file_get_contents(
            $this->basePath.'/composer.json'
        ), true)['extra']['laravel']['dont-discover'] ?? [];
    }
 
    /**
     * Write the given manifest array to disk.
     *
     * @param  array  $manifest
     * @return void
     *
     * @throws \Exception
     */
    protected function write(array $manifest)
    {
        if (! is_writable($dirname = dirname($this->manifestPath))) {
            throw new Exception("The {$dirname} directory must be present and writable.");
        }
 
        $this->files->replace(
            $this->manifestPath, '<?php return '.var_export($manifest, true).';'
        );
    }
}
 
Arguments
  1. "The /var/www/sportbook-backend/bootstrap/cache directory must be present and writable."
    
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php
     */
    public function build()
    {
        $packages = [];
 
        if ($this->files->exists($path = $this->vendorPath.'/composer/installed.json')) {
            $installed = json_decode($this->files->get($path), true);
 
            $packages = $installed['packages'] ?? $installed;
        }
 
        $ignoreAll = in_array('*', $ignore = $this->packagesToIgnore());
 
        $this->write(collect($packages)->mapWithKeys(function ($package) {
            return [$this->format($package['name']) => $package['extra']['laravel'] ?? []];
        })->each(function ($configuration) use (&$ignore) {
            $ignore = array_merge($ignore, $configuration['dont-discover'] ?? []);
        })->reject(function ($configuration, $package) use ($ignore, $ignoreAll) {
            return $ignoreAll || in_array($package, $ignore);
        })->filter()->all());
    }
 
    /**
     * Format the given package name.
     *
     * @param  string  $package
     * @return string
     */
    protected function format($package)
    {
        return str_replace($this->vendorPath.'/', '', $package);
    }
 
    /**
     * Get all of the package names that should be ignored.
     *
     * @return array
     */
    protected function packagesToIgnore()
    {
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php
    public function config($key)
    {
        return collect($this->getManifest())->flatMap(function ($configuration) use ($key) {
            return (array) ($configuration[$key] ?? []);
        })->filter()->all();
    }
 
    /**
     * Get the current package manifest.
     *
     * @return array
     */
    protected function getManifest()
    {
        if (! is_null($this->manifest)) {
            return $this->manifest;
        }
 
        if (! is_file($this->manifestPath)) {
            $this->build();
        }
 
        return $this->manifest = is_file($this->manifestPath) ?
            $this->files->getRequire($this->manifestPath) : [];
    }
 
    /**
     * Build the manifest and write it to disk.
     *
     * @return void
     */
    public function build()
    {
        $packages = [];
 
        if ($this->files->exists($path = $this->vendorPath.'/composer/installed.json')) {
            $installed = json_decode($this->files->get($path), true);
 
            $packages = $installed['packages'] ?? $installed;
        }
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php
 
    /**
     * Get all of the aliases for all packages.
     *
     * @return array
     */
    public function aliases()
    {
        return $this->config('aliases');
    }
 
    /**
     * Get all of the values for all packages for the given configuration name.
     *
     * @param  string  $key
     * @return array
     */
    public function config($key)
    {
        return collect($this->getManifest())->flatMap(function ($configuration) use ($key) {
            return (array) ($configuration[$key] ?? []);
        })->filter()->all();
    }
 
    /**
     * Get the current package manifest.
     *
     * @return array
     */
    protected function getManifest()
    {
        if (! is_null($this->manifest)) {
            return $this->manifest;
        }
 
        if (! is_file($this->manifestPath)) {
            $this->build();
        }
 
        return $this->manifest = is_file($this->manifestPath) ?
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php
    }
 
    /**
     * Get all of the service provider class names for all packages.
     *
     * @return array
     */
    public function providers()
    {
        return $this->config('providers');
    }
 
    /**
     * Get all of the aliases for all packages.
     *
     * @return array
     */
    public function aliases()
    {
        return $this->config('aliases');
    }
 
    /**
     * Get all of the values for all packages for the given configuration name.
     *
     * @param  string  $key
     * @return array
     */
    public function config($key)
    {
        return collect($this->getManifest())->flatMap(function ($configuration) use ($key) {
            return (array) ($configuration[$key] ?? []);
        })->filter()->all();
    }
 
    /**
     * Get the current package manifest.
     *
     * @return array
     */
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/RegisterFacades.php
use Illuminate\Foundation\PackageManifest;
use Illuminate\Support\Facades\Facade;
 
class RegisterFacades
{
    /**
     * Bootstrap the given application.
     *
     * @param  \Illuminate\Contracts\Foundation\Application  $app
     * @return void
     */
    public function bootstrap(Application $app)
    {
        Facade::clearResolvedInstances();
 
        Facade::setFacadeApplication($app);
 
        AliasLoader::getInstance(array_merge(
            $app->make('config')->get('app.aliases', []),
            $app->make(PackageManifest::class)->aliases()
        ))->register();
    }
}
 
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php
    {
        $this->register(new EventServiceProvider($this));
        $this->register(new LogServiceProvider($this));
        $this->register(new RoutingServiceProvider($this));
    }
 
    /**
     * Run the given array of bootstrap classes.
     *
     * @param  string[]  $bootstrappers
     * @return void
     */
    public function bootstrapWith(array $bootstrappers)
    {
        $this->hasBeenBootstrapped = true;
 
        foreach ($bootstrappers as $bootstrapper) {
            $this['events']->dispatch('bootstrapping: '.$bootstrapper, [$this]);
 
            $this->make($bootstrapper)->bootstrap($this);
 
            $this['events']->dispatch('bootstrapped: '.$bootstrapper, [$this]);
        }
    }
 
    /**
     * Register a callback to run after loading the environment.
     *
     * @param  \Closure  $callback
     * @return void
     */
    public function afterLoadingEnvironment(Closure $callback)
    {
        $this->afterBootstrapping(
            LoadEnvironmentVariables::class, $callback
        );
    }
 
    /**
     * Register a callback to run before a bootstrapper.
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
 
        Facade::clearResolvedInstance('request');
 
        $this->bootstrap();
 
        return (new Pipeline($this->app))
                    ->send($request)
                    ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
                    ->then($this->dispatchToRouter());
    }
 
    /**
     * Bootstrap the application for HTTP requests.
     *
     * @return void
     */
    public function bootstrap()
    {
        if (! $this->app->hasBeenBootstrapped()) {
            $this->app->bootstrapWith($this->bootstrappers());
        }
    }
 
    /**
     * Get the route dispatcher callback.
     *
     * @return \Closure
     */
    protected function dispatchToRouter()
    {
        return function ($request) {
            $this->app->instance('request', $request);
 
            return $this->router->dispatch($request);
        };
    }
 
    /**
     * Call the terminate method on any terminable middleware.
     *
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
        $this->app['events']->dispatch(
            new RequestHandled($request, $response)
        );
 
        return $response;
    }
 
    /**
     * Send the given request through the middleware / router.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    protected function sendRequestThroughRouter($request)
    {
        $this->app->instance('request', $request);
 
        Facade::clearResolvedInstance('request');
 
        $this->bootstrap();
 
        return (new Pipeline($this->app))
                    ->send($request)
                    ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
                    ->then($this->dispatchToRouter());
    }
 
    /**
     * Bootstrap the application for HTTP requests.
     *
     * @return void
     */
    public function bootstrap()
    {
        if (! $this->app->hasBeenBootstrapped()) {
            $this->app->bootstrapWith($this->bootstrappers());
        }
    }
 
    /**
/var/www/sportbook-backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
    public function __construct(Application $app, Router $router)
    {
        $this->app = $app;
        $this->router = $router;
 
        $this->syncMiddlewareToRouter();
    }
 
    /**
     * Handle an incoming HTTP request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function handle($request)
    {
        try {
            $request->enableHttpMethodParameterOverride();
 
            $response = $this->sendRequestThroughRouter($request);
        } catch (Throwable $e) {
            $this->reportException($e);
 
            $response = $this->renderException($request, $e);
        }
 
        $this->app['events']->dispatch(
            new RequestHandled($request, $response)
        );
 
        return $response;
    }
 
    /**
     * Send the given request through the middleware / router.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    protected function sendRequestThroughRouter($request)
/var/www/sportbook-backend/public/index.php
*/
 
$app = require_once __DIR__.'/../bootstrap/app.php';
 
/*
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request
| through the kernel, and send the associated response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have prepared for them.
|
*/
 
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
 
$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()
);
 
$response->send();
 
$kernel->terminate($request, $response);
 
if (file_exists(__DIR__.'/../storage/framework/maintenance.php')) {
    require __DIR__.'/../storage/framework/maintenance.php';
}

Environment & details:

empty
empty
empty
empty
empty
Key Value
SCRIPT_URL
"/"
SCRIPT_URI
"http://3.212.165.21/"
HTTP_ACCEPT
"*/*"
HTTP_USER_AGENT
"claudebot"
HTTP_HOST
"3.212.165.21"
PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
SERVER_SIGNATURE
"<address>Apache/2.4.41 (Ubuntu) Server at 3.212.165.21 Port 80</address>\n"
SERVER_SOFTWARE
"Apache/2.4.41 (Ubuntu)"
SERVER_NAME
"3.212.165.21"
SERVER_ADDR
"172.31.92.163"
SERVER_PORT
"80"
REMOTE_ADDR
"34.204.52.16"
DOCUMENT_ROOT
"/var/www/sportbook-backend/public"
REQUEST_SCHEME
"http"
CONTEXT_PREFIX
""
CONTEXT_DOCUMENT_ROOT
"/var/www/sportbook-backend/public"
SERVER_ADMIN
"[no address given]"
SCRIPT_FILENAME
"/var/www/sportbook-backend/public/index.php"
REMOTE_PORT
"55824"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/1.1"
REQUEST_METHOD
"GET"
QUERY_STRING
""
REQUEST_URI
"/"
SCRIPT_NAME
"/index.php"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1711650431.713
REQUEST_TIME
1711650431
APP_DEBUG
"false"
SBB_APP_ENV
"development"
SBB_APP_DEBUG
"true"
SBB_APP_URL
"http://dotpanel.dev.sportbook.dotworkers.net"
APP_CDN
"//s3.amazonaws.com/dotworkers-llc"
XML_SPORTBOOK
"http://api.v4.sportsback.c5.sportsbookplay.com"
SBB_DB_CONNECTION
"pgsql"
SBB_DB_HOST
"develop.cnuy733i9jyh.us-east-1.rds.amazonaws.com"
SBB_DB_DATABASE
"sportbook"
SBB_DB_USERNAME
"develop"
SBB_DB_PASSWORD
"OLYsjVHWZaaqYPL1jhQA"
SBB_DB_SCHEMA
"pmc_box"
BROADCAST_DRIVER
"redis"
QUEUE_CONNECTION
"redis"
LARAVEL_ECHO_PORT
"6001"
UPLOAD_DRIVER
"s3"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"w9JDPrR2PA"
REDIS_PORT
"6379"
PUSHER_APP_ID
""
PUSHER_KEY
""
PUSHER_SECRET
""
LOG_CHANNEL
"daily"
Key Value
APP_DEBUG
"false"
SBB_APP_ENV
"development"
SBB_APP_DEBUG
"true"
SBB_APP_URL
"http://dotpanel.dev.sportbook.dotworkers.net"
APP_CDN
"//s3.amazonaws.com/dotworkers-llc"
XML_SPORTBOOK
"http://api.v4.sportsback.c5.sportsbookplay.com"
SBB_DB_CONNECTION
"pgsql"
SBB_DB_HOST
"develop.cnuy733i9jyh.us-east-1.rds.amazonaws.com"
SBB_DB_DATABASE
"sportbook"
SBB_DB_USERNAME
"develop"
SBB_DB_PASSWORD
"OLYsjVHWZaaqYPL1jhQA"
SBB_DB_SCHEMA
"pmc_box"
BROADCAST_DRIVER
"redis"
QUEUE_CONNECTION
"redis"
LARAVEL_ECHO_PORT
"6001"
UPLOAD_DRIVER
"s3"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"w9JDPrR2PA"
REDIS_PORT
"6379"
PUSHER_APP_ID
""
PUSHER_KEY
""
PUSHER_SECRET
""
LOG_CHANNEL
"daily"
0. Whoops\Handler\PrettyPageHandler