1
0
mirror of https://github.com/laravel/valet.git synced 2026-02-07 09:10:03 +01:00
Commit Graph

800 Commits

Author SHA1 Message Date
Matt Stauffer
ccabaa832f Merge pull request #892 from drbyte/dry
Internal update: use existing function instead of duplicated code
2020-01-06 13:57:00 -05:00
Matt Stauffer
7f88759e2e Merge pull request #893 from drbyte/trust-off-flag
Add --off option for valet trust command
2020-01-06 13:56:34 -05:00
Matt Stauffer
775fba9529 Merge pull request #895 from drbyte/phpdetect
Detect running php when no version constraint specified with use command
2020-01-06 13:55:28 -05:00
Matt Stauffer
4b7677833e Merge pull request #874 from ahmedash95/patch-1
Allow start/restart/stop single service
2020-01-06 13:49:59 -05:00
Chris Brown
116c7a7b8c Detect running php when no version constraint specified with use command
Fixes #756

Previously if `php` was installed as just `php` (the default Homebrew alias), Valet would not detect *which* PHP version was actually installed, and therefore `valet use` might do incorrect or unnecessary installations/links/etc.

NOTE: This does NOT "convert" existing `php` alias to a numbered version. It merely accepts it as-is, but notes its version in an attempt to avoid extra installations.

*NOTE: Specifally tested with PHP 7.4 and 7.3. No promises about old 5.6, etc aliases.*
2020-01-04 13:36:20 -05:00
Chris Brown
d39ac0c1a8 Comments must only use semicolons, not hash symbols
PHP configs no longer support `#` for comments. Must use semicolons `;`.

Otherwise PHP may not start, and may show a confusing error in logs: `value is NULL for a ZEND_INI_PARSER_ENTRY`
2020-01-04 13:09:17 -05:00
Chris Brown
9c77a51ff9 Add --off option for valet trust command
While `valet trust` enables (creates) sudoers entries, there was no cleanup/removal option for this, apart from complete forced uninstall of Valet.

This adds `valet trust --off` so that the sudoers entries can be removed from Valet CLI.
2020-01-04 11:05:43 -05:00
Chris Brown
e10f788cea Internal update: use existing function instead of duplicated code 2020-01-04 10:05:25 -05:00
Ahmed Ashraf
924feb1592 use stopRunning for phpfpm
Co-Authored-By: Matt Stauffer <mattstauffer@users.noreply.github.com>
2020-01-04 00:10:50 +01:00
Ahmed Ashraf
b3bf506a06 fix styles 2020-01-03 16:18:42 +01:00
Chris Brown
51adf31d9f Adds a directory-listing setting for dev convenience
After running `valet directory-listing on` if a URI points to a directory that exists, but the requested file cannot be found in that directory, a directory listing will be displayed.

A 404 will still happen if the project directory cannot be found.

Running `valet directory-listing off` makes a 404 display (without a listing) if the requested file cannot be found.

Supercedes and closes #349 and closes #587
2020-01-02 19:44:32 -05:00
Matt Stauffer
a4826f6f8f Merge pull request #885 from drbyte/patch-1
Comment out memory limits so other configs take precedence
2020-01-02 14:21:59 -05:00
Matt Stauffer
a7f6646647 Merge pull request #887 from drbyte/global-valet-env
Allow for global environment variables to be configured.
2020-01-02 14:15:57 -05:00
Chris Brown
bb42b29c3a Allow for global environment variables to be configured.
This leverages the existing `.valet-env.php` file capability, but just adds the Valet Home directory as a first-lookup location.

So, now Valet will check for `.valet-env.php` in:
- `~/.config/valet/`
- then the current project folder

As discussed at https://github.com/laravel/valet/issues/789#issuecomment-565112046

