mirror of
https://github.com/YunoHost/yunohost.git
synced 2024-09-03 20:06:10 +02:00
1863 lines
64 KiB
YAML
1863 lines
64 KiB
YAML
##########################################################################
|
|
# Category/actions/arguments file
|
|
#
|
|
#
|
|
# Except for general_arguments, this file contains 3 levels
|
|
# as in this sample command line:
|
|
#
|
|
# yunohost monitor info --cpu --ram
|
|
# ^ ^ ^ ^
|
|
# (script) | category | action | parameters
|
|
#
|
|
#
|
|
# Above example will lead to the function 'monitor_info(args)'
|
|
# in the file 'yunohost_monitor.py' with 'cpu' and 'ram'
|
|
# stored in an 'args' dictionnary.
|
|
#
|
|
# Usage:
|
|
# You can add a category at the first level, action at the second one,
|
|
# and arguments at the third one.
|
|
# If a connexion is needed for the action, don't forget to add it to
|
|
# the action parameters (ldap, repo, dns or firewall).
|
|
#
|
|
# Documentation:
|
|
# You can see all arguments settings at the argparse documentation:
|
|
# http://docs.python.org/dev/library/argparse.html
|
|
# #argparse.ArgumentParser.add_argument
|
|
#
|
|
# Don't forget to turn argument yaml style (setting: value)
|
|
#
|
|
##########################################################################
|
|
|
|
#############################
|
|
# Global parameters #
|
|
#############################
|
|
_global:
|
|
configuration:
|
|
authenticate:
|
|
- api
|
|
authenticator:
|
|
default:
|
|
vendor: ldap
|
|
help: admin_password
|
|
parameters:
|
|
uri: ldap://localhost:389
|
|
base_dn: dc=yunohost,dc=org
|
|
user_rdn: cn=admin,dc=yunohost,dc=org
|
|
argument_auth: false
|
|
arguments:
|
|
-v:
|
|
full: --version
|
|
help: Display YunoHost packages versions
|
|
action: callback
|
|
callback:
|
|
method: yunohost.utils.packages.ynh_packages_version
|
|
return: true
|
|
|
|
#############################
|
|
# User #
|
|
#############################
|
|
user:
|
|
category_help: Manage users and groups
|
|
actions:
|
|
|
|
### user_list()
|
|
list:
|
|
action_help: List users
|
|
api: GET /users
|
|
arguments:
|
|
--fields:
|
|
help: fields to fetch
|
|
nargs: "+"
|
|
|
|
### user_create()
|
|
create:
|
|
action_help: Create user
|
|
api: POST /users
|
|
arguments:
|
|
username:
|
|
help: The unique username to create
|
|
extra:
|
|
pattern: &pattern_username
|
|
- !!str ^[a-z0-9_]+$
|
|
- "pattern_username"
|
|
-f:
|
|
full: --firstname
|
|
extra:
|
|
ask: ask_firstname
|
|
required: True
|
|
pattern: &pattern_firstname
|
|
- !!str ^([^\W\d_]{2,30}[ ,.'-]{0,3})+$
|
|
- "pattern_firstname"
|
|
-l:
|
|
full: --lastname
|
|
extra:
|
|
ask: ask_lastname
|
|
required: True
|
|
pattern: &pattern_lastname
|
|
- !!str ^([^\W\d_]{2,30}[ ,.'-]{0,3})+$
|
|
- "pattern_lastname"
|
|
-m:
|
|
full: --mail
|
|
help: Main unique email address
|
|
extra:
|
|
ask: ask_email
|
|
required: True
|
|
pattern: &pattern_email
|
|
- !!str ^[\w.-]+@([^\W_A-Z]+([-]*[^\W_A-Z]+)*\.)+([^\W\d_]{2,})$
|
|
- "pattern_email"
|
|
-p:
|
|
full: --password
|
|
help: User password
|
|
extra:
|
|
password: ask_password
|
|
required: True
|
|
pattern: &pattern_password
|
|
- !!str ^.{3,}$
|
|
- "pattern_password"
|
|
comment: good_practices_about_user_password
|
|
-q:
|
|
full: --mailbox-quota
|
|
help: Mailbox size quota
|
|
default: "0"
|
|
metavar: "{SIZE|0}"
|
|
extra:
|
|
pattern: &pattern_mailbox_quota
|
|
- !!str ^(\d+[bkMGT])|0$
|
|
- "pattern_mailbox_quota"
|
|
|
|
### user_delete()
|
|
delete:
|
|
action_help: Delete user
|
|
api: DELETE /users/<username>
|
|
arguments:
|
|
username:
|
|
help: Username to delete
|
|
extra:
|
|
pattern: *pattern_username
|
|
--purge:
|
|
help: Purge user's home and mail directories
|
|
action: store_true
|
|
|
|
### user_update()
|
|
update:
|
|
action_help: Update user informations
|
|
api: PUT /users/<username>
|
|
arguments:
|
|
username:
|
|
help: Username to update
|
|
-f:
|
|
full: --firstname
|
|
extra:
|
|
pattern: *pattern_firstname
|
|
-l:
|
|
full: --lastname
|
|
extra:
|
|
pattern: *pattern_lastname
|
|
-m:
|
|
full: --mail
|
|
extra:
|
|
pattern: *pattern_email
|
|
-p:
|
|
full: --change-password
|
|
help: New password to set
|
|
metavar: PASSWORD
|
|
extra:
|
|
pattern: *pattern_password
|
|
--add-mailforward:
|
|
help: Mailforward addresses to add
|
|
nargs: "*"
|
|
metavar: MAIL
|
|
extra:
|
|
pattern: *pattern_email
|
|
--remove-mailforward:
|
|
help: Mailforward addresses to remove
|
|
nargs: "*"
|
|
metavar: MAIL
|
|
--add-mailalias:
|
|
help: Mail aliases to add
|
|
nargs: "*"
|
|
metavar: MAIL
|
|
extra:
|
|
pattern: *pattern_email
|
|
--remove-mailalias:
|
|
help: Mail aliases to remove
|
|
nargs: "*"
|
|
metavar: MAIL
|
|
-q:
|
|
full: --mailbox-quota
|
|
help: Mailbox size quota
|
|
metavar: "{SIZE|0}"
|
|
extra:
|
|
pattern: *pattern_mailbox_quota
|
|
|
|
### user_info()
|
|
info:
|
|
action_help: Get user information
|
|
api: GET /users/<username>
|
|
arguments:
|
|
username:
|
|
help: Username or email to get information
|
|
|
|
subcategories:
|
|
group:
|
|
subcategory_help: Manage user groups
|
|
actions:
|
|
### user_group_list()
|
|
list:
|
|
action_help: List existing groups
|
|
api: GET /users/groups
|
|
arguments:
|
|
-s:
|
|
full: --short
|
|
help: List only the names of groups
|
|
action: store_true
|
|
-f:
|
|
full: --full
|
|
help: Display all informations known about each groups
|
|
action: store_true
|
|
-p:
|
|
full: --include-primary-groups
|
|
help: Also display primary groups (each user has an eponym group that only contains itself)
|
|
action: store_true
|
|
default: false
|
|
|
|
### user_group_create()
|
|
create:
|
|
action_help: Create group
|
|
api: POST /users/groups
|
|
arguments:
|
|
groupname:
|
|
help: Name of the group to be created
|
|
extra:
|
|
pattern: &pattern_groupname
|
|
- !!str ^[a-z0-9_]+$
|
|
- "pattern_groupname"
|
|
|
|
### user_group_delete()
|
|
delete:
|
|
action_help: Delete group
|
|
api: DELETE /users/groups/<groupname>
|
|
arguments:
|
|
groupname:
|
|
help: Name of the group to be deleted
|
|
extra:
|
|
pattern: *pattern_groupname
|
|
|
|
### user_group_update()
|
|
update:
|
|
action_help: Update group
|
|
api: PUT /users/groups/<groupname>
|
|
arguments:
|
|
groupname:
|
|
help: Name of the group to be updated
|
|
extra:
|
|
pattern: *pattern_groupname
|
|
-a:
|
|
full: --add
|
|
help: User(s) to add in the group
|
|
nargs: "*"
|
|
metavar: USERNAME
|
|
extra:
|
|
pattern: *pattern_username
|
|
-r:
|
|
full: --remove
|
|
help: User(s) to remove in the group
|
|
nargs: "*"
|
|
metavar: USERNAME
|
|
extra:
|
|
pattern: *pattern_username
|
|
|
|
### user_group_info()
|
|
info:
|
|
action_help: Get information about a specific group
|
|
api: GET /users/groups/<groupname>
|
|
arguments:
|
|
groupname:
|
|
help: Name of the group to fetch info about
|
|
extra:
|
|
pattern: *pattern_username
|
|
|
|
permission:
|
|
subcategory_help: Manage permissions
|
|
actions:
|
|
|
|
### user_permission_list()
|
|
list:
|
|
action_help: List permissions and corresponding accesses
|
|
api: GET /users/permissions/<permission>
|
|
arguments:
|
|
-s:
|
|
full: --short
|
|
help: Only list permission names
|
|
action: store_true
|
|
-f:
|
|
full: --full
|
|
help: Display all info known about each permission, including the full user list of each group it is granted to.
|
|
action: store_true
|
|
|
|
|
|
### user_permission_update()
|
|
update:
|
|
action_help: Manage group or user permissions
|
|
api: POST /users/permissions/<permission>
|
|
arguments:
|
|
permission:
|
|
help: Permission to manage (e.g. mail or nextcloud or wordpress.editors)
|
|
-a:
|
|
full: --add
|
|
help: Group or usernames to grant this permission to
|
|
nargs: "*"
|
|
metavar: GROUP_OR_USER
|
|
extra:
|
|
pattern: *pattern_username
|
|
-r:
|
|
full: --remove
|
|
help: Group or usernames revoke this permission from
|
|
nargs: "*"
|
|
metavar: GROUP_OR_USER
|
|
extra:
|
|
pattern: *pattern_username
|
|
|
|
## user_permission_reset()
|
|
reset:
|
|
action_help: Reset allowed groups to the default (all_users) for a given permission
|
|
api: DELETE /users/permissions/<app>
|
|
arguments:
|
|
permission:
|
|
help: Permission to manage (e.g. mail or nextcloud or wordpress.editors)
|
|
|
|
ssh:
|
|
subcategory_help: Manage ssh access
|
|
actions:
|
|
### user_ssh_enable()
|
|
allow:
|
|
action_help: Allow the user to uses ssh
|
|
api: POST /users/ssh/enable
|
|
arguments:
|
|
username:
|
|
help: Username of the user
|
|
extra:
|
|
pattern: *pattern_username
|
|
|
|
### user_ssh_disable()
|
|
disallow:
|
|
action_help: Disallow the user to uses ssh
|
|
api: POST /users/ssh/disable
|
|
arguments:
|
|
username:
|
|
help: Username of the user
|
|
extra:
|
|
pattern: *pattern_username
|
|
|
|
### user_ssh_keys_list()
|
|
list-keys:
|
|
action_help: Show user's authorized ssh keys
|
|
api: GET /users/ssh/keys
|
|
arguments:
|
|
username:
|
|
help: Username of the user
|
|
extra:
|
|
pattern: *pattern_username
|
|
|
|
### user_ssh_keys_add()
|
|
add-key:
|
|
action_help: Add a new authorized ssh key for this user
|
|
api: POST /users/ssh/key
|
|
arguments:
|
|
username:
|
|
help: Username of the user
|
|
extra:
|
|
pattern: *pattern_username
|
|
key:
|
|
help: The key to be added
|
|
-c:
|
|
full: --comment
|
|
help: Optionnal comment about the key
|
|
|
|
### user_ssh_keys_remove()
|
|
remove-key:
|
|
action_help: Remove an authorized ssh key for this user
|
|
api: DELETE /users/ssh/key
|
|
arguments:
|
|
username:
|
|
help: Username of the user
|
|
extra:
|
|
pattern: *pattern_username
|
|
key:
|
|
help: The key to be removed
|
|
|
|
|
|
#############################
|
|
# Domain #
|
|
#############################
|
|
domain:
|
|
category_help: Manage domains
|
|
actions:
|
|
|
|
### domain_list()
|
|
list:
|
|
action_help: List domains
|
|
api: GET /domains
|
|
|
|
### domain_add()
|
|
add:
|
|
action_help: Create a custom domain
|
|
api: POST /domains
|
|
arguments:
|
|
domain:
|
|
help: Domain name to add
|
|
extra:
|
|
pattern: &pattern_domain
|
|
- !!str ^([^\W_A-Z]+([-]*[^\W_A-Z]+)*\.)+([^\W\d_]{2,})$
|
|
- "pattern_domain"
|
|
-d:
|
|
full: --dyndns
|
|
help: Subscribe to the DynDNS service
|
|
action: store_true
|
|
|
|
### domain_remove()
|
|
remove:
|
|
action_help: Delete domains
|
|
api: DELETE /domains/<domain>
|
|
arguments:
|
|
domain:
|
|
help: Domain to delete
|
|
extra:
|
|
pattern: *pattern_domain
|
|
|
|
### domain_dns_conf()
|
|
dns-conf:
|
|
action_help: Generate sample DNS configuration for a domain
|
|
api: GET /domains/<domain>/dns
|
|
arguments:
|
|
domain:
|
|
help: Target domain
|
|
-t:
|
|
full: --ttl
|
|
help: Time To Live (TTL) in second before DNS servers update. Default is 3600 seconds (i.e. 1 hour).
|
|
extra:
|
|
pattern:
|
|
- !!str ^[0-9]+$
|
|
- "pattern_positive_number"
|
|
|
|
### certificate_status()
|
|
cert-status:
|
|
action_help: List status of current certificates (all by default).
|
|
api: GET /domains/cert-status/<domain_list>
|
|
arguments:
|
|
domain_list:
|
|
help: Domains to check
|
|
nargs: "*"
|
|
--full:
|
|
help: Show more details
|
|
action: store_true
|
|
|
|
### certificate_install()
|
|
cert-install:
|
|
action_help: Install Let's Encrypt certificates for given domains (all by default).
|
|
api: POST /domains/cert-install/<domain_list>
|
|
arguments:
|
|
domain_list:
|
|
help: Domains for which to install the certificates
|
|
nargs: "*"
|
|
--force:
|
|
help: Install even if current certificate is not self-signed
|
|
action: store_true
|
|
--no-checks:
|
|
help: Does not perform any check that your domain seems correctly configured (DNS, reachability) before attempting to install. (Not recommended)
|
|
action: store_true
|
|
--self-signed:
|
|
help: Install self-signed certificate instead of Let's Encrypt
|
|
action: store_true
|
|
--staging:
|
|
help: Use the fake/staging Let's Encrypt certification authority. The new certificate won't actually be enabled - it is only intended to test the main steps of the procedure.
|
|
action: store_true
|
|
|
|
### certificate_renew()
|
|
cert-renew:
|
|
action_help: Renew the Let's Encrypt certificates for given domains (all by default).
|
|
api: POST /domains/cert-renew/<domain_list>
|
|
arguments:
|
|
domain_list:
|
|
help: Domains for which to renew the certificates
|
|
nargs: "*"
|
|
--force:
|
|
help: Ignore the validity threshold (30 days)
|
|
action: store_true
|
|
--email:
|
|
help: Send an email to root with logs if some renewing fails
|
|
action: store_true
|
|
--no-checks:
|
|
help: Does not perform any check that your domain seems correctly configured (DNS, reachability) before attempting to renew. (Not recommended)
|
|
action: store_true
|
|
--staging:
|
|
help: Use the fake/staging Let's Encrypt certification authority. The new certificate won't actually be enabled - it is only intended to test the main steps of the procedure.
|
|
action: store_true
|
|
|
|
### domain_url_available()
|
|
url-available:
|
|
action_help: Check availability of a web path
|
|
api: GET /domain/urlavailable
|
|
arguments:
|
|
domain:
|
|
help: The domain for the web path (e.g. your.domain.tld)
|
|
extra:
|
|
pattern: *pattern_domain
|
|
path:
|
|
help: The path to check (e.g. /coffee)
|
|
|
|
|
|
### domain_info()
|
|
# info:
|
|
# action_help: Get domain informations
|
|
# api: GET /domains/<domain>
|
|
# arguments:
|
|
# domain:
|
|
# help: ""
|
|
# extra:
|
|
# pattern:
|
|
# - '^([a-zA-Z0-9]{1}([a-zA-Z0-9\-]*[a-zA-Z0-9])*)(\.[a-zA-Z0-9]{1}([a-zA-Z0-9\-]*[a-zA-Z0-9])*)*(\.[a-zA-Z]{1}([a-zA-Z0-9\-]*[a-zA-Z0-9])*)$'
|
|
# - "Must be a valid domain name (e.g. my-domain.org)"
|
|
|
|
|
|
#############################
|
|
# App #
|
|
#############################
|
|
app:
|
|
category_help: Manage apps
|
|
actions:
|
|
|
|
### app_fetchlist()
|
|
fetchlist:
|
|
action_help: Fetch application lists from app servers, or register a new one.
|
|
api: PUT /appslists
|
|
arguments:
|
|
-n:
|
|
full: --name
|
|
help: Name of the list to fetch (fetches all registered lists if empty)
|
|
extra:
|
|
pattern: &pattern_listname
|
|
- !!str ^[a-z0-9_]+$
|
|
- "pattern_listname"
|
|
-u:
|
|
full: --url
|
|
help: URL of a new application list to register. To be specified with -n.
|
|
|
|
### app_listlists()
|
|
listlists:
|
|
action_help: List registered application lists
|
|
api: GET /appslists
|
|
|
|
### app_removelist()
|
|
removelist:
|
|
action_help: Remove and forget about a given application list
|
|
api: DELETE /appslists
|
|
arguments:
|
|
name:
|
|
help: Name of the list to remove
|
|
extra:
|
|
ask: ask_list_to_remove
|
|
pattern: *pattern_listname
|
|
|
|
### app_list()
|
|
list:
|
|
action_help: List apps
|
|
api: GET /apps
|
|
arguments:
|
|
-f:
|
|
full: --filter
|
|
help: Name filter of app_id or app_name
|
|
-r:
|
|
full: --raw
|
|
help: Return the full app_dict
|
|
action: store_true
|
|
-i:
|
|
full: --installed
|
|
help: Return only installed apps
|
|
action: store_true
|
|
-b:
|
|
full: --with-backup
|
|
help: Return only apps with backup feature (force --installed filter)
|
|
action: store_true
|
|
|
|
### app_info()
|
|
info:
|
|
action_help: Get information about an installed app
|
|
api: GET /apps/<app>
|
|
arguments:
|
|
app:
|
|
help: Specific app ID
|
|
-s:
|
|
full: --show-status
|
|
help: Show app installation status
|
|
action: store_true
|
|
-r:
|
|
full: --raw
|
|
help: Return the full app_dict
|
|
action: store_true
|
|
|
|
### app_map()
|
|
map:
|
|
action_help: List apps by domain
|
|
api: GET /appsmap
|
|
arguments:
|
|
-a:
|
|
full: --app
|
|
help: Specific app to map
|
|
-r:
|
|
full: --raw
|
|
help: Return complete dict
|
|
action: store_true
|
|
-u:
|
|
full: --user
|
|
help: Allowed app map for a user
|
|
extra:
|
|
pattern: *pattern_username
|
|
|
|
### app_install()
|
|
install:
|
|
action_help: Install apps
|
|
api: POST /apps
|
|
arguments:
|
|
app:
|
|
help: Name, local path or git URL of the app to install
|
|
-l:
|
|
full: --label
|
|
help: Custom name for the app
|
|
-a:
|
|
full: --args
|
|
help: Serialized arguments for app script (i.e. "domain=domain.tld&path=/path")
|
|
-n:
|
|
full: --no-remove-on-failure
|
|
help: Debug option to avoid removing the app on a failed installation
|
|
action: store_true
|
|
-f:
|
|
full: --force
|
|
help: Do not ask confirmation if the app is not safe to use (low quality, experimental or 3rd party)
|
|
action: store_true
|
|
|
|
### app_remove() TODO: Write help
|
|
remove:
|
|
action_help: Remove app
|
|
api: DELETE /apps/<app>
|
|
arguments:
|
|
app:
|
|
help: App(s) to delete
|
|
|
|
### app_upgrade()
|
|
upgrade:
|
|
action_help: Upgrade app
|
|
api: PUT /upgrade/apps
|
|
arguments:
|
|
app:
|
|
help: App(s) to upgrade (default all)
|
|
nargs: "*"
|
|
-u:
|
|
full: --url
|
|
help: Git url to fetch for upgrade
|
|
-f:
|
|
full: --file
|
|
help: Folder or tarball for upgrade
|
|
|
|
### app_change_url()
|
|
change-url:
|
|
action_help: Change app's URL
|
|
api: PUT /apps/<app>/changeurl
|
|
arguments:
|
|
app:
|
|
help: Target app instance name
|
|
-d:
|
|
full: --domain
|
|
help: New app domain on which the application will be moved
|
|
extra:
|
|
ask: ask_new_domain
|
|
pattern: *pattern_domain
|
|
required: True
|
|
-p:
|
|
full: --path
|
|
help: New path at which the application will be moved
|
|
extra:
|
|
ask: ask_new_path
|
|
required: True
|
|
|
|
### app_setting()
|
|
setting:
|
|
action_help: Set or get an app setting value
|
|
api: GET /apps/<app>/settings
|
|
arguments:
|
|
app:
|
|
help: App ID
|
|
key:
|
|
help: Key to get/set
|
|
-v:
|
|
full: --value
|
|
help: Value to set
|
|
-d:
|
|
full: --delete
|
|
help: Delete the key
|
|
action: store_true
|
|
|
|
### app_checkport()
|
|
checkport:
|
|
action_help: Check availability of a local port
|
|
api: GET /tools/checkport
|
|
deprecated: true
|
|
arguments:
|
|
port:
|
|
help: Port to check
|
|
extra:
|
|
pattern: &pattern_port
|
|
- !!str ^([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])$
|
|
- "pattern_port"
|
|
|
|
### app_checkurl()
|
|
checkurl:
|
|
action_help: Check availability of a web path
|
|
api: GET /tools/checkurl
|
|
deprecated: True
|
|
arguments:
|
|
url:
|
|
help: Url to check
|
|
-a:
|
|
full: --app
|
|
help: Write domain & path to app settings for further checks
|
|
|
|
### app_register_url()
|
|
register-url:
|
|
action_help: Book/register a web path for a given app
|
|
api: PUT /tools/registerurl
|
|
arguments:
|
|
app:
|
|
help: App which will use the web path
|
|
domain:
|
|
help: The domain on which the app should be registered (e.g. your.domain.tld)
|
|
path:
|
|
help: The path to be registered (e.g. /coffee)
|
|
|
|
|
|
### app_initdb()
|
|
initdb:
|
|
action_help: Create database and initialize it with optionnal attached script
|
|
api: POST /tools/initdb
|
|
deprecated: true
|
|
arguments:
|
|
user:
|
|
help: Name of the DB user
|
|
-p:
|
|
full: --password
|
|
help: Password of the DB (generated unless set)
|
|
-d:
|
|
full: --db
|
|
help: DB name (user unless set)
|
|
-s:
|
|
full: --sql
|
|
help: Initial SQL file
|
|
|
|
### app_debug()
|
|
debug:
|
|
action_help: Display all debug informations for an application
|
|
api: GET /apps/<app>/debug
|
|
arguments:
|
|
app:
|
|
help: App name
|
|
|
|
### app_makedefault()
|
|
makedefault:
|
|
action_help: Redirect domain root to an app
|
|
api: PUT /apps/<app>/default
|
|
arguments:
|
|
app:
|
|
help: App name to put on domain root
|
|
-d:
|
|
full: --domain
|
|
help: Specific domain to put app on (the app domain by default)
|
|
|
|
### app_ssowatconf()
|
|
ssowatconf:
|
|
action_help: Regenerate SSOwat configuration file
|
|
api: PUT /ssowatconf
|
|
|
|
### app_change_label()
|
|
change-label:
|
|
action_help: Change app label
|
|
api: PUT /apps/<app>/label
|
|
arguments:
|
|
app:
|
|
help: App ID
|
|
new_label:
|
|
help: New app label
|
|
|
|
### app_addaccess() TODO: Write help
|
|
addaccess:
|
|
action_help: Grant access right to users (everyone by default)
|
|
api: PUT /access
|
|
deprecated: true
|
|
arguments:
|
|
apps:
|
|
nargs: "+"
|
|
-u:
|
|
full: --users
|
|
nargs: "*"
|
|
|
|
### app_removeaccess() TODO: Write help
|
|
removeaccess:
|
|
action_help: Revoke access right to users (everyone by default)
|
|
api: DELETE /access
|
|
deprecated: true
|
|
arguments:
|
|
apps:
|
|
nargs: "+"
|
|
-u:
|
|
full: --users
|
|
nargs: "*"
|
|
|
|
### app_clearaccess()
|
|
clearaccess:
|
|
action_help: Reset access rights for the app
|
|
api: POST /access
|
|
deprecated: true
|
|
arguments:
|
|
apps:
|
|
nargs: "+"
|
|
|
|
subcategories:
|
|
|
|
action:
|
|
subcategory_help: Handle apps actions
|
|
actions:
|
|
|
|
### app_action_list()
|
|
list:
|
|
action_help: List app actions
|
|
api: GET /apps/<app>/actions
|
|
arguments:
|
|
app:
|
|
help: App name
|
|
|
|
### app_action_run()
|
|
run:
|
|
action_help: Run app action
|
|
api: PUT /apps/<app>/actions/<action>
|
|
arguments:
|
|
app:
|
|
help: App name
|
|
action:
|
|
help: action id
|
|
-a:
|
|
full: --args
|
|
help: Serialized arguments for app script (i.e. "domain=domain.tld&path=/path")
|
|
|
|
config:
|
|
subcategory_help: Applications configuration panel
|
|
actions:
|
|
|
|
### app_config_show_panel()
|
|
show-panel:
|
|
action_help: show config panel for the application
|
|
api: GET /apps/<app>/config-panel
|
|
arguments:
|
|
app:
|
|
help: App name
|
|
|
|
### app_config_apply()
|
|
apply:
|
|
action_help: apply the new configuration
|
|
api: POST /apps/<app>/config
|
|
arguments:
|
|
app:
|
|
help: App name
|
|
-a:
|
|
full: --args
|
|
help: Serialized arguments for new configuration (i.e. "domain=domain.tld&path=/path")
|
|
|
|
#############################
|
|
# Backup #
|
|
#############################
|
|
backup:
|
|
category_help: Manage backups
|
|
actions:
|
|
|
|
### backup_create()
|
|
create:
|
|
action_help: Create a backup local archive. If neither --apps or --system are given, this will backup all apps and all system parts. If only --apps if given, this will only backup apps and no system parts. Similarly, if only --system is given, this will only backup system parts and no apps.
|
|
api: POST /backup
|
|
arguments:
|
|
-n:
|
|
full: --name
|
|
help: Name of the backup archive
|
|
extra:
|
|
pattern: &pattern_backup_archive_name
|
|
- !!str ^[\w\-\._]{1,50}(?<!\.)$
|
|
- "pattern_backup_archive_name"
|
|
-d:
|
|
full: --description
|
|
help: Short description of the backup
|
|
-o:
|
|
full: --output-directory
|
|
help: Output directory for the backup
|
|
-r:
|
|
full: --no-compress
|
|
help: Do not create an archive file
|
|
action: store_true
|
|
--methods:
|
|
help: List of backup methods to apply (copy or tar by default)
|
|
nargs: "*"
|
|
--system:
|
|
help: List of system parts to backup (or all if none given).
|
|
nargs: "*"
|
|
--apps:
|
|
help: List of application names to backup (or all if none given)
|
|
nargs: "*"
|
|
|
|
### backup_restore()
|
|
restore:
|
|
action_help: Restore from a local backup archive. If neither --apps or --system are given, this will restore all apps and all system parts in the archive. If only --apps if given, this will only restore apps and no system parts. Similarly, if only --system is given, this will only restore system parts and no apps.
|
|
api: POST /backup/restore/<name>
|
|
arguments:
|
|
name:
|
|
help: Name of the local backup archive
|
|
--system:
|
|
help: List of system parts to restore (or all if none is given)
|
|
nargs: "*"
|
|
--apps:
|
|
help: List of application names to restore (or all if none is given)
|
|
nargs: "*"
|
|
--force:
|
|
help: Force restauration on an already installed system
|
|
action: store_true
|
|
|
|
### backup_list()
|
|
list:
|
|
action_help: List available local backup archives
|
|
api: GET /backup/archives
|
|
arguments:
|
|
-i:
|
|
full: --with-info
|
|
help: Show backup information for each archive
|
|
action: store_true
|
|
-H:
|
|
full: --human-readable
|
|
help: Print sizes in human readable format
|
|
action: store_true
|
|
|
|
### backup_info()
|
|
info:
|
|
action_help: Show info about a local backup archive
|
|
api: GET /backup/archives/<name>
|
|
arguments:
|
|
name:
|
|
help: Name of the local backup archive
|
|
-d:
|
|
full: --with-details
|
|
help: Show additional backup information
|
|
action: store_true
|
|
-H:
|
|
full: --human-readable
|
|
help: Print sizes in human readable format
|
|
action: store_true
|
|
|
|
### backup_delete()
|
|
delete:
|
|
action_help: Delete a backup archive
|
|
api: DELETE /backup/archives/<name>
|
|
arguments:
|
|
name:
|
|
help: Name of the archive to delete
|
|
extra:
|
|
pattern: *pattern_backup_archive_name
|
|
|
|
|
|
#############################
|
|
# Monitor #
|
|
#############################
|
|
monitor:
|
|
category_help: Monitor the server
|
|
actions:
|
|
|
|
### monitor_disk()
|
|
disk:
|
|
action_help: Monitor disk space and usage
|
|
api: GET /monitor/disk
|
|
arguments:
|
|
-f:
|
|
full: --filesystem
|
|
help: Show filesystem disk space
|
|
action: append_const
|
|
const: filesystem
|
|
dest: units
|
|
-t:
|
|
full: --io
|
|
help: Show I/O throughput
|
|
action: append_const
|
|
const: io
|
|
dest: units
|
|
-m:
|
|
full: --mountpoint
|
|
help: Monitor only the device mounted on MOUNTPOINT
|
|
action: store
|
|
-H:
|
|
full: --human-readable
|
|
help: Print sizes in human readable format
|
|
action: store_true
|
|
|
|
### monitor_network()
|
|
network:
|
|
action_help: Monitor network interfaces
|
|
api: GET /monitor/network
|
|
arguments:
|
|
-u:
|
|
full: --usage
|
|
help: Show interfaces bit rates
|
|
action: append_const
|
|
const: usage
|
|
dest: units
|
|
-i:
|
|
full: --infos
|
|
help: Show network informations
|
|
action: append_const
|
|
const: infos
|
|
dest: units
|
|
-c:
|
|
full: --check
|
|
help: Check network configuration
|
|
action: append_const
|
|
const: check
|
|
dest: units
|
|
-H:
|
|
full: --human-readable
|
|
help: Print sizes in human readable format
|
|
action: store_true
|
|
|
|
### monitor_system()
|
|
system:
|
|
action_help: Monitor system informations and usage
|
|
api: GET /monitor/system
|
|
arguments:
|
|
-m:
|
|
full: --memory
|
|
help: Show memory usage
|
|
action: append_const
|
|
const: memory
|
|
dest: units
|
|
-c:
|
|
full: --cpu
|
|
help: Show CPU usage and load
|
|
action: append_const
|
|
const: cpu
|
|
dest: units
|
|
-p:
|
|
full: --process
|
|
help: Show processes summary
|
|
action: append_const
|
|
const: process
|
|
dest: units
|
|
-u:
|
|
full: --uptime
|
|
help: Show the system uptime
|
|
action: append_const
|
|
const: uptime
|
|
dest: units
|
|
-i:
|
|
full: --infos
|
|
help: Show system informations
|
|
action: append_const
|
|
const: infos
|
|
dest: units
|
|
-H:
|
|
full: --human-readable
|
|
help: Print sizes in human readable format
|
|
action: store_true
|
|
|
|
### monitor_updatestats()
|
|
update-stats:
|
|
action_help: Update monitoring statistics
|
|
api: POST /monitor/stats
|
|
arguments:
|
|
period:
|
|
help: Time period to update
|
|
choices:
|
|
- day
|
|
- week
|
|
- month
|
|
|
|
### monitor_showstats()
|
|
show-stats:
|
|
action_help: Show monitoring statistics
|
|
api: GET /monitor/stats
|
|
arguments:
|
|
period:
|
|
help: Time period to show
|
|
choices:
|
|
- day
|
|
- week
|
|
- month
|
|
|
|
### monitor_enable()
|
|
enable:
|
|
action_help: Enable server monitoring
|
|
api: PUT /monitor
|
|
arguments:
|
|
-s:
|
|
full: --with-stats
|
|
help: Enable monitoring statistics
|
|
action: store_true
|
|
|
|
### monitor_disable()
|
|
disable:
|
|
api: DELETE /monitor
|
|
action_help: Disable server monitoring
|
|
|
|
|
|
#############################
|
|
# Settings #
|
|
#############################
|
|
settings:
|
|
category_help: Manage YunoHost global settings
|
|
actions:
|
|
|
|
### settings_list()
|
|
list:
|
|
action_help: list all entries of the settings
|
|
api: GET /settings
|
|
|
|
### settings_get()
|
|
get:
|
|
action_help: get an entry value in the settings
|
|
api: GET /settings/<key>
|
|
arguments:
|
|
key:
|
|
help: Settings key
|
|
--full:
|
|
help: Show more details
|
|
action: store_true
|
|
|
|
### settings_set()
|
|
set:
|
|
action_help: set an entry value in the settings
|
|
api: POST /settings/<key>
|
|
arguments:
|
|
key:
|
|
help: Settings key
|
|
-v:
|
|
full: --value
|
|
help: new value
|
|
extra:
|
|
required: True
|
|
|
|
### settings_reset_all()
|
|
reset-all:
|
|
action_help: reset all settings to their default value
|
|
api: DELETE /settings
|
|
|
|
### settings_reset()
|
|
reset:
|
|
action_help: set an entry value to its default one
|
|
api: DELETE /settings/<key>
|
|
arguments:
|
|
key:
|
|
help: Settings key
|
|
|
|
#############################
|
|
# Service #
|
|
#############################
|
|
service:
|
|
category_help: Manage services
|
|
actions:
|
|
|
|
### service_add()
|
|
add:
|
|
action_help: Add a service
|
|
# api: POST /services
|
|
arguments:
|
|
name:
|
|
help: Service name to add
|
|
-s:
|
|
full: --status
|
|
help: Custom status command
|
|
-l:
|
|
full: --log
|
|
help: Absolute path to log file to display
|
|
nargs: "+"
|
|
-r:
|
|
full: --runlevel
|
|
help: Runlevel priority of the service
|
|
type: int
|
|
-n:
|
|
full: --need_lock
|
|
help: Use this option to prevent deadlocks if the service does invoke yunohost commands.
|
|
action: store_true
|
|
-d:
|
|
full: --description
|
|
help: Description of the service
|
|
-t:
|
|
full: --log_type
|
|
help: Type of the log (file or systemd)
|
|
nargs: "+"
|
|
choices:
|
|
- file
|
|
- systemd
|
|
default: file
|
|
|
|
### service_remove()
|
|
remove:
|
|
action_help: Remove a service
|
|
# api: DELETE /services
|
|
arguments:
|
|
name:
|
|
help: Service name to remove
|
|
|
|
### service_start()
|
|
start:
|
|
action_help: Start one or more services
|
|
api: PUT /services/<names>
|
|
arguments:
|
|
names:
|
|
help: Service name to start
|
|
nargs: "+"
|
|
metavar: NAME
|
|
|
|
### service_stop()
|
|
stop:
|
|
action_help: Stop one or more services
|
|
api: DELETE /services/<names>
|
|
arguments:
|
|
names:
|
|
help: Service name to stop
|
|
nargs: "+"
|
|
metavar: NAME
|
|
|
|
### service_reload()
|
|
reload:
|
|
action_help: Reload one or more services
|
|
arguments:
|
|
names:
|
|
help: Service name to reload
|
|
nargs: "+"
|
|
metavar: NAME
|
|
|
|
### service_restart()
|
|
restart:
|
|
action_help: Restart one or more services. If the services are not running yet, they will be started.
|
|
arguments:
|
|
names:
|
|
help: Service name to restart
|
|
nargs: "+"
|
|
metavar: NAME
|
|
|
|
### service_reload_or_restart()
|
|
reload_or_restart:
|
|
action_help: Reload one or more services if they support it. If not, restart them instead. If the services are not running yet, they will be started.
|
|
arguments:
|
|
names:
|
|
help: Service name to reload or restart
|
|
nargs: "+"
|
|
metavar: NAME
|
|
|
|
### service_enable()
|
|
enable:
|
|
action_help: Enable one or more services
|
|
api: PUT /services/<names>/enable
|
|
arguments:
|
|
names:
|
|
help: Service name to enable
|
|
nargs: "+"
|
|
metavar: NAME
|
|
|
|
### service_disable()
|
|
disable:
|
|
action_help: Disable one or more services
|
|
api: DELETE /services/<names>/enable
|
|
arguments:
|
|
names:
|
|
help: Service name to disable
|
|
nargs: "+"
|
|
metavar: NAME
|
|
|
|
### service_status()
|
|
status:
|
|
action_help: Show status information about one or more services (all by default)
|
|
api:
|
|
- GET /services
|
|
- GET /services/<names>
|
|
arguments:
|
|
names:
|
|
help: Service name to show
|
|
nargs: "*"
|
|
metavar: NAME
|
|
|
|
### service_log()
|
|
log:
|
|
action_help: Log every log files of a service
|
|
api: GET /services/<name>/log
|
|
arguments:
|
|
name:
|
|
help: Service name to log
|
|
-n:
|
|
full: --number
|
|
help: Number of lines to display
|
|
default: 50
|
|
type: int
|
|
|
|
### service_regen_conf()
|
|
regen-conf:
|
|
action_help: Regenerate the configuration file(s) for a service
|
|
api: PUT /services/regenconf
|
|
deprecated_alias:
|
|
- regenconf
|
|
arguments:
|
|
names:
|
|
help: Services name to regenerate configuration of
|
|
nargs: "*"
|
|
metavar: NAME
|
|
-d:
|
|
full: --with-diff
|
|
help: Show differences in case of configuration changes
|
|
action: store_true
|
|
-f:
|
|
full: --force
|
|
help: >
|
|
Override all manual modifications in configuration
|
|
files
|
|
action: store_true
|
|
-n:
|
|
full: --dry-run
|
|
help: Show what would have been regenerated
|
|
action: store_true
|
|
-p:
|
|
full: --list-pending
|
|
help: List pending configuration files and exit
|
|
action: store_true
|
|
|
|
#############################
|
|
# Firewall #
|
|
#############################
|
|
firewall:
|
|
category_help: Manage firewall rules
|
|
actions:
|
|
|
|
### firewall_list()
|
|
list:
|
|
action_help: List all firewall rules
|
|
api: GET /firewall
|
|
arguments:
|
|
-r:
|
|
full: --raw
|
|
help: Return the complete YAML dict
|
|
action: store_true
|
|
-i:
|
|
full: --by-ip-version
|
|
help: List rules by IP version
|
|
action: store_true
|
|
-f:
|
|
full: --list-forwarded
|
|
help: List forwarded ports with UPnP
|
|
action: store_true
|
|
|
|
### firewall_reload()
|
|
reload:
|
|
action_help: Reload all firewall rules
|
|
api: PUT /firewall
|
|
arguments:
|
|
--skip-upnp:
|
|
help: Do not refresh port forwarding using UPnP
|
|
action: store_true
|
|
|
|
### firewall_allow()
|
|
allow:
|
|
action_help: Allow connections on a port
|
|
api: POST /firewall/port
|
|
arguments:
|
|
protocol:
|
|
help: "Protocol type to allow (TCP/UDP/Both)"
|
|
choices:
|
|
- TCP
|
|
- UDP
|
|
- Both
|
|
default: TCP
|
|
port:
|
|
help: Port or range of ports to open
|
|
extra:
|
|
pattern: &pattern_port_or_range
|
|
- !!str ((^|(?!\A):)([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])){1,2}?$
|
|
- "pattern_port_or_range"
|
|
-4:
|
|
full: --ipv4-only
|
|
help: Only add a rule for IPv4 connections
|
|
action: store_true
|
|
-6:
|
|
full: --ipv6-only
|
|
help: Only add a rule for IPv6 connections
|
|
action: store_true
|
|
--no-upnp:
|
|
help: Do not add forwarding of this port with UPnP
|
|
action: store_true
|
|
--no-reload:
|
|
help: Do not reload firewall rules
|
|
action: store_true
|
|
|
|
|
|
### firewall_disallow()
|
|
disallow:
|
|
action_help: Disallow connections on a port
|
|
api: DELETE /firewall/port
|
|
arguments:
|
|
protocol:
|
|
help: "Protocol type to allow (TCP/UDP/Both)"
|
|
choices:
|
|
- TCP
|
|
- UDP
|
|
- Both
|
|
default: TCP
|
|
port:
|
|
help: Port or range of ports to close
|
|
extra:
|
|
pattern: *pattern_port_or_range
|
|
-4:
|
|
full: --ipv4-only
|
|
help: Only remove the rule for IPv4 connections
|
|
action: store_true
|
|
-6:
|
|
full: --ipv6-only
|
|
help: Only remove the rule for IPv6 connections
|
|
action: store_true
|
|
--upnp-only:
|
|
help: Only remove forwarding of this port with UPnP
|
|
action: store_true
|
|
--no-reload:
|
|
help: Do not reload firewall rules
|
|
action: store_true
|
|
|
|
|
|
### firewall_upnp()
|
|
upnp:
|
|
action_help: Manage port forwarding using UPnP
|
|
api: GET /firewall/upnp
|
|
arguments:
|
|
action:
|
|
choices:
|
|
- enable
|
|
- disable
|
|
- status
|
|
- reload
|
|
nargs: "?"
|
|
default: status
|
|
--no-refresh:
|
|
help: Do not refresh port forwarding
|
|
action: store_true
|
|
|
|
### firewall_stop()
|
|
stop:
|
|
action_help: Stop iptables and ip6tables
|
|
api: DELETE /firewall
|
|
|
|
|
|
|
|
#############################
|
|
# DynDNS #
|
|
#############################
|
|
dyndns:
|
|
category_help: Subscribe and Update DynDNS Hosts
|
|
actions:
|
|
|
|
### dyndns_subscribe()
|
|
subscribe:
|
|
action_help: Subscribe to a DynDNS service
|
|
api: POST /dyndns
|
|
arguments:
|
|
--subscribe-host:
|
|
help: Dynette HTTP API to subscribe to
|
|
default: "dyndns.yunohost.org"
|
|
-d:
|
|
full: --domain
|
|
help: Full domain to subscribe with
|
|
extra:
|
|
pattern: *pattern_domain
|
|
-k:
|
|
full: --key
|
|
help: Public DNS key
|
|
|
|
### dyndns_update()
|
|
update:
|
|
action_help: Update IP on DynDNS platform
|
|
api: PUT /dyndns
|
|
arguments:
|
|
--dyn-host:
|
|
help: Dynette DNS server to inform
|
|
default: "dyndns.yunohost.org"
|
|
-d:
|
|
full: --domain
|
|
help: Full domain to update
|
|
extra:
|
|
pattern: *pattern_domain
|
|
-k:
|
|
full: --key
|
|
help: Public DNS key
|
|
-i:
|
|
full: --ipv4
|
|
help: IP address to send
|
|
-f:
|
|
full: --force
|
|
help: Force the update (for debugging only)
|
|
action: store_true
|
|
-D:
|
|
full: --dry-run
|
|
help: Only display the generated zone
|
|
action: store_true
|
|
-6:
|
|
full: --ipv6
|
|
help: IPv6 address to send
|
|
|
|
### dyndns_installcron()
|
|
installcron:
|
|
action_help: Install IP update cron
|
|
api: POST /dyndns/cron
|
|
|
|
### dyndns_removecron()
|
|
removecron:
|
|
action_help: Remove IP update cron
|
|
api: DELETE /dyndns/cron
|
|
|
|
|
|
#############################
|
|
# Tools #
|
|
#############################
|
|
tools:
|
|
category_help: Specific tools
|
|
actions:
|
|
|
|
### tools_adminpw()
|
|
adminpw:
|
|
action_help: Change password of admin and root users
|
|
api: PUT /adminpw
|
|
arguments:
|
|
-n:
|
|
full: --new-password
|
|
extra:
|
|
password: ask_new_admin_password
|
|
pattern: *pattern_password
|
|
required: True
|
|
comment: good_practices_about_admin_password
|
|
|
|
### tools_maindomain()
|
|
maindomain:
|
|
action_help: Check the current main domain, or change it
|
|
api:
|
|
- GET /domains/main
|
|
- PUT /domains/main
|
|
arguments:
|
|
-n:
|
|
full: --new-domain
|
|
help: Change the current main domain
|
|
extra:
|
|
pattern: *pattern_domain
|
|
|
|
### tools_postinstall()
|
|
postinstall:
|
|
action_help: YunoHost post-install
|
|
api: POST /postinstall
|
|
configuration:
|
|
# We need to be able to run the postinstall without being authenticated, otherwise we can't run the postinstall
|
|
authenticate: false
|
|
arguments:
|
|
-d:
|
|
full: --domain
|
|
help: YunoHost main domain
|
|
extra:
|
|
ask: ask_main_domain
|
|
pattern: *pattern_domain
|
|
required: True
|
|
-p:
|
|
full: --password
|
|
help: YunoHost admin password
|
|
extra:
|
|
password: ask_new_admin_password
|
|
pattern: *pattern_password
|
|
required: True
|
|
comment: good_practices_about_admin_password
|
|
--ignore-dyndns:
|
|
help: Do not subscribe domain to a DynDNS service
|
|
action: store_true
|
|
--force-password:
|
|
help: Use this if you really want to set a weak password
|
|
action: store_true
|
|
|
|
### tools_update()
|
|
update:
|
|
action_help: YunoHost update
|
|
api: PUT /update
|
|
arguments:
|
|
--apps:
|
|
help: Fetch the application list to check which apps can be upgraded
|
|
action: store_true
|
|
--system:
|
|
help: Fetch available system packages upgrades (equivalent to apt update)
|
|
action: store_true
|
|
|
|
### tools_upgrade()
|
|
upgrade:
|
|
action_help: YunoHost upgrade
|
|
api: PUT /upgrade
|
|
arguments:
|
|
--apps:
|
|
help: List of apps to upgrade (all by default)
|
|
nargs: "*"
|
|
--system:
|
|
help: Upgrade only the system packages
|
|
action: store_true
|
|
|
|
### tools_diagnosis()
|
|
diagnosis:
|
|
action_help: YunoHost diagnosis
|
|
api: GET /diagnosis
|
|
arguments:
|
|
-p:
|
|
full: --private
|
|
help: Show private data (domain, IP)
|
|
action: store_true
|
|
|
|
### tools_port_available()
|
|
port-available:
|
|
action_help: Check availability of a local port
|
|
api: GET /tools/portavailable
|
|
arguments:
|
|
port:
|
|
help: Port to check
|
|
extra:
|
|
pattern: *pattern_port
|
|
|
|
### tools_shell()
|
|
shell:
|
|
action_help: Launch a development shell
|
|
arguments:
|
|
-c:
|
|
help: python command to execute
|
|
full: --command
|
|
|
|
### tools_shutdown()
|
|
shutdown:
|
|
action_help: Shutdown the server
|
|
api: PUT /shutdown
|
|
arguments:
|
|
-f:
|
|
help: skip the shutdown confirmation
|
|
full: --force
|
|
action: store_true
|
|
|
|
### tools_reboot()
|
|
reboot:
|
|
action_help: Reboot the server
|
|
api: PUT /reboot
|
|
arguments:
|
|
-f:
|
|
help: skip the reboot confirmation
|
|
full: --force
|
|
action: store_true
|
|
|
|
### tools_regen_conf()
|
|
regen-conf:
|
|
action_help: Regenerate the configuration file(s)
|
|
api: PUT /tools/regenconf
|
|
arguments:
|
|
names:
|
|
help: Categories to regenerate configuration of (all by default)
|
|
nargs: "*"
|
|
metavar: NAME
|
|
-d:
|
|
full: --with-diff
|
|
help: Show differences in case of configuration changes
|
|
action: store_true
|
|
-f:
|
|
full: --force
|
|
help: Override all manual modifications in configuration files
|
|
action: store_true
|
|
-n:
|
|
full: --dry-run
|
|
help: Show what would have been regenerated
|
|
action: store_true
|
|
-p:
|
|
full: --list-pending
|
|
help: List pending configuration files and exit
|
|
action: store_true
|
|
|
|
subcategories:
|
|
|
|
migrations:
|
|
subcategory_help: Manage migrations
|
|
actions:
|
|
|
|
### tools_migrations_list()
|
|
list:
|
|
action_help: List migrations
|
|
api: GET /migrations
|
|
arguments:
|
|
--pending:
|
|
help: list only pending migrations
|
|
action: store_true
|
|
--done:
|
|
help: list only migrations already performed
|
|
action: store_true
|
|
|
|
### tools_migrations_migrate()
|
|
migrate:
|
|
action_help: Run migrations
|
|
api: POST /migrations/migrate
|
|
arguments:
|
|
targets:
|
|
help: Migrations to run (all pendings by default)
|
|
nargs: "*"
|
|
--skip:
|
|
help: Skip specified migrations (to be used only if you know what you are doing)
|
|
action: store_true
|
|
--force-rerun:
|
|
help: Re-run already-ran specified migration (to be used only if you know what you are doing)
|
|
action: store_true
|
|
--auto:
|
|
help: Automatic mode, won't run manual migrations (to be used only if you know what you are doing)
|
|
action: store_true
|
|
--accept-disclaimer:
|
|
help: Accept disclaimers of migrations (please read them before using this option)
|
|
action: store_true
|
|
|
|
### tools_migrations_state()
|
|
state:
|
|
action_help: Show current migrations state
|
|
api: GET /migrations/state
|
|
|
|
|
|
#############################
|
|
# Hook #
|
|
#############################
|
|
hook:
|
|
category_help: Manage hooks
|
|
actions:
|
|
|
|
### hook_add()
|
|
add:
|
|
action_help: Store hook script to filesystem
|
|
arguments:
|
|
app:
|
|
help: App to link with
|
|
file:
|
|
help: Script to add
|
|
|
|
### hook_remove()
|
|
remove:
|
|
action_help: Remove hook scripts from filesystem
|
|
arguments:
|
|
app:
|
|
help: Scripts related to app will be removed
|
|
|
|
### hook_info()
|
|
info:
|
|
action_help: Get information about a given hook
|
|
api: GET /hooks/<action>/<name>
|
|
arguments:
|
|
action:
|
|
help: Action name
|
|
name:
|
|
help: Hook name
|
|
|
|
### hook_list()
|
|
list:
|
|
action_help: List available hooks for an action
|
|
api: GET /hooks/<action>
|
|
arguments:
|
|
action:
|
|
help: Action name
|
|
-l:
|
|
full: --list-by
|
|
help: Property to list hook by
|
|
choices:
|
|
- name
|
|
- priority
|
|
- folder
|
|
default: name
|
|
-i:
|
|
full: --show-info
|
|
help: Show hook information
|
|
action: store_true
|
|
|
|
### hook_callback()
|
|
callback:
|
|
action_help: Execute all scripts binded to an action
|
|
api: POST /hooks/<action>
|
|
arguments:
|
|
action:
|
|
help: Action name
|
|
-n:
|
|
full: --hooks
|
|
help: List of hooks names to execute
|
|
nargs: "*"
|
|
-a:
|
|
full: --args
|
|
help: Ordered list of arguments to pass to the scripts
|
|
nargs: "*"
|
|
-q:
|
|
full: --no-trace
|
|
help: Do not print each command that will be executed
|
|
action: store_true
|
|
-d:
|
|
full: --chdir
|
|
help: The directory from where the scripts will be executed
|
|
|
|
### hook_exec()
|
|
exec:
|
|
action_help: Execute hook from a file with arguments
|
|
arguments:
|
|
path:
|
|
help: Path of the script to execute
|
|
-a:
|
|
full: --args
|
|
help: Ordered list of arguments to pass to the script
|
|
nargs: "*"
|
|
--raise-on-error:
|
|
help: Raise if the script returns a non-zero exit code
|
|
action: store_true
|
|
-q:
|
|
full: --no-trace
|
|
help: Do not print each command that will be executed
|
|
action: store_true
|
|
-d:
|
|
full: --chdir
|
|
help: The directory from where the script will be executed
|
|
|
|
#############################
|
|
# Log #
|
|
#############################
|
|
log:
|
|
category_help: Manage debug logs
|
|
actions:
|
|
|
|
### log_list()
|
|
list:
|
|
action_help: List logs
|
|
api: GET /logs
|
|
arguments:
|
|
category:
|
|
help: Log category to display (default operations), could be operation, history, package, system, access, service or app
|
|
nargs: "*"
|
|
-l:
|
|
full: --limit
|
|
help: Maximum number of logs
|
|
type: int
|
|
-d:
|
|
full: --with-details
|
|
help: Show additional infos (e.g. operation success) but may significantly increase command time. Consider using --limit in combination with this.
|
|
action: store_true
|
|
|
|
### log_display()
|
|
display:
|
|
action_help: Display a log content
|
|
api: GET /logs/display
|
|
arguments:
|
|
path:
|
|
help: Log file which to display the content
|
|
-n:
|
|
full: --number
|
|
help: Number of lines to display
|
|
default: 50
|
|
type: int
|
|
--share:
|
|
help: Share the full log using yunopaste
|
|
action: store_true
|