- 
 
 - 
  Notifications
 
You must be signed in to change notification settings  - Fork 56
 
β¨ βοΈ π‘ β¬οΈ Update to Homestead ^5 and use per project & make command for config #27
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
Changes from 1 commit
4153e23
 6d1d78b
 2888d8a
 66a4123
 d76a973
 File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| ip: 192.168.10.30 | ||
| memory: 2048 | ||
| cpus: 1 | ||
| provider: virtualbox | ||
| authorize: ~/.ssh/id_rsa.pub | ||
| keys: | ||
| - ~/.ssh/id_rsa | ||
| folders: | ||
| - { map: ~/PhpstormProjects/pastebin, to: /home/vagrant/pastebin } | ||
  
  | 
||
| sites: | ||
| - { map: pastebin.app, to: /home/vagrant/pastebin/public } | ||
| databases: | ||
| - homestead | ||
| name: pastebin | ||
| hostname: pastebin | ||
| 
  There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good idea to keep it as an example file π  | 
||
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| #!/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. | ||
  
  | 
||
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -0,0 +1,208 @@ | ||
| alias ..="cd .." | ||
| alias ...="cd ../.." | ||
| 
  | 
||
| alias h='cd ~' | ||
| alias c='clear' | ||
| alias art=artisan | ||
| 
  | 
||
| 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 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 | ||
| 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 | ||
| 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 | ||
| 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 | ||
| 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 | ||
| 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 | ||
| 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 | ||
| else | ||
| echo "Error: missing required parameters." | ||
| echo "Usage: " | ||
| echo " serve-symfony2 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 2>/dev/null | pv --size=$ADJUSTED_SIZE | gzip > "$FILE" | ||
| else | ||
| mysqldump -uhomestead -psecret --all-databases --skip-lock-tables 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 | ||
| } | ||
  
  | 
||
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
| 
 
 
 
  | 
 @@ -15,7 +15,7 @@ | |
| "require-dev": { | ||
| "codeclimate/php-test-reporter": "^0.4.4", | ||
| "fzaninotto/faker": "^1.6", | ||
| "laravel/homestead": "^5.0", | ||
| "laravel/homestead": "^5", | ||
| 
  There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Any particularly reason why you changed this? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Homestead follows semantic versioning and we end up doing minor releases somewhat often. It's easy to fall behind if you're sticking to a major version. With this change we'll get 5.* instead of only 5.0.*  | 
||
| "mockery/mockery": "0.9.*", | ||
| "phpunit/phpunit": "~5.7" | ||
| }, | ||
| 
 
 
 
  | 
 
 ||