Fixes #789
2019-12-27 12:13:38 -05:00
Chris Brown
b5c8257b86 Comment out memory limits so other configs take precedence 2019-12-23 17:34:54 -05:00
Matt Stauffer
edbc4fc0d3 Bump version 2019-12-23 10:09:19 -05:00
Matt Stauffer
9b1c58591d Bump version 2019-12-10 23:34:16 -05:00
Matt Stauffer
7ed362f82a Merge pull request #870 from drbyte/share-domain
Allow valet share to support multiple domains from same app
2019-12-10 23:32:08 -05:00
Matt Stauffer
a05d26f8a4 Bump version 2019-12-10 23:13:48 -05:00
Ahmed Ashraf
d4d8fc3d4a Allow start/restart/stop with a specific service 2019-12-09 10:46:51 +01:00
Chris Brown
c8435c5187 Part 2: Fix auto-detection amongst multiple ngrok processes
Thanks to the generosity of Alan at Ngrok, I've been able to do some additional testing with temporary added features.
Turns out #864 was incomplete. This PR now also loops through the default endpoints in order to find a process matching the passed domain.

Ref: #864
Ref: #145
2019-12-06 23:33:20 -05:00
Chris Brown
998e4c32df Allow valet share to support multiple domains from same app
This PR allows passing a specific domain name to `valet share` in order to have the app be served for that domain.
Now how it works is this:
- (NEW) if a domain name is passed, it checks whether it matches a link (which would be required for multiple domains served by same app project), and uses that
- if a domain name is NOT passed, it looks up any links for current directory, and uses the first found link
- else falls back to current project foldername

