1.0.0 • Published 5 months ago

@supercoder.dev/replace-local-files-with-aws v1.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
5 months ago

Replace local files with AWS

NodeJS-based Typescript application which provides functionality to replace local files with corresponding files on AWS S3 bucket.

Installation

NodeJS version 14.18.1 is required to work with this application.

Install all dependencies:

npm install

Provide environmental variables for AWS to .env file:

  • S3_BUCKET_NAME
  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
  • AWS_REGION

S3_BUCKET_NAME

S3 bucket where replacement files are located

AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY

These are the AWS environment variables. They might be obtained in IAM services and/or in local AWS profile which is used for aws-cli.

AWS_REGION

AWS region where the S3 bucket was created.

Input configuration

To specify what files should be replaced with corresponding files in S3 bucket, you must create a JSON file according to the following governance:

{
  "config": [
    {
      "fileToReplace": "a.text",
      "keyOfFileToReplaceWith": "replace-from-aws-a.txt"
    }
  ]
}

When you start the program, you must provide the file's path. Continue reading to learn how.

fileToReplace

This is the path to the file that should be replaced with a file from the S3 bucket.

keyOfFileToReplaceWith

This is the key of an object inside an AWS S3 bucket.

Running from the command line

To start file replacement the following command should be launched:

npm run start

TS compiles code and then runs JS using NodeJS.

Tests

npm run test ./input.json

Here, ./input.json is the path to the configuration file. Replace this with your file's actual path. The command above runs Eslint (to check code for static issues) and then runs unit tests which are located in tests/units folder.