-
Notifications
You must be signed in to change notification settings - Fork 3
Update Laravel (WIP), NPM packages & add Vagrant #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
MaxKorlaar
wants to merge
2
commits into
master
Choose a base branch
from
updates
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,53 @@ | ||
| # -*- mode: ruby -*- | ||
| # vi: set ft=ruby : | ||
|
|
||
| require 'json' | ||
| require 'yaml' | ||
|
|
||
| VAGRANTFILE_API_VERSION ||= "2" | ||
| confDir = $confDir ||= File.expand_path("vendor/laravel/homestead", File.dirname(__FILE__)) | ||
|
|
||
| homesteadYamlPath = File.expand_path("Homestead.yaml", File.dirname(__FILE__)) | ||
| homesteadJsonPath = File.expand_path("Homestead.json", File.dirname(__FILE__)) | ||
| afterScriptPath = "after.sh" | ||
| customizationScriptPath = "user-customizations.sh" | ||
| aliasesPath = "aliases" | ||
|
|
||
| require File.expand_path(confDir + '/scripts/homestead.rb') | ||
|
|
||
| Vagrant.require_version '>= 2.2.4' | ||
|
|
||
| Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| | ||
| if File.exist? aliasesPath then | ||
| config.vm.provision "file", source: aliasesPath, destination: "/tmp/bash_aliases" | ||
| config.vm.provision "shell" do |s| | ||
| s.inline = "awk '{ sub(\"\r$\", \"\"); print }' /tmp/bash_aliases > /home/vagrant/.bash_aliases" | ||
| end | ||
| end | ||
|
|
||
| if File.exist? homesteadYamlPath then | ||
| settings = YAML::load(File.read(homesteadYamlPath)) | ||
| elsif File.exist? homesteadJsonPath then | ||
| settings = JSON::parse(File.read(homesteadJsonPath)) | ||
| else | ||
| abort "Homestead settings file not found in " + File.dirname(__FILE__) | ||
| end | ||
|
|
||
| Homestead.configure(config, settings) | ||
|
|
||
| if File.exist? afterScriptPath then | ||
| config.vm.provision "shell", path: afterScriptPath, privileged: false, keep_color: true | ||
| end | ||
|
|
||
| if File.exist? customizationScriptPath then | ||
| config.vm.provision "shell", path: customizationScriptPath, privileged: false, keep_color: true | ||
| end | ||
|
|
||
| if Vagrant.has_plugin?('vagrant-hostsupdater') | ||
| config.hostsupdater.aliases = settings['sites'].map { |site| site['map'] } | ||
| elsif Vagrant.has_plugin?('vagrant-hostmanager') | ||
| config.hostmanager.enabled = true | ||
| config.hostmanager.manage_host = true | ||
| config.hostmanager.aliases = settings['sites'].map { |site| site['map'] } | ||
| end | ||
| end | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| #!/bin/sh | ||
|
|
||
| # If you would like to do some extra provisioning you may | ||
| # add any commands you wish to this file and they will | ||
| # be run after the Homestead machine is provisioned. | ||
| # | ||
| # If you have user-specific configurations you would like | ||
| # to apply, you may also create user-customizations.sh, | ||
| # which will be run after this script. | ||
|
|
||
| # If you're not quite ready for Node 12.x | ||
| # Uncomment these lines to roll back to | ||
| # v11.x or v10.x | ||
|
|
||
| # Remove Node.js v12.x: | ||
| #sudo apt-get -y purge nodejs | ||
| #sudo rm -rf /usr/lib/node_modules/npm/lib | ||
| #sudo rm -rf //etc/apt/sources.list.d/nodesource.list | ||
|
|
||
| # Install Node.js v11.x | ||
| #curl -sL https://deb.nodesource.com/setup_11.x | sudo -E bash - | ||
| #sudo apt-get install -y nodejs | ||
|
|
||
| # Install Node.js v10.x | ||
| #curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - | ||
| #sudo apt-get install -y nodejs |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,283 @@ | ||
| alias ..="cd .." | ||
| alias ...="cd ../.." | ||
|
|
||
| alias h='cd ~' | ||
| alias c='clear' | ||
| alias art=artisan | ||
|
|
||
| alias codecept='vendor/bin/codecept' | ||
| alias phpspec='vendor/bin/phpspec' | ||
| alias phpunit='vendor/bin/phpunit' | ||
| alias serve=serve-laravel | ||
|
|
||
| alias xoff='sudo phpdismod -s cli xdebug' | ||
| alias xon='sudo phpenmod -s cli xdebug' | ||
|
|
||
| function artisan() { | ||
| php artisan "$@" | ||
| } | ||
|
|
||
| function dusk() { | ||
| pids=$(pidof /usr/bin/Xvfb) | ||
|
|
||
| if [ ! -n "$pids" ]; then | ||
| Xvfb :0 -screen 0 1280x960x24 & | ||
| fi | ||
|
|
||
| php artisan dusk "$@" | ||
| } | ||
|
|
||
| function php56() { | ||
| sudo update-alternatives --set php /usr/bin/php5.6 | ||
| sudo update-alternatives --set php-config /usr/bin/php-config5.6 | ||
| sudo update-alternatives --set phpize /usr/bin/phpize5.6 | ||
| } | ||
|
|
||
| function php70() { | ||
| sudo update-alternatives --set php /usr/bin/php7.0 | ||
| sudo update-alternatives --set php-config /usr/bin/php-config7.0 | ||
| sudo update-alternatives --set phpize /usr/bin/phpize7.0 | ||
| } | ||
|
|
||
| function php71() { | ||
| sudo update-alternatives --set php /usr/bin/php7.1 | ||
| sudo update-alternatives --set php-config /usr/bin/php-config7.1 | ||
| sudo update-alternatives --set phpize /usr/bin/phpize7.1 | ||
| } | ||
|
|
||
| function php72() { | ||
| sudo update-alternatives --set php /usr/bin/php7.2 | ||
| sudo update-alternatives --set php-config /usr/bin/php-config7.2 | ||
| sudo update-alternatives --set phpize /usr/bin/phpize7.2 | ||
| } | ||
|
|
||
| function php73() { | ||
| sudo update-alternatives --set php /usr/bin/php7.3 | ||
| sudo update-alternatives --set php-config /usr/bin/php-config7.3 | ||
| sudo update-alternatives --set phpize /usr/bin/phpize7.3 | ||
| } | ||
|
|
||
| function php74() { | ||
| sudo update-alternatives --set php /usr/bin/php7.4 | ||
| sudo update-alternatives --set php-config /usr/bin/php-config7.4 | ||
| sudo update-alternatives --set phpize /usr/bin/phpize7.4 | ||
| } | ||
|
|
||
| function serve-apache() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/create-certificate.sh "$1" | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-apache.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-apache.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-apache domain path" | ||
| fi | ||
| } | ||
|
|
||
| function serve-laravel() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/create-certificate.sh "$1" | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-laravel.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-laravel.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve domain path" | ||
| fi | ||
| } | ||
|
|
||
| function serve-proxy() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-proxy.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-proxy.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-proxy domain port" | ||
| fi | ||
| } | ||
|
|
||
| function serve-silverstripe() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/create-certificate.sh "$1" | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-silverstripe.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-silverstripe.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-silverstripe domain path" | ||
| fi | ||
| } | ||
|
|
||
| function serve-spa() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/create-certificate.sh "$1" | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-spa.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-spa.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-spa domain path" | ||
| fi | ||
| } | ||
|
|
||
| function serve-statamic() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/create-certificate.sh "$1" | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-statamic.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-statamic.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-statamic domain path" | ||
| fi | ||
| } | ||
|
|
||
| function serve-symfony2() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/create-certificate.sh "$1" | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-symfony2.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-symfony2.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-symfony2 domain path" | ||
| fi | ||
| } | ||
|
|
||
| function serve-symfony4() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/create-certificate.sh "$1" | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-symfony4.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-symfony4.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-symfony4 domain path" | ||
| fi | ||
| } | ||
|
|
||
| function serve-pimcore() { | ||
| if [[ "$1" && "$2" ]] | ||
| then | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/create-certificate.sh "$1" | ||
| sudo dos2unix /vagrant/vendor/laravel/homestead/scripts/serve-pimcore.sh | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/serve-pimcore.sh "$1" "$2" 80 443 "${3:-7.1}" | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-pimcore domain path" | ||
| fi | ||
| } | ||
|
|
||
| function share() { | ||
| if [[ "$1" ]] | ||
| then | ||
| ngrok http ${@:2} -host-header="$1" 80 | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " share domain" | ||
| echo "Invocation with extra params passed directly to ngrok" | ||
| echo " share domain -region=eu -subdomain=test1234" | ||
| fi | ||
| } | ||
|
|
||
| function flip() { | ||
| sudo bash /vagrant/vendor/laravel/homestead/scripts/flip-webserver.sh | ||
| } | ||
|
|
||
| function __has_pv() { | ||
| $(hash pv 2>/dev/null); | ||
|
|
||
| return $? | ||
| } | ||
|
|
||
| function __pv_install_message() { | ||
| if ! __has_pv; then | ||
| echo $1 | ||
| echo "Install pv with \`sudo apt-get install -y pv\` then run this command again." | ||
| echo "" | ||
| fi | ||
| } | ||
|
|
||
| function dbexport() { | ||
| FILE=${1:-/vagrant/mysqldump.sql.gz} | ||
|
|
||
| # This gives an estimate of the size of the SQL file | ||
| # It appears that 80% is a good approximation of | ||
| # the ratio of estimated size to actual size | ||
| SIZE_QUERY="select ceil(sum(data_length) * 0.8) as size from information_schema.TABLES" | ||
|
|
||
| __pv_install_message "Want to see export progress?" | ||
|
|
||
| echo "Exporting databases to '$FILE'" | ||
|
|
||
| if __has_pv; then | ||
| ADJUSTED_SIZE=$(mysql --vertical -uhomestead -psecret -e "$SIZE_QUERY" 2>/dev/null | grep 'size' | awk '{print $2}') | ||
| HUMAN_READABLE_SIZE=$(numfmt --to=iec-i --suffix=B --format="%.3f" $ADJUSTED_SIZE) | ||
|
|
||
| echo "Estimated uncompressed size: $HUMAN_READABLE_SIZE" | ||
| mysqldump -uhomestead -psecret --all-databases --skip-lock-tables --routines 2>/dev/null | pv --size=$ADJUSTED_SIZE | gzip > "$FILE" | ||
| else | ||
| mysqldump -uhomestead -psecret --all-databases --skip-lock-tables --routines 2>/dev/null | gzip > "$FILE" | ||
| fi | ||
|
|
||
| echo "Done." | ||
| } | ||
|
|
||
| function dbimport() { | ||
| FILE=${1:-/vagrant/mysqldump.sql.gz} | ||
|
|
||
| __pv_install_message "Want to see import progress?" | ||
|
|
||
| echo "Importing databases from '$FILE'" | ||
|
|
||
| if __has_pv; then | ||
| pv "$FILE" --progress --eta | zcat | mysql -uhomestead -psecret 2>/dev/null | ||
| else | ||
| cat "$FILE" | zcat | mysql -uhomestead -psecret 2>/dev/null | ||
| fi | ||
|
|
||
| echo "Done." | ||
| } | ||
|
|
||
| function xphp() { | ||
| (php -m | grep -q xdebug) | ||
| if [[ $? -eq 0 ]] | ||
| then | ||
| XDEBUG_ENABLED=true | ||
| else | ||
| XDEBUG_ENABLED=false | ||
| fi | ||
|
|
||
| if ! $XDEBUG_ENABLED; then xon; fi | ||
|
|
||
| php \ | ||
| -dxdebug.remote_host=192.168.10.1 \ | ||
| -dxdebug.remote_autostart=1 \ | ||
| "$@" | ||
|
|
||
| if ! $XDEBUG_ENABLED; then xoff; fi | ||
| } | ||
|
|
||
| function update-socket-wrench() { | ||
| cd /var/www/socket-wrench | ||
| git pull origin release | ||
| composer install | ||
| php artisan migrate --force | ||
| } | ||
|
|
||
| function seed-socket-wrench() { | ||
| cd /var/www/socket-wrench | ||
| php artisan db:seed | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using YAML::load may lead to unsafe deserialization. Consider using YAML.safe_load to mitigate potential security risks.