Admin package
Pulsar is an application that generates a control panel where you start creating custom solutions, provides the resources necessary for any web application., (*2)
1 - After install Laravel framework, execute on console:, (*3)
composer require syscover/pulsar-admin
Register service provider, on file config/app.php add to providers array, (*4)
Syscover\Admin\AdminServiceProvider::class,
2 - Execute publish command, (*5)
php artisan vendor:publish --provider="Syscover\Admin\AdminServiceProvider"
3 - Register client and pulsar.auth middlewares on file app/Http/Kernel.php and add to routeMiddleware array, (*6)
... 'client' => \Laravel\Passport\Http\Middleware\CheckClientCredentials::class, 'pulsar.auth' => \Syscover\Admin\Middleware\Authenticate::class ...
4 - Execute optimize command load new classes, (*7)
composer dump-autoload
5 - Config laravel queue, in file config/queue.php replace database connection by, (*8)
'database' => [ 'driver' => 'database', 'table' => 'admin_job', 'queue' => 'default', 'retry_after' => 90, ],
'failed' => [ 'database' => env('DB_CONNECTION', 'mysql'), 'table' => 'admin_failed_jobs', ],
after that set your QUEUE_CONNECTION variable environment with database value, (*9)
QUEUE_CONNECTION=database
6 - And execute migrations and seed database, (*10)
php artisan queue:table php artisan migrate php artisan db:seed --class="AdminTableSeeder"
7 - Execute command to load all updates, (*11)
php artisan migrate --path=vendor/syscover/pulsar-admin/src/database/migrations/updates
8 - include this arrays in config/auth.php, (*12)
Set this default values, for laravel passport can create pulsar user, (*13)
'defaults' => [ 'guard' => 'admin', 'passwords' => 'adminPasswordBroker', ],
Inside guards array, (*14)
// Api guard get the auth from provider defined un default guard, // and to define a default guard, this must to be defined like session driver 'admin' => [ 'driver' => 'session', 'provider' => 'adminUser', ], 'api' => [ 'driver' => 'passport', 'provider' => 'adminUser', ],
Inside providers array, (*15)
'adminUser' => [ 'driver' => 'eloquent', 'model' => Syscover\Admin\Models\User::class, ],
Inside passwords array, (*16)
'adminPasswordBroker' => [ 'provider' => 'adminUser', 'table' => 'admin_password_resets', 'expire' => 60, ],
9 - Set base lang application and panel url in .env file, (*17)
ADMIN_BASE_LANG=en ADMIN_PANEL_URL=http://panel.mydomain.com
10 - Add graphQL routes to graphql/schema.graphql file, (*18)
# Core #import ./../vendor/syscover/pulsar-core/src/Syscover/Core/GraphQL/scalars.graphql #import ./../vendor/syscover/pulsar-core/src/Syscover/Core/GraphQL/inputs.graphql #import ./../vendor/syscover/pulsar-core/src/Syscover/Core/GraphQL/types.graphql # Admin types #import ./../vendor/syscover/pulsar-admin/src/Syscover/Admin/GraphQL/inputs.graphql #import ./../vendor/syscover/pulsar-admin/src/Syscover/Admin/GraphQL/types.graphql type Query { # Core #import ./../vendor/syscover/pulsar-core/src/Syscover/Core/GraphQL/queries.graphql # Admin queries #import ./../vendor/syscover/pulsar-admin/src/Syscover/Admin/GraphQL/queries.graphql } type Mutation { # Core #import ./../vendor/syscover/pulsar-core/src/Syscover/Core/GraphQL/mutations.graphql # Admin mutations #import ./../vendor/syscover/pulsar-admin/src/Syscover/Admin/GraphQL/mutations.graphql }
11 - When the installation is complete you can access these data, (*19)
user: admin@pulsar.local pasword: 123456
12 - To run unit testing, (*20)
./vendor/bin/phpunit