@dev-spendesk/fab-cli

The CLI entry-point for the FAB ecosystem

Usage no npm install needed!

<script type="module">
  import devSpendeskFabCli from 'https://cdn.skypack.dev/@dev-spendesk/fab-cli';
</script>

README

FAB Command Line Interface

fab: the CLI entry-point for the FAB ecosystem

oclif Version Downloads/week License

Usage

$ npm install -g @dev-spendesk/fab-cli
$ fab COMMAND
running command...
$ fab (-v|--version|version)
@dev-spendesk/fab-cli/1.0.0-rc.11 linux-x64 node-v14.18.1
$ fab --help [COMMAND]
USAGE
  $ fab COMMAND
...

Commands

fab build

Generate a FAB given the config (usually in fab.config.json5)

USAGE
  $ fab build

OPTIONS
  -c, --config=config  [default: fab.config.json5] Path to config file
  -h, --help           show CLI help
  --minify             Minify the generated server.js file.
  --skip-cache         Skip any caching of intermediate build artifacts
  --skip-typecheck     Skip the background typechecking of your FAB plugins if it's slow or flaky.

  --watch=watch        Re-run the builder if any of the listed files change. Pass this argument multiple times to watch
                       multiple files/directories.

EXAMPLES
  $ fab build
  $ fab build --config=fab.config.json5
  $ fab build --watch dist --watch fab.config.json5

See code: lib/commands/build.js

fab deploy [FILE]

Deploy a FAB to a hosting provider

USAGE
  $ fab deploy [FILE]

OPTIONS
  -c, --config=config                                      [default: fab.config.json5] Path to config file
  -h, --help                                               show CLI help

  --assets-already-deployed-at=assets-already-deployed-at  Skip asset deploys and only deploy the server component
                                                           pointing at this URL for assets

  --assets-host=(cf-workers|aws-lambda-edge|aws-s3)        If you have multiple potential hosts for the assets defined
                                                           in your fab.config.json5, which one to deploy to.

  --assets-only                                            Skip server deploy, just upload assets

  --auto-install                                           If you need dependent packages (e.g. @dev-spendesk/deploy-*),
                                                           install them without prompting

  --env=env                                                Override production settings with a different environment
                                                           defined in your FAB config file.

  --package-dir=package-dir                                Where to save the packaged FAB files (default .fab/deploy)

  --server-host=(cf-workers|aws-lambda-edge|aws-s3)        If you have multiple potential hosts for the server defined
                                                           in your fab.config.json5, which one to deploy to.

EXAMPLE
  $ fab deploy fab.zip

See code: lib/commands/deploy.js

fab help [COMMAND]

display help for fab

USAGE
  $ fab help [COMMAND]

ARGUMENTS
  COMMAND  command to show help for

OPTIONS
  --all  see all commands in CLI

See code: @oclif/plugin-help

fab init

Auto-configure a repo for generating FABs

USAGE
  $ fab init

OPTIONS
  -c, --config=config         [default: fab.config.json5] Config filename
  -h, --help                  show CLI help
  -y, --yes                   Assume yes to all prompts (must be in the root directory of a project)
  --empty                     Install the packages and create an empty fab.config.json5 (implies -y)
  --skip-framework-detection  Don't try to auto-detect framework, set up manually.
  --skip-install              Do not attempt to npm install anything
  --version=version           What NPM version or dist-tag to use for installing FAB packages

EXAMPLES
  $ fab init
  $ fab init --config=fab.config.json5

See code: lib/commands/init.js

fab package [FILE]

Package a FAB to be uploaded to a hosting provider manually

USAGE
  $ fab package [FILE]

OPTIONS
  -c, --config=config                               [default: fab.config.json5] Path to config file
  -h, --help                                        show CLI help

  -t, --target=(cf-workers|aws-lambda-edge|aws-s3)  Hosting provider (must be one of: cf-workers, aws-lambda-edge,
                                                    aws-s3)

  --assets-url=assets-url                           A URL for where the assets can be accessed, for server deployers
                                                    that need it

  --env=env                                         Override production settings with a different environment defined in
                                                    your FAB config file.

  --output-path=output-path                         Where to save the packaged FAB (default .fab/deploy/[target].zip)

EXAMPLE
  $ fab package --target=aws-lambda-edge fab.zip

See code: lib/commands/package.js

fab serve [FILE]

fab serve: Serve a FAB in a local NodeJS Express server

USAGE
  $ fab serve [FILE]

OPTIONS
  -c, --config=config        [default: fab.config.json5] Path to config file. Only used for SETTINGS in conjunction with
                             --env.

  -h, --help                 show CLI help

  --auto-install             If you need dependent packages (e.g. @dev-spendesk/serve), install them without prompting

  --cert=cert                SSL certificate to use

  --env=env                  Override production settings with a different environment defined in your FAB config file.

  --experimental-v8-sandbox  Enable experimental V8::Isolate Runtime (in development, currently non-functional)

  --key=key                  Key for the SSL Certificate

  --port=port                (required) [default: 3000] Port to use

  --proxy-ws=proxy-ws        EXPERIMENTAL: Proxy websocket requests to a different port

  --watch                    EXPERIMENTAL: Watches fab.zip and restarts the server when it changes.

EXAMPLES
  $ fab serve fab.zip
  $ fab serve --port=3001 fab.zip
  $ fab serve --cert=local-ssl.cert --key=local-ssl.key fab.zip
  $ fab serve --env=staging fab.zip

See code: lib/commands/serve.js