# extension: Extensions

The `extension` utility allows performing a number of operations on Plesk extensions (former modules), like creating and registering them in Plesk, installing extensions to Plesk, and other.

## Usage

    extension <command> [<param>][
    <option_1> [<param>]
    [<option_2>]
    ]

## Example

The following command creates the extension named Mod_1 which does not contain installation scripts defined by the extension template:

    plesk bin extension -c Mod_1 -no-scripts

## Commands

Command | Parameter | Description | Example
--- | --- | --- | ---
`--create` or `-c` | `<name>` | Creates a new extension based on the extension template. Note that created extensions are not automatically registered in Plesk. | To create a extension named Mod_1:
    plesk bin extension -c Mod_1
`--register` or `-r` | `<name>` | Register a created extension in Plesk. After the registration, the extension appears in the Extensions list of the Server Administration Panel. | To register the Mod_1 extension:
    plesk bin extension -r Mod_1
`--install` or `-i` | `<file>` | Installs a extension from a .zip file. | To install an extension from the `mod.zip` file:
    plesk bin extension -i /tmp/mod.zip
`--install-url` | `<url>` | Installs an extension from an URL. | To install an extension from the URL `http://example.com/mod.zip`
    plesk bin extension --install-url http://example.com/mod.zip
`--upgrade or -g` | `<file>` | Installs a extension from a .zip file or upgrades an already installed extension to a later version. | To upgrade an already installed extension from the `mod.zip` file:
    plesk bin extension -g /tmp/mod.zip
`--upgrade-url` | `<url>` | Installs a extension from an URL or upgrades an already installed extension to a later version. | To install an extension from the URL `http://example.com/mod.zip`
    plesk bin extension --upgrade-url http://example.com/mod.zip
`--uninstall` or `-u` | `<name>` | Removes a specified registered extension from Plesk. | To remove the Mod_1 extension:
    plesk bin extension -u Mod_1
`--pack` or `-p` | `<name>` | Exports a specified extension to a .zip file for further distribution. If you do not specify a zip file location with the `destination` option, the file will be created in the current directory. | To export the Mod_1 extension to a zip file:
    plesk bin extension -p Mod_1
`--exec` or `-e` | `<name> <command> [<options>]` | Executes a specified script defined in a certain extension. | To run the `post-install.php` script of the Mod_1 extension with some parameters:
    plesk bin extension -e Mod_1 post-install.php upgrade 1.4
`--list` or `-l` |  | Displays the list of installed extensions. | To display the list of currently installed extensions:
    plesk bin extension -l
`--enable` | `<name>` | Makes the extension active and accessible for users. | To enable the Mod_1 extension:
    plesk bin extension --enable Mod_1
`--disable` | `<name>` | Makes the extension inactive and inaccessible for users. | To disable the Mod_1 extension:
    plesk bin extension --disable Mod_1
`--call` | `<name><command>[<options>]` | Calls a command-line interface of the specified extension. | To run the –list command of the git utility available for the Git Manager extension:
    plesk bin extension --call git --list
`--help` or `-h` |  | Displays help on the use of the utility. | To view help on the use of this utility:
    plesk bin extension -h

## Options

Option | Parameter | Description | Example
--- | --- | --- | ---
`-destination` | `<path>` | A path to the directory where the exported extension should be located. For using with the `--pack` command. | To set the `/tmp` location for the exported file:
    plesk bin extension -p Mod_1 -destination /tmp
`-no-ui` |  | Do not add resource files defined by the extension template to a created extension. The new extension will contain a meta file and installation scripts only. For using with the `--create` command. | To create a extension named Mod_1 without resource files:
    plesk bin extension -c Mod_1 -no-ui
`-no-scripts` |  | Do not add installation scripts defined by the extension template to a created extension. The new extension will contain a meta file and resource files only. For using with the `--create` command. | To create a extension named Mod_1 without installation scripts:
    plesk bin extension -c Mod_1 -no-scripts