It also still allows passing through custom ngrok parameters if desired (ref: #112), as either the 2nd parameter (no domain name passed) or (NEW) 3rd parameter

Fixes #537
2019-12-06 20:35:35 -05:00
Matt Stauffer
3b302b7593 Bump version. 2019-12-06 09:43:08 -05:00
Chris Brown
6e01bfb5f4 Allow Valet to uninstall itself
`valet uninstall` only displays information about how to manually uninstall and clean up after Valet.

This PR adds a `--force` parameter, which will forcefully remove Valet and the Homebrew services it installs, as well as clean up the config files and log files.
But for a few post-uninstall composer dependencies, cleanup is very thorough.

This brings idempotency to both `valet install` and `valet uninstall --force`

(There may still be edge cases where other Homebrew or composer packages might create interference with install/uninstall, but this makes things much easier to self-troubleshoot.)
2019-12-05 22:19:55 -05:00
Matt Stauffer
d301e4ac11 Merge pull request #856 from drbyte/dnsmasq-customconfig
Use custom dnsmasq.d folder for easier config and support
2019-12-05 15:15:18 -05:00
Matt Stauffer
fea8208eb0 Merge pull request #858 from drbyte/phpfpm-simplify
Move PHP-FPM pool config to separate valet-specific file
2019-12-05 15:14:23 -05:00
Matt Stauffer
5042b9affe Merge pull request #864 from drbyte/ngrok-multiple
Fix auto-detection amongst multiple ngrok processes
2019-12-05 15:13:43 -05:00
Chris Brown
139a916013 Move PHP-FPM config to separate valet-specific file
This allows the valet configuration to stand separately from the default PHP config.
This benefits troubleshooting, makes customization of FPM workers and other settings easer
and allows for easier uninstallation.

Also renames any previously-existing `www.conf` pool config so it doesn't conflict with Valet nor run unnecessary additional processes.
2019-12-05 15:01:11 -05:00
Chris Brown
710fa27651 Fix auto-detection amongst multiple ngrok processes
Ngrok Pro plans allow multiple processes, which means you could be serving several sites simultaneously. This PR allows Valet to correctly identify amongst the active ngrok process URLs.

Fixes #145
2019-12-03 18:34:08 -05:00
David Connolly
5cf4aea612 Cater for filepaths with spaces
Fixes issue where certificates fail to be generated due to a space in the filepath
2019-12-03 22:47:12 +00:00
Chris Brown
02ad7f44ff Dnsmasq allows use of a common config folder, much like nginx and php do.
This PR changes Valet's default config process to empower this feature, which makes installation less intrusive, and easier to identify and remove valet-specific customizations.

This will make for easier troubleshooting
... and easier customizing (such as dropping in a custom logging config, additional TLDs, alternate DNS resolvers, etc)

Also removes old dnsmasq configs used by prior Valet versions
2019-12-02 15:02:56 -05:00
Matt Stauffer
3d877ef803 Merge pull request #855 from drbyte/patch-5
Set robots nofollow for all valet share traffic
2019-12-01 22:06:57 -05:00
Matt Stauffer
30b0684736 Merge pull request #853 from drbyte/dnsmasq-restart
Include dnsmasq in valet start/restart command
2019-12-01 22:06:27 -05:00
Matt Stauffer
35a5f95abf Convert comma to semicolon 2019-12-01 22:05:54 -05:00
Matt Stauffer
f0a8fb9bb6 Merge pull request #852 from drbyte/patch-4
Display nginx config errors on start
2019-12-01 22:05:21 -05:00
Matt Stauffer
0380987fdf Capitalize c in Composer 2019-12-01 22:04:25 -05:00
Matt Stauffer
454ed43f00 Merge pull request #849 from drbyte/patch-1
Add comment to consider running composer global update after switching php version
2019-12-01 22:03:42 -05:00
Matt Stauffer
0681437219 Merge pull request #854 from drbyte/valet-unsecure-all
Add --all parameter to valet unsecure command
2019-12-01 14:55:43 -05:00
Matt Stauffer
93d1632b37 Merge pull request #851 from drbyte/patch-3
Add detailed valet uninstall instructions
2019-12-01 13:08:18 -05:00
Matt Stauffer
8eea03f6a2 Merge pull request #835 from jrbarnard/bugfix/parked-merge-overwrite
Do not show sites in parked if they would not be served
2019-12-01 12:57:12 -05:00
Chris Brown
65b0c6aae6 Add detailed uninstall instructions
Previously `valet uninstall` would just shutdown the `nginx` service.

This PR also stops `PHP` and gives a number of instructions on how to do a (nearly) clean uninstall of most Valet dependencies.
And also some troubleshooting tips.
2019-12-01 02:05:08 -05:00
Chris Brown
36de050d32 Set robots nofollow for all valet share traffic
Replaces and closes #575 ... for reasons described there.
2019-11-30 16:55:48 -05:00
Chris Brown
d6f06045fc Add --all parameter to valet unsecure command
This PR allows passing `--all` to `valet unsecure` to have it remove all certificates from all Valet configs AND from the MacOS Keychain.
This effectively cleans up certificate fragments or broken configs, and can help with troubleshooting.
2019-11-30 16:38:48 -05:00
Chris Brown
cfa8c216fa Include dnsmasq in valet start/restart command
While it's rare that the dnsmasq won't be started, it feels incomplete to not include the service when starting/restarting valet, since valet depends on it.
2019-11-30 16:34:08 -05:00
Chris Brown
e046fff6f6 Display nginx config errors on start
While since #268 valet has been checking nginx configs for errors when starting/restarting, the captured errors are never displayed if there is a failure because it's being run using `quietly()`. 
This PR causes the errors to pass through to the console so we can more readily understand why nginx may not be starting or not serving properly.
2019-11-30 16:31:18 -05:00
Chris Brown
e71906616c Add comment to consider running composer global update
When switching to older PHP versions there may be a composer package dependency conflict. This PR adds a note to consider running `composer global update` to update those dependencies. It's only a comment since not all changes in PHP version will require running the update.

Fixes #822
2019-11-30 16:07:38 -05:00
Matt Stauffer
7785fc870e Bump version 2019-11-30 14:19:48 -05:00
lee
bfd2f3ea5d Updated SUPPORTED_PHP_VERSIONS and LATEST_PHP_VERSION constants to 7.4 2019-11-29 23:06:20 +01:00
Matt Stauffer
879c22f894 Version bump 2019-11-21 16:38:23 -05:00
Chris Brown
e8d49c42bf Symfony/Process 4.4.0 compatibility
Process `4.4.0` changed command-line parsing by being more aggressive with substitutions, causing our intended literal `"$NF"` to throw an exception.

https://github.com/symfony/process/compare/v4.3.8...v4.4.0#diff-9a01fc0e340da4c3f1e4a16029a63977R1644-R1653
2019-11-21 12:04:13 -05:00