joomlatools / joomlatools-vagrant Goto Github PK
View Code? Open in Web Editor NEWVagrant box for Joomla development.
Home Page: https://www.joomlatools.com/developer/tools/vagrant/
License: Mozilla Public License 2.0
Vagrant box for Joomla development.
Home Page: https://www.joomlatools.com/developer/tools/vagrant/
License: Mozilla Public License 2.0
Add a command to the box script that helps with managing crontabs.
See:
Install Hub (command line wrapper for git to ease GitHub tasks)
We want to be able to include the target site when running composer commands.
$cfg['AllowThirdPartyFraming'] = true;
to config.inc.php
to allow phpMyAdmin to open in an iFrameX-Frame-Options
is set to SAMEORIGIN
/dashboard
it is now available from the root folder: http://joomla.box/joomlatools-vagrant/puppet/modules/scripts/files/scripts/Instructions on how to easily work on the dashboard HTML can be found in the wiki.
Hi, not sure if is an error of the Vagrant Box.
I have a host machine Mac OSX El Capitan 10.11.3
Latest Vagrant 1.8.1
VirtualBox 5.0.14
When executing vagrant up
I have this error:
That ends in:
Checking the log file in the guest machine: vagrant ssh
and cat /var/log/vboxadd-install.log
I see:
Uninstalling modules from DKMS
Attempting to install using DKMS
Creating symlink /var/lib/dkms/vboxguest/5.0.14/source ->
/usr/src/vboxguest-5.0.14
DKMS: add completed.
Error! Your kernel headers for kernel 3.19.0-25-generic cannot be found.
Please install the linux-headers-3.19.0-25-generic package,
or use the --kernelsourcedir option to tell DKMS where it's located
Failed to install using DKMS, attempting to install without
/tmp/vbox.0/Makefile.include.header:97: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again. Stop.
Creating user for the Guest Additions.
Creating udev rule for the Guest Additions kernel module.
Have you faced similar situation?
The machine works anyway. So please close this issue when you read it. It was created just to know if anyone is facing it.
http://www.slideshare.net/siteground/speed-new-jdnlfinal presentation mentions performance tips we can implement in the box
Provision external servers using the puppet config and manage application deployment
Make it possible to add mount_options to config.shared.yml.
See: https://github.com/mitchellh/vagrant/blob/master/website/docs/source/v2/synced-folders/nfs.html.md
Call the joomla-console commands through the dashboard, for people allergic to the command line.
We've recently installed the YAML extension but we are not taking it with us into other versions that are being built with phpmanager.
Make sure to include these new extensions when building.
See:
Install the sitespeed.io CLI tool: https://www.sitespeed.io/
The stock php install creates different directories for CLI and Apache2 ini files. We need to work with this better:
Show more system information on the dashboard and allow more control:
Install the PECL extension sundown.
You can install it already by running these commands real quick:
(on the joomla-vagrant box, run this first if you recently changed to another PHP version. Only do so if you've changed it, just discovered a major bug, if you have never switched versions but run this command, you're left without PHP: phpmanager restore)
sudo pecl install sundown-beta
sudo sh -c "echo 'extension=sundown.so' > /etc/php5/conf.d/zzz_sundown.ini"
Restart PHP:
sudo /etc/init.d/php5-fpm restart
sudo /etc/init.d/apache2 restart
Add a box status command to give a quick summary of useful environment settings.
This is a very minor issue, not really affecting the behaviour of the button, but the Administrator url has a duplicated /
:
All configuration directives are contained in default.pp. Refactor the code to separate everything in separate modules to increase readability and reusability. This will also bring the vagrant box in line with more recent infrastructure projects.
Add a database:log command to the box to catch all queries executed by, for example, an extension installer.
Using:
Hi, I'm not skilled in vagrant and I'm not sure about the right way to to fix this, let me explain the issue:
Of course if I do a curl from the host (MacOS) it works because I have it in hosts:
However if I do a curl from the Vagrant ssh:
I guess the solution is adding joomla.box as host in the Vagrant machine but not sure.
I must say that this was not an issue in joomla-vagrant
, is only happening in joomlatools-vagrant
.
If you can point me to the right place, I'm happy to test and send a fix.
Thanks
Write serverspec tests to validate the core functionality.
See:
Apache 2.4 can now perfectly work with php-fpm instead of the old mod_php, and is even the recommended method from now on. This will make it easier to add Nginx in the mix later on, and requires less fiddling with .so files when switching PHP versions:
Create a z-ray plugin that embeds the wetty terminal on every page
Allow custom forwarded ports to be configured. This will allow the box to talk to other service running on the host machines (jekyll sites, node.js apps, ..)
Example from a Puphpet config:
vagrantfile:
target: local
vm:
box: puphpet/centos65-x64
box_url: puphpet/centos65-x64
hostname: mybox
memory: '512'
cpus: '1'
network:
private_network: 192.168.56.101
forwarded_port:
vflnp_8n82k04lyz3d:
host: '6178'
guest: '22'
vflnp_n319oy1hyfdg:
host: '3306'
guest: '33060'
[...]
Create virtual hosts from any directory
box vhost:create/remove [--root=/path]
https://github.com/fastmonkeys/stellar
It's only useful in a development scenario: "I want to test something crazy, let's backup the database before it blows up. Oh, it blew up so I just go back to my previous snapshot" type of scenario.
On OSX 10.8, files doesn't complete the startup process. Any ideas? Maybe wrong version of vagrant?
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Setting hostname...
[default] Configuring and enabling network interfaces...
[default] Mounting shared folders...
[default] -- /vagrant
[default] -- /tmp/vagrant-puppet/manifests
[default] -- /tmp/vagrant-puppet/modules-0
[default] Forcing shutdown of VM...
[default] Destroying VM and associated drives...
/Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/nfs.rb:42:in realpath': No such file or directory - /Volumes/ubuntu-mac/joomla-vagrant/Projects (Errno::ENOENT) from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/nfs.rb:42:in
realpath'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/nfs.rb:42:in block in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/nfs.rb:36:in
each'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/nfs.rb:36:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/providers/virtualbox/action/prune_nfs_exports.rb:15:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb:118:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/providers/virtualbox/action/prepare_forwarded_port_collision_params.rb:30:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/env_set.rb:19:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Users/gavin/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.3/lib/berkshelf/vagrant/action/upload.rb:18:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Users/gavin/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.3/lib/berkshelf/vagrant/action/install.rb:24:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/provision.rb:45:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/providers/virtualbox/action/clear_forwarded_ports.rb:13:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/providers/virtualbox/action/set_name.rb:35:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/providers/virtualbox/action/clean_machine_folder.rb:17:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/providers/virtualbox/action/check_accessible.rb:18:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/runner.rb:61:in block in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/util/busy.rb:19:in
busy'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/runner.rb:61:in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/call.rb:51:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/runner.rb:61:in
block in run'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/util/busy.rb:19:in busy' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/runner.rb:61:in
run'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/call.rb:51:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/runner.rb:61:in block in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/util/busy.rb:19:in
busy'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/runner.rb:61:in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/call.rb:51:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/config_validate.rb:25:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/call.rb:57:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/config_validate.rb:25:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Users/gavin/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.3/lib/berkshelf/vagrant/action/configure_chef.rb:14:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Users/gavin/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.3/lib/berkshelf/vagrant/action/load_shelf.rb:14:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Users/gavin/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.3/lib/berkshelf/vagrant/action/set_ui.rb:12:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/env_set.rb:19:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builtin/call.rb:57:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/builder.rb:116:in
call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/runner.rb:61:in block in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/util/busy.rb:19:in
busy'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/action/runner.rb:61:in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/machine.rb:147:in
action'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/batch_action.rb:63:in `block (2 levels) in run'
gavin:joomla-vagrant gavin$
Hi there -
I have a fresh install of the vagrant box. I set my Joomla 3.5.0 admin to SMTP host 127.0.0.1 and set the port to 1025. When I send the test email in Joomla config area it spits back the following error in the admin:
Test mail could not be sent.
Could not instantiate mail function.
On the command line I try to test mailcatcher using: echo "Subject: test" | /home/vagrant/.rvm/gems/ruby-2.2.1/bin/catchmail -v [email protected]
and I get back catchmail: version unknown
.
Any ideas why I can't get mail to work?
Use Hashicorp's minimal Ubuntu base box to decrease the size of the box
Install the vagrant-vbguest plugin by default.
If you want to manually install newer Virtual Box Guest Additions you will have to do the following:
Although Varnish is disabled and vcl_recv just passes the request, the vcl_backend_fetch still modifies the headers. Most notably it changes the Cache-Control headers.
Make sure every sub just passes the request unaltered if Varnish is actually disabled.
I'm getting GPG validation errors when puppet tries to provision the VM.
This in turns causes apt to fail installing packages and until provisioning fails.
Does anyone else has issues with GPG keys?
I would create a single 'application' to manage the box. The application would consist out of different specific components build solely on top of Joomlatools Framework, in combination with Joomlatools Platform and could re-use some of our re-usable components if need be.
We need to decide on a name for the application, possible names that come that to mind are : admin, administrator (to follow Joomla convention) and manager.
The name as such will not have much impact as it will not be used at all. In a single application the name does not need to be referenced in object identifiers, as we do not jump between apps. It would just be the global folder under which we would put the code.
Proposing the following repo structure (which is a mix of Joomla and Nooku conventions)
We would build a com_application to act as the front controller and dispatcher in a similar way as we do with Nooku, for the template we would use Bootstrap 3. based on the new template we added to the box.
Repo Name : joomla-vagrant-dashboard
Description : Joomla Vagrant Box Dashboard, build on Joomla Platform
Conceptually I think the OpenStack Dashboard comes very close to what we are doing : http://www.openstack.org/software/openstack-dashboard/
Install phptags command line script
At the moment it is not possible to run two vagrant boxes at the same time.
That’s because when running vagrant up
(second step) vagrant tries to rename a temp folder located in user/VirtualBox VMs/ to joomlatools-box which already exists.
Note: you can solve this by just allowing the box to have a different name. We solved this for nooku-server box too. See: https://github.com/nooku/nooku-server/blob/develop/Vagrantfile.pkg#L30-L39 (see all commits that mention ticket #281)
Add Codeception (http://codeception.com/) to the box.
Error thrown:
Connecting to pear.php.net (pear.php.net)|109.203.101.62|:443... connected. ERROR: cannot verify pear.php.net's certificate, issued by ‘/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=PositiveSSL CA 2’: Unable to locally verify the issuer's authority. To connect to pear.php.net insecurely, use
--no-check-certificate'.
make: *** [install-pear] Error 5
ERROR: install failed!`
This bug has been reported on PHP's bug tracker already, see https://bugs.php.net/bug.php?id=71048 for a short-term workaround.
Prepare v1.4.4 release
Install mod_security and allow it to be turned on/off via box command.
See:
Hi,
On vagrant up, I get
err: /Stage[main]/Phpmyadmin/Exec[creating-phpmyadmin-controluser]/returns: change from notrun to 0 failed: echo "CREATE USER 'phpmyadmin'@'localhost'
IDENTIFIED BY 'awesome';
GRANT ALL ON . TO 'phpmyadmin'@'localhost';FLUSH PRIVILEGES;"
| mysql -u root -p'root' returned 2 instead of one of [0] at /tmp/vagrant-puppet/modules-0/phpmyadmin/manifests/init.pp:68
also added the phpmyadmin and IP to the hosts file but still not loading, I get the apache index.html "it works" page. Thanks!
Talk about "box" instead of "vagrant" in the documentation and READMEs. Likewise, move developer.joomlatools.com/tools/vagrant.html -> box.html.
Add a cronjob that would run very frequently to automatically update Joomla installations:
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.