Skip to content

superluminar-io/aws-luminarlz-cli

Repository files navigation

AWS luminarlz CLI

NPM Version

A lean, opinionated CLI to make deployment and development with the Landing Zone Accelerator on AWS (LZA) easier.

What it does and doesn't and what you need to know

Architecture diagram

AWS luminarlz CLI Architecture diagram

Usage

Initialize a new AWS landing zone

This is a step-by-step guide to initialize a new AWS landing zone using the luminarlz CLI.

We'll use the foundational blueprint that is heavily aligned with the Guidance for Establishing an Initial Foundation using Control Tower on AWS.

We recommend reading through the Guidance first as there are parts that require some manual steps and upfront planning like the root email strategy.

  1. Make sure you have an AWS Organizations management account which fulfils the LZA prerequisites.
  2. Make sure to deploy the LZA with the following settings:
    • Environment Configuration: Leave all the defaults, Control Tower Environment needs to be set to Yes.
    • Config Repository Configuration: Leave all the defaults and set Configuration Repository Location to s3.
  3. Wait until the initial LZA is successfully deployed.
  4. Configure your terminal with AWS administrator credentials for the Management AWS account.
  5. Init the project using:
npx @superluminar-io/aws-luminarlz-cli init
  1. Install the new dependencies:
npm install
  1. Adapt the settings and fill in the open TODOS in the generated config.ts file.
  2. Have a look at the generated README file as it contains further documentation on how to use the AWS luminarlz CLI.
  3. Deploy your new LZA config using:
# You'll need the `Management` account credentials with administrator rights to be configured in your terminal.
npm run cli -- deploy
  1. Search for open TODO comments in the generated files and adapt them to your needs.

Other CLI commands

Documentation for the other CLI commands can be found in the README generated when intializing a new AWS landing zone. Have a look at the foundational blueprint README.

Development

Prerequisites

  • Install the node version defined in .node-version.
  • Install dependencies:
yarn projen
  • To run the CLI without building it:
./src/index.ts

Remove the AWS luminarlz CLI

For whatever reason you want to remove the dependency to the AWS luminarlz CLI you can do so. After calling:

npm run cli -- synth

You find the raw aws-accelerator-config in the aws-accelerator-config.out directory and deploy it with any other mechanism you like.

About

A lean, opinionated CLI to make deployment and development with the AWS Landing Zone Accelerator easier.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published