1.2.1 • Published 3 years ago

node-scc-config v1.2.1

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

Configure your Node.js applications using Spring Cloud Config

Build Status Download Status

Benefits

  • Server and client data decryption

Installation

npm install node-scc-config
yarn add node-scc-config

Usage

  1. Create a client-side pointer to the Spring Cloud Config service

    const client = new SpringCloudConfigClient('your spring cloud config endpoint address...');
  2. Configuring the client before calling

    client
        .beforeLoad(s => ({
            your request options...
        }))
  3. Configuring the client after the call

    Chipher marker defaults to '{cipher}'

  • Chipher marker
    client
        .afterLoad(d => d
            .setChipherMarker('your chipher marker...')
  • Data replacer by templates

    Example: { '{HOST}': 'test', '{SERVICE_NAME}': 'app-service' }

    client
        .afterLoad(d => d
            .setReplacer('your template...')
  • Data decryption
    • client
      client
          .afterLoad(d => d
              .setDecryptor(new AesDecryptor('your secret key or password...')))
    • server
      client
          .afterLoad(d => d
              .setDecryptor(new ServiceDecryptor('your decryption endpoint address...')))
  • Source preparation
    • Merge source

      Default implementation if no function is specified

      client
          .afterLoad(d => d
              .setMergeSource<AppServiceApiConfig>((configuration?: TConfiguration<AppServiceApiConfig>) => {
                  your code to merge source...
              }))
    • Prepare source

      Default implementation if no function is specified

      client
          .afterLoad(d => d
              .setPrepareSource<AppServiceApiConfig>((source: Record<string, any>) => {
                  your code to prepare source...
              }))
  1. Call loading the configuration

    await client.load();
  2. Using the loaded configuration

    type AppServiceApiConfig = {
        logLevel: string;
        options: {
            service: {
                url: string;
                login: string;
                password: string;
            };
        };
        testOptions: {
            url: string;
        };
    };
    
    const config = getConfiguration<AppServiceApiConfig>();
1.2.1

3 years ago

1.2.0

3 years ago

1.1.2

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago