ngmy / webloyer Goto Github PK
View Code? Open in Web Editor NEWWebloyer is a web UI for managing Deployer deployments
License: MIT License
Webloyer is a web UI for managing Deployer deployments
License: MIT License
There is some validation set on the repository to ensure it is a valid URL, however this prevents you from being able to use SSH for the repository.
To fix this locally I have updated the file /app/Services/Form/Project/ProjectFormLaravelValidator.php
and changed required|url
to just required
next to repository
.
Not sure if this is the only place that needs updating?
I can now use repository URLs like so: [email protected]:company/project.git
Hi,
I'm testing your UI, seems cool for now.
I'm tryng to deploy a magento website so i used the basic magento recipe, but when i want to deploy i have an error :
ErrorException in DeploymentForm.php line 63: Array to string conversion in DeploymentForm.php line 63 at HandleExceptions->handleError('8', 'Array to string conversion', '/home/xxxxxxxx/webloyer/app/Services/Form/Deployment/DeploymentForm.php', '63', array('input' => array('_token' => 'jnVHgzYJTUQ2hIaO828ym2lWVYsZCuo6QfCULeqr', 'task' => 'deploy', 'status' => null, 'message' => null, 'project_id' => '1', 'user_id' => '1'), 'deployment' => object(Deployment))) in DeploymentForm.php line 63 at DeploymentForm->save(array('_token' => 'jnVHgzYJTUQ2hIaO828ym2lWVYsZCuo6QfCULeqr', 'task' => 'deploy', 'status' => null, 'message' => null, 'project_id' => '1', 'user_id' => '1')) in DeploymentsController.php line 72 at DeploymentsController->store(object(Request), object(Project)) at call_user_func_array(array(object(DeploymentsController), 'store'), array(object(Request), 'projects' => object(Project))) in compiled.php line 8899
I'm not sure when i did something wrong (server configuration / deployment configuration ?)
Here is my server config :
production:
host: XXXXXX.com
user: XXXXXX
password: XXXXXX
stage: production
deploy_path: /home/www/XXXXXX/magento
And my deployment config
Project Name XXXXXXXX - PROD
Recipe deployer-magento-recipe
Server XXXXXXXX
Repository URL https://gitlab.com/XXXXXXXX/XXXXXXXX.git
Stage production
Deploy Path
E-Mail Notification Recipient
If any idea, i'll take it :-)
Thx
I run into this when trying to install with php artisan webloyer:install -v
(-v for a more verbose error message).
My configuration:
Exception trace:
() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Input/ArrayInput.php:135
Illuminate\Foundation\Bootstrap\HandleExceptions->handleError() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Input/ArrayInput.php:135
Symfony\Component\Console\Input\ArrayInput->parse() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Input/Input.php:62
Symfony\Component\Console\Input\Input->bind() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Command/Command.php:221
Symfony\Component\Console\Command\Command->run() at /Users/bram/Sites/deploy/webloyer/vendor/laravel/framework/src/Illuminate/Console/Command.php:155
Illuminate\Console\Command->run() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Application.php:794
Symfony\Component\Console\Application->doRunCommand() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Application.php:186
Symfony\Component\Console\Application->doRun() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Application.php:117
Symfony\Component\Console\Application->run() at /Users/bram/Sites/deploy/webloyer/vendor/laravel/framework/src/Illuminate/Console/Application.php:64
Illuminate\Console\Application->call() at /Users/bram/Sites/deploy/webloyer/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:170
Illuminate\Foundation\Console\Kernel->call() at /Users/bram/Sites/deploy/webloyer/bootstrap/cache/compiled.php:6327
Illuminate\Support\Facades\Facade::__callStatic() at /Users/bram/Sites/deploy/webloyer/app/Console/Commands/Webloyer/Install.php:87
App\Console\Commands\Webloyer\Install->handle() at n/a:n/a
call_user_func_array() at /Users/bram/Sites/deploy/webloyer/bootstrap/cache/compiled.php:1257
Illuminate\Container\Container->call() at /Users/bram/Sites/deploy/webloyer/vendor/laravel/framework/src/Illuminate/Console/Command.php:169
Illuminate\Console\Command->execute() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Command/Command.php:256
Symfony\Component\Console\Command\Command->run() at /Users/bram/Sites/deploy/webloyer/vendor/laravel/framework/src/Illuminate/Console/Command.php:155
Illuminate\Console\Command->run() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Application.php:794
Symfony\Component\Console\Application->doRunCommand() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Application.php:186
Symfony\Component\Console\Application->doRun() at /Users/bram/Sites/deploy/webloyer/vendor/symfony/console/Application.php:117
Symfony\Component\Console\Application->run() at /Users/bram/Sites/deploy/webloyer/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:107
Illuminate\Foundation\Console\Kernel->handle() at /Users/bram/Sites/deploy/webloyer/artisan:35
Any suggestions on how to start debugging this?
I've been testing webloyer out and it looks awesome (thanks for making this happen).
I noticed that the console log output currently just has the ANSI escape codes in it instead of the actual colours. Looks like Sensio actually put out a little library that converts those to HTML colours so we can get full colorization going.
Why i can't login to server using ssh key ? no problem when i try using user/password
This is my server list yaml
webapp.server:
host: x.x.x.x
user: myname
identity_file: ~
stage: development
deploy_path: /home/myname/playground
this is my recipe
<?php
require 'recipe/common.php';
task('deploy', [
'deploy:prepare'
]);
this is error msg when i run deploy
[RuntimeException]
Unable to login with the provided credentials.
Exception trace:
() at phar:///var/www/webloyer/vendor/bin/dep/src/Server/Remote/PhpSecLib.php:89
Deployer\Server\Remote\PhpSecLib->connect() at phar:///var/www/webloyer/vendor/bin/dep/recipe/common.php:71
{closure}() at n/a:n/a
call_user_func() at phar:///var/www/webloyer/vendor/bin/dep/src/Task/Task.php:73
Deployer\Task\Task->run() at phar:///var/www/webloyer/vendor/bin/dep/src/Executor/SeriesExecutor.php:39
Deployer\Executor\SeriesExecutor->run() at phar:///var/www/webloyer/vendor/bin/dep/src/Console/TaskCommand.php:82
Deployer\Console\TaskCommand->execute() at phar:///var/www/webloyer/vendor/bin/dep/vendor/symfony/console/Command/Command.php:259
Symfony\Component\Console\Command\Command->run() at phar:///var/www/webloyer/vendor/bin/dep/vendor/symfony/console/Application.php:878
Symfony\Component\Console\Application->doRunCommand() at phar:///var/www/webloyer/vendor/bin/dep/vendor/symfony/console/Application.php:195
Symfony\Component\Console\Application->doRun() at phar:///var/www/webloyer/vendor/bin/dep/vendor/symfony/console/Application.php:126
Symfony\Component\Console\Application->run() at phar:///var/www/webloyer/vendor/bin/dep/src/Deployer.php:99
Deployer\Deployer->run() at phar:///var/www/webloyer/vendor/bin/dep/bin/dep:62
require() at /var/www/webloyer/vendor/bin/dep:4
deploy [-p|--parallel]
I got error on deployments page after delete old user.
error in this string: <td><?php echo e($deployment->user->email); ?></td>
because user not exists
You should consider adding a few screenshots considering this is a UI. Just my 2 cents...
Hello
chmod -R 777 storage
chmod -R 777 bootstrap/cache
should instead do a chown using the web server user. And update the resume to modify this command accordingly (f.e. www-data).
best,
When I start a deployment I get the following error:
ErrorException in DeploymentForm.php line 63:
Array to string conversion
---
at HandleExceptions->handleError('8', 'Array to string conversion', '/media/export/AvantSi/deployer/app/Services/Form/Deployment/DeploymentForm.php', '63', array('input' => array('_token' => 'MjGSJaR8SnJlzfKdx2Ik68UsO2wx7PqeehrOUg7U', 'task' => 'deploy', 'status' => null, 'message' => null, 'project_id' => '1', 'user_id' => '1'), 'deployment' => object(Deployment))) in DeploymentForm.php line 63
...
Hi,
What ever recipe I use, I always get this error:
PHP Fatal error: Call to undefined function set() in /home/bpicharles/html/webloyer2/storage/app/deploy_9bcd0680be5c0480c48194ca8171f964.php on line 3
PHP Stack trace:
PHP 1. {main}() /home/bpicharles/html/webloyer2/vendor/bin/dep:0
PHP 2. require() /home/bpicharles/html/webloyer2/vendor/bin/dep:4
PHP 3. require() phar:///home/bpicharles/html/webloyer2/vendor/bin/dep/bin/dep:106
It seem don't have deployer base function included, wired isn't it ?
Do I have miss something in my install or config ?
Thanx
Ubuntu 16.04.3 LTS
Deployer 6.0.5
PHP 7.1.13
installed without errors
try to use my working deploy.php, insert it's content to webloyer webinterface - server, and recipe
got black screened message http://dl4.joxi.net/drive/2018/01/28/0002/2219/137387/87/7d1c089344.jpg
on any release\rollback actions
and no auth tries from webloyer to testserver in testserver:/var/log/auth.log
how i can debug this error, and is webloyer compatible with Deployer 6.0.5 + PHP 7.1.13?
is it possible to use own-hosted ssh-repository, like git@server:repo.git ? i can only add https://github
I'm working on seeing if it's possible to tweak the project to add working (but perhaps unsupported) Windows compatibility.
The first barrier I'm working on is the Composer install scripts.
Is there any technical reason why you're copying the multi-select scripts but symlinking ajaxorg?
I'm tweaking the post-install to use 'php -r' and its built in functions instead of system-specific variants, but there's no equivalent call for 'ln -nfs', so I think that can be swapped out for a recursive copy if there isn't some other limitation.
Hey!
I was going to create my own web UI for Deployer (or Rocketeer), and while researching some bugs I find your package, which takes a very similar approach (obviously Laravel, calling the phar, but also queues, because of the Forward Agent etc., ansi to html etc)
I'm not really sure if I want to go the the trouble of creating my own version, so was interested in what your roadmap is, if you have anything planned. What I'm thinking of is:
And what I'm currently find a bit odd is the structure. I'm guessing because you just use it differently than me :) In my case, I usually have a lot of small projects, each their own user and a few different servers. So each server config is mostly just used once or twice, so I would more expect this to be inside of the Project itself, no need to seperate it (or at least be able to create a new server while creating a project).
Also, I usually have staging and production, which use the exact same git repo and recipe, only different environment (path or server), so would make more sense to have Projects have the base settings, and inside a project define environments that override settings. And then just choose, deploy on (dropdown->staging/production).
I'm curious of your thoughts :)
Webloyer runs on Laravel 5.2
This version of Laravel is not compatible with PHP 7.3 (the preg_match call in the validation class is incompatible with PHP 7.3)
I will attempt to update laravel to 5.8.*
hi @ngmy,
In my custom deployer script with own recipes i ask for certain things.
One is the branch that one wants to deploy.
As you just run the pure deploy tasks in the background and most probably use the quite mode, the questions asked use the default value.
Technically all good so far and understandable, i was just wrapping around my head on howto (based on your implementation) something like asking questions, taking the answers and putting them back into the job could be achieved?
Hi team,
I search to resolve to this issue. Thank you for your helpful
The failure message : :
`
FailureDeploiementMessage.txt
[RuntimeException]
Loading composer repositories with package information
Installing dependencies from lock file
Dependency resolution completed in 0.002 seconds
Analyzed 140 packages to resolve dependencies
Analyzed 380 rules to resolve dependencies
Package operations: 85 installs, 0 updates, 0 removals
Installs: cweagans/composer-patches:1.6.1, behat/transliterator:v1.2.0, doctrine/collections:v1.4.0, doctrine/lexer:v1.0.1, doctrine/inflector:v1.1.0, doctrine/cache:v1.6.1,
doctrine/annotations:v1.4.0, doctrine/common:v2.7.2, doctrine/dbal:v2.5.12, twig/twig:v1.33.0, symfony/polyfill-util:v1.3.0, paragonie/random_compat:v2.0.10,
symfony/polyfill-php70:v1.3.0, symfony/polyfill-php56:v1.3.0, symfony/polyfill-mbstring:v1.3.0, symfony/symfony:v3.2.7, symfony/polyfill-intl-icu:v1.3.0, psr/log:1.0.2, psr/cache:1.0.1,
doctrine/doctrine-cache-bundle:1.3.0, egeloen/json-builder:3.0.0, psr/http-message:1.0.1, guzzlehttp/psr7:1.4.2, guzzlehttp/promises:v1.3.1, guzzlehttp/guzzle:6.2.3,
eightpoints/guzzle-wsse-middleware:v4.2.0, eightpoints/guzzle-bundle:v5.3.0, excelwebzone/recaptcha-bundle:v1.4.6, willdurand/negotiation:v2.2.1, willdurand/jsonp-callback-validator:v1.1.0,
friendsofsymfony/rest-bundle:2.1.1, friendsofsymfony/user-bundle:dev-master fda6cbe, incenteev/composer-parameter-handler:v2.1.2, jdorn/sql-formatter:v1.2.17, phpoption/phpoption:1.5.0,
phpcollection/phpcollection:0.5.0, jms/parser-lib:1.0.0, jms/metadata:1.6.0, doctrine/instantiator:1.0.5, jms/serializer:1.6.0, knplabs/knp-menu:2.2.0, knplabs/knp-menu-bundle:2.1.3,
lexik/maintenance-bundle:v2.1.1, michelf/php-markdown:1.7.0, nelmio/api-doc-bundle:2.13.1, gedmo/doctrine-extensions:v2.4.27, stof/doctrine-extensions-bundle:v1.2.2, twig/extensions:v1.4.1,
symfony/security-acl:v3.0.0, sonata-project/exporter:1.7.1, sonata-project/datagrid-bundle:2.2.1, cocur/slugify:v2.5, sonata-project/core-bundle:3.3.0, sonata-project/cache:1.0.7,
sonata-project/block-bundle:3.3.2, sonata-project/admin-bundle:3.16.0, redcode/tree-bundle:dev-master 55bdc2c, composer/ca-bundle:1.0.7, sensiolabs/security-checker:v4.0.4,
sensio/distribution-bundle:v5.0.18, sensio/framework-extra-bundle:v3.0.25, mtdowling/cron-expression:v1.2.0, doctrine/orm:v2.5.6, doctrine/doctrine-bundle:1.6.7, shapecode/cron-bundle:2.1.0,
sonata-project/doctrine-orm-admin-bundle:3.1.4, sonata-project/classification-bundle:3.3.0, knplabs/knp-markdown-bundle:1.5.1, egeloen/ckeditor-bundle:5.0.1,
sonata-project/formatter-bundle:3.2.1, sonata-project/intl-bundle:2.3.0, zendframework/zenddiagnostics:v1.0.9, sonata-project/easy-extends-bundle:2.1.10,
sonata-project/doctrine-extensions:1.0.2, sonata-project/notification-bundle:3.1.0, kriswallsmith/buzz:v0.15, knplabs/gaufrette:v0.3.1, jms/serializer-bundle:1.3.1,
imagine/imagine:v0.6.3, sonata-project/media-bundle:3.5.1, monolog/monolog:1.22.1, symfony/monolog-bundle:v3.1.0, symfony/polyfill-apcu:v1.3.0, swiftmailer/swiftmailer:v5.4.6,
symfony/swiftmailer-bundle:v2.5.4
- Installing cweagans/composer-patches (1.6.1): Loading from cache
Extracting archive - Installing behat/transliterator (v1.2.0): Loading from cache
Extracting archive - Installing doctrine/collections (v1.4.0): Loading from cache
Extracting archive - Installing doctrine/lexer (v1.0.1): Loading from cache
Extracting archive - Installing doctrine/inflector (v1.1.0): Loading from cache
Extracting archive - Installing doctrine/cache (v1.6.1): Loading from cache
Extracting archive - Installing doctrine/annotations (v1.4.0): Loading from cache
Extracting archive - Installing doctrine/common (v2.7.2): Loading from cache
Extracting archive - Installing doctrine/dbal (v2.5.12): Loading from cache
Extracting archive - Installing twig/twig (v1.33.0): Loading from cache
Extracting archive - Installing symfony/polyfill-util (v1.3.0): Loading from cache
Extracting archive - Installing paragonie/random_compat (v2.0.10): Loading from cache
Extracting archive - Installing symfony/polyfill-php70 (v1.3.0): Loading from cache
Extracting archive - Installing symfony/polyfill-php56 (v1.3.0): Loading from cache
Extracting archive - Installing symfony/polyfill-mbstring (v1.3.0): Loading from cache
Extracting archive - Installing symfony/symfony (v3.2.7): Loading from cache `
Hi,
I'm creating deployer pro right now, if you want you can join: https://deployer.org/pro/continuous-integration
Is it possible to set the deploy path on a project level? Instead of in the server yaml?
For example, I have multiple projects that will all be deployed to the same server, in a folder like /var/www/project-name - it would be useful if I could define just the 1 server with the path of /var/www/ and then when I deploy the project it goes into a folder I specify (or a folder of the project name).
Hey everyone,
I am trying to you Webloyer, once I understood and managed to make deployer work.
I followed all the installations step without any problem, but as soon as I connect to the webserver, webloyer redirect me to /projects and it throws "Not Found - The requested URL /projects was not found on this server." error!!!
I would just like to log in! I have no projects yet...have you ever faced this issue before?!
I just trying to install weployer using command:
composer create-project ngmy/webloyer
And got the error:
[RuntimeException]
Failed to clone https://github.com/fguillot/JsonRPC.git via https, ssh protocols, aborting.
- https://github.com/fguillot/JsonRPC.git
Cloning into '/Users/masrodjie/Dropbox/Documents/www/wpdev.com/webloyer/vendor/fguillot/json-rpc'...
remote: Repository not found.
fatal: repository 'https://github.com/fguillot/JsonRPC.git/' not found
- [email protected]:fguillot/JsonRPC.git
Cloning into '/Users/masrodjie/Dropbox/Documents/www/wpdev.com/webloyer/vendor/fguillot/json-rpc'...
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.```
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.