मेरे पास एपीआई प्रमाणीकरण प्रदान करने के लिए पासपोर्ट का उपयोग करके लार्वा ऐप है। ऐप को पोस्ट-प्राप्त हुक के साथ गिट का उपयोग करके तैनात किया जाता है। पोस्ट-प्राप्त स्क्रिप्ट का हिस्सा एक संगीतकार स्थापित है। जब से मैंने पासपोर्ट शामिल किया है, जब भी मैं अपना ऐप तैनात करता हूं, एपीआई एक प्रमाणीकरण द्वार के पीछे वाले मार्गों पर टूट जाता है, नीचे चिपकने वाले स्टैक ट्रेस के साथ।लैरवेल ऐप की तैनाती ऐप तोड़ती है जब तक कि संगीत इंस्टॉल मैन्युअल रूप से चलाया जाता है
जब मैं ऐप के सर्वर पर जाता हूं और उसी पोस्ट composer install
कमांड को चलाता हूं जैसा कि मेरे पोस्ट-प्राप्त हुक में होता है, तो चीजें फिर से ठीक काम करती हैं।
मुझे तैनाती होने पर गिट से कोई त्रुटि संदेश नहीं दिखाई देता है, और ऐसा प्रतीत होता है कि जब मैं तैनाती करता हूं और मैन्युअल रूप से आदेश चलाता हूं तो मुझे composer install
से एक ही आउटपुट मिलता है।
यहाँ composer install
आदेश से तैनाती उत्पादन है:
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Nothing to install or update
Generating autoload files
> php artisan clear-compiled
The compiled class file has been removed.
> php artisan optimize
Generating optimized class loader
Compiling common classes
क्या यहाँ हो रहा है:
remote: Loading composer repositories with package information
remote: Installing dependencies (including require-dev) from lock file
remote: Nothing to install or update
remote: Generating autoload files
remote: > php artisan clear-compiled
remote: The compiled class file has been removed.
remote: > php artisan optimize
remote: Generating optimized class loader
remote: Compiling common classes
यहाँ और मैं क्या देख जब मैं आदेश मैन्युअल रूप से चलाना है? ऐसा लगता है कि तैनाती पासपोर्ट के कुछ घटक का पुराना संस्करण स्थापित कर रही है जिसे मैन्युअल रूप से composer install
चलाने के बाद ठीक किया गया है, लेकिन मुझे नुकसान हुआ है कि यह क्यों हो रहा है, और विशेष रूप से ऐसा क्यों होगा जब भी मैं एक नया तैनात करता हूं अद्यतन करें, भले ही composer.json या composer.lock में कोई बदलाव न हो।
यहाँ स्टैक ट्रेस ऊपर करने के लिए भेजा गया है:
[2017-01-04 20:36:37] production.ERROR: exception 'BadMethodCallException' with message 'Call to undefined method Illuminate\Database\Query\Builder::withAccessToken()' in /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2450
Stack trace:
#0 [internal function]: Illuminate\Database\Query\Builder->__call('withAccessToken', Array)
#1 [internal function]: Illuminate\Database\Query\Builder->withAccessToken(Object(Laravel\Passport\Token))
#2 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1469): call_user_func_array(Array, Array)
#3 [internal function]: Illuminate\Database\Eloquent\Builder->__call('withAccessToken', Array)
#4 [internal function]: Illuminate\Database\Eloquent\Builder->withAccessToken(Object(Laravel\Passport\Token))
#5 /home/portalvarius/app/production/bootstrap/cache/compiled.php(11801): call_user_func_array(Array, Array)
#6 /home/portalvarius/app/production/vendor/laravel/passport/src/Guards/TokenGuard.php(139): Illuminate\Database\Eloquent\Model->__call('withAccessToken', Array)
#7 /home/portalvarius/app/production/vendor/laravel/passport/src/Guards/TokenGuard.php(139): App\Models\User->withAccessToken(Object(Laravel\Passport\Token))
#8 /home/portalvarius/app/production/vendor/laravel/passport/src/Guards/TokenGuard.php(90): Laravel\Passport\Guards\TokenGuard->authenticateViaBearerToken(Object(Illuminate\Http\Request))
#9 /home/portalvarius/app/production/vendor/laravel/passport/src/PassportServiceProvider.php(251): Laravel\Passport\Guards\TokenGuard->user(Object(Illuminate\Http\Request))
#10 [internal function]: Laravel\Passport\PassportServiceProvider->Laravel\Passport\{closure}(Object(Illuminate\Http\Request))
#11 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Auth/RequestGuard.php(53): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#12 /home/portalvarius/app/production/bootstrap/cache/compiled.php(544): Illuminate\Auth\RequestGuard->user()
#13 /home/portalvarius/app/production/bootstrap/cache/compiled.php(548): Illuminate\Auth\RequestGuard->check()
#14 /home/portalvarius/app/production/app/Http/Middleware/Authenticate.php(20): Illuminate\Auth\RequestGuard->guest()
#15 /home/portalvarius/app/production/bootstrap/cache/compiled.php(10052): App\Http\Middleware\Authenticate->handle(Object(Illuminate\Http\Request), Object(Closure), 'api')
#16 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(33): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#17 /home/portalvarius/app/production/Api/V1/Http/Middleware/LogApiAccess.php(37): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#18 /home/portalvarius/app/production/bootstrap/cache/compiled.php(10052): Api\V1\Http\Middleware\LogApiAccess->handle(Object(Illuminate\Http\Request), Object(Closure))
#19 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(33): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#20 /home/portalvarius/app/production/bootstrap/cache/compiled.php(10160): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#21 /home/portalvarius/app/production/bootstrap/cache/compiled.php(10052): Illuminate\Routing\Middleware\SubstituteBindings->handle(Object(Illuminate\Http\Request), Object(Closure))
#22 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(33): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#23 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(49): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#24 /home/portalvarius/app/production/bootstrap/cache/compiled.php(10052): Illuminate\Routing\Middleware\ThrottleRequests->handle(Object(Illuminate\Http\Request), Object(Closure), '60', '1')
#25 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(33): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#26 /home/portalvarius/app/production/bootstrap/cache/compiled.php(10037): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#27 /home/portalvarius/app/production/bootstrap/cache/compiled.php(8339): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#28 /home/portalvarius/app/production/bootstrap/cache/compiled.php(8330): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request))
#29 /home/portalvarius/app/production/bootstrap/cache/compiled.php(8321): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
#30 /home/portalvarius/app/production/bootstrap/cache/compiled.php(2575): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
#31 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request))
#32 /home/portalvarius/app/production/bootstrap/cache/compiled.php(3371): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#33 /home/portalvarius/app/production/bootstrap/cache/compiled.php(10052): Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Object(Illuminate\Http\Request), Object(Closure))
#34 /home/portalvarius/app/production/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(33): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#35 /home/portalvarius/app/production/bootstrap/cache/compiled.php(10037): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#36 /home/portalvarius/app/production/bootstrap/cache/compiled.php(2519): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#37 /home/portalvarius/app/production/bootstrap/cache/compiled.php(2503): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
#38 /home/portalvarius/app/production/public/index.php(54): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#39 {main}
क्यों php artisan clear-compiled और php artisan आपके पोस्ट-प्राप्त हुक में ऑप्टिमाइज़ नहीं करते हैं? –
उन दो आदेशों को composer.json में पोस्ट-इंस्टॉल-सीएमडी स्क्रिप्ट के माध्यम से चलाया जाता है, और आप देख सकते हैं कि वे उपरोक्त चिपकने वाले आउटपुट में दौड़ रहे हैं। – ralbatross
ने भी "संगीतकार डंप" कमांड जोड़ने की कोशिश की ?? –