Skip to content

jcberquist/commandbox-lex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

commandbox-lex

This is a WIP CommandBox module that can list and install Lucee server extensions for you.

This module will register the lex namespace in CommandBox.

Commands

lex show

Lists all Lucee extensions currently available from Lucee extension providers. (At this time that means Lucee and ForgeBox.)

lex list

Lists all Lucee server extensions installed on the server present in the CWD.

Note: One can also specify a server name, or a path to a server webroot, or server config file (server.json). These commands will all try to follow the same server resolution strategy as the server commands in the CommandBox core.

lex install id@version
lex install ./path/to/extension.lex
lex install https://site.com/path/to/extension.lex
lex install s3://bucket/path/to/extension.lex

In each case, the command first resolves the extension location to a local file path, then copies that file into the Lucee server's deploy directory. The --wait flag can be specified in order to have the command block until the deploy folder has emptied and the extension is contained in the lucee-server.xml file:

lex install id@version --wait

After installation, information about the extension is written to the server.json file in an array under the key "luceeServerExtensions". Each entry has the following format:

{
    "id":"99A4EF8D-F2FD-40C8-8FB8C2E67A4EEEB6",
    "version":"6.2.2.jre8",
    "name":"Microsoft SQL Server (Vendor Microsoft)",
    "location":"http://extension.lucee.org/rest/extension/provider/full/99A4EF8D-F2FD-40C8-8FB8C2E67A4EEEB6?version=6.2.2.jre8"
}

Note that the location will vary based on where the extension was installed from:

{
    "id":"99A4EF8D-F2FD-40C8-8FB8C2E67A4EEEB6",
    "version":"6.2.2.jre8",
    "name":"Microsoft SQL Server (Vendor Microsoft)",
    "location":"s3://my-bucket/extensions/mssql-6.2.2.lex"
}

If lex install is run without providing an extension to install, the command will read all the extensions defined in your server.json file and attempt to install them if they are not currently installed on the server.

lex update
lex update --prerelease

Downloads and installs any extension updates that are available from extension providers for extensions currently installed on your server. Specifying the --prerelease flag will allow prerelease version updates to be installed.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published