frontup

0.12.4 • Public • Published

frontup

A command to upload files to a S3 bucket and create invalidation of AWS CloudFront distribution.

This command needs official AWS-CLI. And you must setup the profile (~/.aws) to connect for AWS.

Currently, this command invalidates all content paths after uploading.

INSTALL

npm install --global frontup

or

npm install --save-dev frontup

If the global install fails, once uninstalling might be a solution.

USAGE

$ frontup -h
Usage: frontup [frontup_config_js] [OPTION]
AWS S3 contents uploader distributed by AWS cloudfront distribution.

PARAMETERS:
  frontup_config_js (Optional)
    A configuration filename.
    Default: "./frontup.config.js"

OPTIONS:
  -n, --dry-run Do not upload any files, but print the files and target keys
  -v, --version display version
  -h, --help    display this help

A configuration file must be decalared as a CommonJs module.
It must export an object like below.

  module.exports = {
      "CloudFrontDistributionId": "<cloudfront-distribution-id>",
      "S3BucketName": "<s3-bucket-name>",
      "Files": {
          "<destination-s3-key>": "<relative-path-name>",
          "<destination-s3-key>": [
              "<relative-path-name>",
                  .
                  .
                  .
          ],
          "<destination-s3-key>": {
              "path": "<relative-path-name>",
              "exclude": [
                  "<regular-expression-to-exclude>",
                      .
                      .
                      .
              ],
          },
          .
          .
          .
      },
  };

Installation: npm install frontup
Respository:  https://github.com/takamin/frontup

Here is an example of configuration file.

frontup.config.js:

module.exports = {
    "CloudFrontDistributionId": "<cloudfront-distribution-id>",
    "S3BucketName": "<s3-bucket-name>",
    "Files": {
        "<destination-s3-key>": "<relative-path-name>",
        "<destination-s3-key>": [
            "<relative-path-name>",
                .
                .
                .
        ],
        "<destination-s3-key>": {
            "path": "<relative-path-name>",
            "exclude": [
                "<regular-expression-to-exclude>",
                    .
                    .
                    .
            ],
        },
        .
        .
        .
    },
};

cloudfront-distribution-id:

The id of CloudFront distribution.

s3-bucket-name:

The S3 bucket name which the contents published by the ClodFront distribution are stored.

destination-s3-key:

The destination S3 Key. If this must be a folder key, it should be ended with a slash(/).

relative-path-name:

The name to upload file or directory. This must be a relative pathname from the current working directory. Do not start with ./, ../ or / for the pathname.

If the pathname is directory, all the files will be uploaded.

regular-expression-to-exclude

To exclude specific files, Write regular expressions matching to the excluding file name.

LICENSE

Copyright (c) 2019 Koji Takami

This software is released under the MIT License

Package Sidebar

Install

npm i frontup

Weekly Downloads

1

Version

0.12.4

License

MIT

Unpacked Size

32.2 kB

Total Files

9

Last publish

Collaborators

  • vzg03566