0.0.1-beta.28 • Published 1 year ago

cdk-appconfig v0.0.1-beta.28

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
1 year ago

cdk-appconfig

Motivation

This simple project was inspired from this stackoverflow question, where I shared this answer.

When I read docs on the AppConfig construct library, I soon realized that it was ripe for L2 and L3 constructs. Hence this library.

PRs are always welcome !

To-Do/Work In Progress (PRs welcome!!!)

  • A more customizable construct allowing consumers for a deeper configuration.
  • Add support for semantic validation.

Releases

LanguageRepository
JavaScript/TypeScriptcdk-appconfig

I don't have time, show me how this works

Source

"dependencies": {
    ...
    "cdk-appconfig": "*", // choose specific version 
    ...
  },
import { StackProps, Stack, App } from 'aws-cdk-lib';
import { SimpleAppConfig } from 'cdk-appconfig';
import { Construct } from 'constructs';


/**
 * Demo stack for {@link SimpleAppConfig}.
 */
export class SimpleAppConfigDemoStack extends Stack {
    /**
       * The {@link SimpleAppConfig} construct.
       */
    public readonly simpleAppConfig: SimpleAppConfig;

    constructor(scope: Construct, id: string, props: StackProps = {}) {
        super(scope, id, props);

        // Everything below is customizable, so use it as needed.
        this.simpleAppConfig = new SimpleAppConfig(this, 'SimpleAppConfig', {
            applicationName: 'MyAppConfigAppName',
            applicationEnvironment: 'MyEnvironment',
            configurationProfileName: 'MyConfigProfileName',
            // see {@link SimpleAppConfig#ConfigurationContent}, this is pretty generic.
            configurationContent: {
                MyStringKey: 'MyValue',
                MyBooleanKey: true,
                MyNumberKey: 123,
                MyCompositeKey: {
                    MyStringKey: 'MyValue',
                    MyBooleanKey: true,
                    MyNumberKey: 123,
                },
                MyArrayKey: [
                    {
                        MyStringKey: 'MyValue1',
                        MyBooleanKey: true,
                        MyNumberKey: 123,
                    },
                    {
                        MyStringKey: 'MyValue2',
                        MyBooleanKey: false,
                        MyNumberKey: 456,
                    },
                ],
            },
        });
    }
}

Application

npm.io

Configuration Profile

npm.io

Freeform Configuration

npm.io

0.0.1-beta.28

1 year ago

0.0.1-beta.27

1 year ago

0.0.1-beta.21

2 years ago

0.0.1-beta.23

2 years ago

0.0.1-beta.22

2 years ago

0.0.1-beta.25

2 years ago

0.0.1-beta.24

2 years ago

0.0.1-beta.26

2 years ago

0.0.1-beta.20

2 years ago

0.0.1-beta.19

2 years ago

0.0.1-beta.18

2 years ago

0.0.1-beta.17

2 years ago

0.0.1-beta.16

2 years ago

0.0.1-beta.15

2 years ago

0.0.1-beta.14

2 years ago

0.0.1-beta.13

2 years ago

0.0.1-beta.10

2 years ago

0.0.1-beta.12

2 years ago

0.0.1-beta.11

2 years ago

0.0.1-beta.7

2 years ago

0.0.1-beta.9

2 years ago

0.0.1-beta.8

2 years ago

0.0.1-beta.6

2 years ago

0.0.1-beta.5

2 years ago

0.0.1-beta.4

2 years ago

0.0.1-beta.3

2 years ago

0.0.1-beta.2

2 years ago

0.0.1-beta.1

2 years ago

0.0.1-beta.0

2 years ago