Developer command line tools
To support you with bootstrapping, running and deploying applications we have built a Command Line Interface. The tool is the successor of the
cumulocity-node-tools. To avoid conflicts, it listens to the new command
c8ycli instead of
c8y. You can install it via npm:
npm install -g @c8y/cli
c8ycli [options] [command]
Info: The commands must be executed from the root of the project.
-u, --url <url> The URL of the remote instance --version Provides version number -h, --help Provides usage information
All the commands except of
new take an array of glob patterns. These will be solved to folders or entry point manifests.
new [name] [template] Creates a folder to start a new application or extend an existing one serve [options] [appPaths...] Runs local development server build [options] [appPaths...] Builds the specified apps deploy [options] [appPaths...] Deploys apps from the specified paths locale-extract [options] [srcPaths...] Extracts all strings for translation and outputs the .po files to defined folder
c8ycli new [name] [template] helps to start an empty application or to extend one of our existing applications (Cockpit, Devicemanagement or Administration). To extend an existing application use as
[template] the name of the existing application like this:
$ c8ycli new cockpit cockpit
c8ycli newcommand has a
-aflag which defines which package to use for scaffolding. This way you can also define which version of the app you want to scaffold, e.g.:
c8ycli new my-cockpit cockpit -a @firstname.lastname@example.org scaffold an app with the version
c8ycli new my-cockpit cockpit -a @c8y/apps@latestwill scaffold an app with the latest official release. Same as if used without the
c8ycli new my-cockpit cockpit -a @c8y/apps@nextwill scaffold an app with the latest beta release.
Application options can be defined with
--app.<option>=<value>. These will be applied to all applications found with
--app.name="My Application" --app.key=myapp-key --app.contextPath=myapplication --app.brandingEntry="./branding/mybranding.less"
Webpack options can be defined with
--env.<option>=<value>. These will be directly passed to the webpack configuration.