Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/taimos/cdk-construct-gitlab-variable

An AWS CDK Construct creates GITLAB CI/CD variables from SecretsManager Secrets
https://github.com/taimos/cdk-construct-gitlab-variable

Last synced: about 1 month ago
JSON representation

An AWS CDK Construct creates GITLAB CI/CD variables from SecretsManager Secrets

Awesome Lists containing this project

README

        

[![npm version](https://badge.fury.io/js/%40taimos%2Fcdk-construct-gitlab-variable.svg)](https://badge.fury.io/js/%40taimos%2Fcdk-construct-gitlab-variable)
[![PyPI version](https://badge.fury.io/py/taimos.cdk-construct-gitlab-variable.svg)](https://badge.fury.io/py/taimos.cdk-construct-gitlab-variable)
[![Gitpod ready-to-code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/taimos/cdk-construct-gitlab-variable)

# A CDK L3 Construct for storing Gitlab CI variables from a SecretsManager secret

## Installation

You can install the library into your project using npm or pip.

```bash
npm install @taimos/cdk-construct-gitlab-variable

pip3 install taimos.cdk-construct-gitlab-variable
```

## Usage

```ts

const secret = new Secret(this, 'DBSecret', {
description: 'Some Secret',
generateSecretString: {
secretStringTemplate: '{"username":"admin2"}',
generateStringKey: 'password',
passwordLength: 20,
}
});

const gitlabSecret = Secret.fromSecretArn(this, 'GitlabToken', 'arn:aws:secretsmanager:eu-central-1:123456789012:secret:GitlabToken-abcde');

const dbPassword = new GitlabVariable(this, 'GitlabVarPassword', {
gitlabSecret,
secret,
secretField: 'password',
projectId: 'group/secrets-test',
variableName: 'RDS_PASSWORD',
});

```

# Contributing

We welcome community contributions and pull requests.

# License

The CDK construct library is distributed under the [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0).

See [LICENSE](./LICENSE) for more information.