TenantAssetController::$publicDisk is null by default, which keeps serving the
assets from app/public inside the tenant's storage directory. Setting it to a disk
name serves the assets from that disk's root instead.
A disk with no root path throws instead of resolving to an empty path. realpath('')
returns the current working directory, so the controller would end up treating the
whole app directory as the allowed root.
* Add Laravel 12 support, drop Laravel 11 support
* Fix RLS tree generation (specify schema name in generateTrees())
* ci fixes, use stable virtualcolumn version
---------
Co-authored-by: lukinovec <lukinovec@gmail.com>
* cleanup, resolve todos, add immediate todos
* Improve path_identification_middleware docblock
* rename leave() method in tests
* wip fix hardcoded values making assumptions about the parameters used in routing
* defaultParameterNames
* fix CreatesDatabaseUsers return values
* $tenant -> tenant()
* resolve more todos
* make comment block a complete block
* Correct useTenantRoutesInFortify(), delete unused import
* test fixes
* remove todos
* remove JobPipeline todo
* simplify comment example
* remove todo
* fix VERSION_PREFIX in queue.yml
---------
Co-authored-by: lukinovec <lukinovec@gmail.com>
* Make asset_helper_tenancy false by default
* Make tenant_asset() respect ASSET_URL
* Set asset helper tenancy to true in tests where needed
* If the `asset_helper_tenancy` key is missing, default to false in filesystem bootstrapper
* Make temporary clone action changes
* Make tenancy asset route universal
* Make the asset controller's asset method behave differently if path ID MW is the default
* Test that asset helper works with path identification
* Fix code style (php-cs-fixer)
* Delete path traversal attack prevention
* Fix code style (php-cs-fixer)
* Skip cloning of stancl.tenancy.asset route in some tests
* Fix code style (php-cs-fixer)
* Clone asset route in TSP stub
* Add cloning only the passed route
* Clone asset route in tenant asset test beforeEach
* Skip asset route cloning by default
* Fix typo
* Change public method back to protected
* Remove cloning of specific routes, skip cloning routes flagged as tenant
* Delete constructor from asset controiler, change asset method to invoke
* Update asset route registration, add prefixed asest route for path identification
* Use default middleware from config instead of `tenancy()->defaultMiddleware()`
* Delete old code from TSP stub
* Revert TSP stub change
* Revert FilesystemTenancyBootstrapper changes
* Suffix asset url in tenant_asset()
* Simplify `tenant_asset()`
* Ensure the base asset url is always suffixed with '/'
* remove unnecessary ?? false
---------
Co-authored-by: PHP CS Fixer <phpcsfixer@example.com>
Co-authored-by: Samuel Štancl <samuel.stancl@gmail.com>
* exclude master from CI
* Add space after 'up' in 'docker-compose up-d' (#900)
* Fix ArgumentCountError on the TenantAssetsController (#894)
* Fix ArgumentCount exception on the TenantAssetsController when no `$path` is provided
* CS
* CS
* Handle null case explicitly
* code style
Co-authored-by: Bram Wubs <bram@sibi.nl>
Co-authored-by: Samuel Štancl <samuel@archte.ch>
* Add support for nested tenant config override (#920)
* feat: add support for nested tenant config override
* test: ensure nested tenant values are mapped
* Update TenantConfigTest.php
Co-authored-by: lukinovec <lukinovec@gmail.com>
Co-authored-by: Bram Wubs <megawubs@users.noreply.github.com>
Co-authored-by: Bram Wubs <bram@sibi.nl>
Co-authored-by: George Bishop <email.georgebishop@gmail.com>
Co-authored-by: Abrar Ahmad <abrar.dev99@gmail.com>
* Add Pest dependencies
* Add base Pest file
* Convert test cases
* Remove non-compound imports
* Adopt expectation API
* Optimize uses
* Shift cleanup
* phpunit -> pest
* Fix tests in PR #884 PHPUnit to Pest Converter (#885)
* fixed tests, remove method duplications, restore necessary inner classes
* Update CommandsTest.php
* temporary checks run on `shift-64622` on branch.
* fixed `TestSeeder` class not resolved
* fixed messed up names
* removed `uses` from individual files and add it in `Pest`
* extract tests to helpers
* use pest dataset
* Update AutomaticModeTest.php
* newline
* todo convention
* resolve reviews
* added `// todo@tests`
* remove shift branch from CI workflow
Co-authored-by: Samuel Štancl <samuel@archte.ch>
* check if I have write permission
* Convert newly added tests to Pest
Co-authored-by: Shift <shift@laravelshift.com>
Co-authored-by: Abrar Ahmad <abrar.dev99@gmail.com>
* Fix ArgumentCount exception on the TenantAssetsController when no `$path` is provided
* CS
* CS
* Handle null case explicitly
* code style
Co-authored-by: Bram Wubs <bram@sibi.nl>
Co-authored-by: Samuel Štancl <samuel@archte.ch>