mirror of
https://github.com/stancl/tenancy-docs.git
synced 2025-12-12 18:24:03 +00:00
70 lines
No EOL
2 KiB
Markdown
70 lines
No EOL
2 KiB
Markdown
---
|
||
title: Console commands
|
||
extends: _layouts.documentation
|
||
section: content
|
||
---
|
||
|
||
|
||
# Console commands
|
||
|
||
The package comes with some useful artisan commands.
|
||
|
||
## **Migrate**
|
||
|
||
The most important command. To use tenants, you have to be able to migrate their databases.
|
||
|
||
You can use the `tenants:migrate` command to migrate tenant's databases. You can also specify which tenants' databases should be migrated using the `--tenants` option.
|
||
|
||
```
|
||
php artisan tenants:migrate --tenants=8075a580-1cb8-11e9-8822-49c5d8f8ff23
|
||
```
|
||
|
||
You may use multiple `--tenants=<...>` options.
|
||
|
||
> Note: By default, the migrations should be in database/migrations/tenant. If you wish to use a different path, you may use the `--path` argument.
|
||
|
||
## **Rollback & seed**
|
||
|
||
- Rollback: `tenants:rollback`
|
||
- Seed: `tenants:seed`
|
||
|
||
Similarly to `migrate`, these commands accept a `--tenants` option.
|
||
|
||
## **Migrate fresh**
|
||
|
||
This package also offers a simplified, tenant-aware version of `migrate:fresh`. It runs `db:wipe` and `tenants:migrate` on the tenant's database.
|
||
|
||
You may use it like this:
|
||
|
||
```
|
||
php artisan tenants:migrate-fresh --tenants=8075a580-1cb8-11e9-8822-49c5d8f8ff23
|
||
```
|
||
|
||
## **Run**
|
||
|
||
You can use the `tenants:run` command to run your own commands for tenants.
|
||
|
||
If your command's signature were `email:send {--queue} {--subject=} {body}`, you would run this command like this:
|
||
|
||
```
|
||
php artisan tenants:run email:send --tenants=8075a580-1cb8-11e9-8822-49c5d8f8ff23 --option="queue=1" --option="subject=New Feature" --argument="body=We have launched a new feature. ..."
|
||
```
|
||
|
||
## **Tenant list**
|
||
|
||
```
|
||
php artisan tenants:list
|
||
Listing all tenants.
|
||
[Tenant] id: dbe0b330-1a6e-11e9-b4c3-354da4b4f339 @ localhost
|
||
[Tenant] id: 49670df0-1a87-11e9-b7ba-cf5353777957 @ dev.localhost
|
||
```
|
||
|
||
## **Selectively clearing tenant cache**
|
||
|
||
You can delete specific tenants' cache by using the `--tags` option on `cache:clear`:
|
||
|
||
```
|
||
php artisan cache:clear --tags=tenantdbe0b330-1a6e-11e9-b4c3-354da4b4f339
|
||
```
|
||
|
||
The tag is derived from `config('tenancy.cache.tag_base') . $id`. |