workbench
![Software License][ico-license]
![Coverage Status][ico-scrutinizer]
![Total Downloads][ico-downloads]
, (*1)
CONSOLE FOR NEW PROJECT:
, (*2)
Table of Contents
Prerequisites
Install
This package can be installed through Composer., (*3)
``` bash
composer require padosoft/workbench, (*4)
You must install this service provider.
``` php
// config/app.php
'provider' => [
...
Padosoft\Workbench\WorkbenchServiceProvider::class,
...
];
You can publish the config file of this package with this command:
``` bash
php artisan vendor:publish --provider="Padosoft\Workbench\WorkbenchServiceProvider", (*5)
The following config file will be published in `config/workbench.php`
``` php
[
]
Sometimes in case of problem you can use:
bash
php artisan config:clear
, (*6)
Usage
php artisan workbench:new, (*7)
l'option --help mostra i parametri, (*8)
php artisan workbench:new --help
Usage:
workbench:new [options] [--] [] [], (*9)
Arguments:, (*10)
action create or delete, (*11)
domain domain name, (*12)
Options:, (*13)
-t, --type[=TYPE] laravel, normal, laravel_package or agnostic_package, (*14)
-d, --dirtype[=DIRTYPE] project dir type, public or private, path set in config, (*15)
-g, --git[=GIT] github or bitbucket, (*16)
-u, --user[=USER] git user, (*17)
-p, --password[=PASSWORD] git password, (*18)
-e, --email[=EMAIL] git email, (*19)
-o, --organization[=ORGANIZATION] organization in github or bitbucket, (*20)
-s, --silent no questions, (*21)
--sshhost[=SSHHOST] host ssh
--sshuser[=SSHUSER] user ssh
--sshpassword[=SSHPASSWORD] password ssh
--filehosts add or remove in local file /etc/hosts
--packagename[=PACKAGENAME] name of package
--packagedescr[=PACKAGEDESCR] description of package
--packagekeywords[=PACKAGEKEYWORDS] keywords of package
-h, --help Display this help message, (*22)
-q, --quiet Do not output any message, (*23)
-V, --version Display this application version, (*24)
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question, (*25)
--env[=ENV] The environment the command should run under.
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug, (*26)
Help:, (*27)
The workbench:new ...., (*28)
In the case of the package the part of virtualhost is not required, if inserted in the option is ignored, (*29)
Example with parameters, (*30)
Laravel create:, (*31)
php artisan workbench:new create laravelsite -t laravel -d public -g github -u alevento -p******** -e ale@mail.it -o b2msrl --sshhost=192.168.0.29 --sshuser=root --sshpassword=********* --packagename=laravelsite --packagedescr=descr --packagekeywords=descr, (*32)
Laravel package create:, (*33)
Y:\Public\laravel-packages\www\laravel\5.2.x>php artisan workbench:new create laravelpackage -t laravel_package -d public -g github -u user -p********** -e ale@mail.it -o b2msrl --packagename=laravelpackage --packagedescr=descr --packagekeywords=descr, (*34)
Agnostic package create:, (*35)
Y:\Public\laravel-packages\www\laravel\5.2.x>php artisan workbench:new create agnosticpackage -t agnostic_package -d public -g github -u user -p******** -e ale@mail.it -o b2msrl --packagename=agnosticpackage --packagedescr=descr --packagekeywords=descr, (*36)
Silent create:, (*37)
Y:\Public\laravel-packages\www\laravel\5.2.x>php artisan workbench:new create laravelsilent --silent, (*38)
In silent mode
In silent mode, the parameters must be filled in workbench.php, (*39)
Parameters in workbench.php config file:, (*40)
return [, (*41)
'action' => env(
'WORKBENCH_ACTION',
'create'
),
'type' => env(
'WORKBENCH_TYPE',
'laravel'
),
'dir' => env(
'WORKBENCH_DIR',
'public'
),
'diraccess' => [
'private' => [
'apache' => env('WORKBENCH_DIR_PRIVATE_APACHE','/var/www/html/private/'),
'local' => env('WORKBENCH_DIR_PRIVATE_LOCAL','Y:/private/'),
'packages' => env('WORKBENCH_DIR_PRIVATE_PACKAGES','Y:/private/laravel-packages/www/packages/'),
'doc' => env('WORKBENCH_DIR_PRIVATE_DOC','Y:/private/laravel-packages/www/doc/'),
],
'public' => [
'apache' => env('WORKBENCH_DIR_PUBLIC_APACHE','/var/www/html/public/'),
'local' => env('WORKBENCH_DIR_PUBLIC_LOCAL','Y:/public/'),
'packages' => env('WORKBENCH_DIR_PUBLIC_PACKAGES','Y:/public/laravel-packages/www/packages/'),
'doc' => env('WORKBENCH_DIR_PUBLIC_DOC','Y:/Public/laravel-packages/www/doc/'),
],
],
'dirtype' => env(
'WORKBENCH_DIRTYPE',
'public'
),
'attemps' => env( 'WORKBENCH_ATTEMPS',
'5'
),
'git' => [
'hosting' => env('WORKBENCH_GIT_HOSTING', 'github'),
'action' => env('WORKBENCH_GIT_ACTION', 'push'),
'user' => env('WORKBENCH_GIT_USER', ''),
'password' => env('WORKBENCH_GIT_PASSWORD', ''),
'email' => env('WORKBENCH_GIT_EMAIL', ''),
],
'organization' => env('WORKBENCH_GIT_GITHUB_ORGANIZATION', 'padosoft'),
'ssh' => [
'server' => env('WORKBENCH_SSH_SERVER', '192.168.0.29'),
'user' => env('WORKBENCH_SSH_USER', ''),
'password' => env('WORKBENCH_SSH_SERVER', ''),
],
'type_repository' => [
'laravel' => env('WORKBENCH_TYPE_REPOSITORY_LARAVEL', 'laravel5.2.x-skeleton'),
'normal' => env('WORKBENCH_TYPE_REPOSITORY_NORMAL', ''),
'laravel_package' => env('WORKBENCH_TYPE_REPOSITORY_LARAVEL_PACKAGE', 'laravel5.2.x-package-skeleton'),
'agnostic_package' => env('WORKBENCH_TYPE_REPOSITORY_AGNOSTIC_PACKAGE', 'package-skeleton'),
],
'substitute' => [
'author' =>env('WORKBENCH_SUBSTITUTION_AUTHOR', 'Padosoft'),
'emailauthor' =>env('WORKBENCH_SUBSTITUTION_EMAILAUTHOR', 'helpdesk@padosoft.com'),
'siteauthor' =>env('WORKBENCH_SUBSTITUTION_SITEAUTHOR', 'www.padosoft.com'),
'vendor' =>env('WORKBENCH_SUBSTITUTION_VENDOR', 'Padosoft'),
'files' =>env('WORKBENCH_SUBSTITUTION_FILES', 'readme.md,changelog.md,license.md,travis.yml,composer.json,tests/config/sedCommand.sh,tests/config/sedCommandProvider.sh'),
],
];, (*42)
Example
SCREENSHOOTS
CONSOLE FOR NEW PROJECT:, (*43)
, (*44)
CONSOLE FOR NEW PACKAGE:, (*45)
, (*46)
CONSOLE FOR VERSIONING OF PACKAGE:, (*47)
, (*48)
Change Log
Please see CHANGELOG for more information what has changed recently., (*49)
Testing
Contributing
Please see CONTRIBUTING and CONDUCT for details., (*50)
Security
If you discover any security related issues, please email instead of using the issue tracker., (*51)
API Documentation
Please see API documentation at http://padosoft.github.io/workbench, (*52)
Credits
About Padosoft
Padosoft is a software house based in Florence, Italy. Specialized in E-commerce and web sites., (*55)
License
The MIT License (MIT). Please see License File for more information., (*56)