Skip to content

Commit f9fb4a6

Browse files
committed
chore(aws-ssm): initialize provider
Signed-off-by: Giovanni De Giorgio <[email protected]>
1 parent 0a87fd6 commit f9fb4a6

20 files changed

+3497
-202
lines changed

.release-please-manifest.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,6 @@
2020
"libs/providers/config-cat-web": "0.1.4",
2121
"libs/shared/config-cat-core": "0.1.0",
2222
"libs/providers/unleash-web": "0.1.1",
23-
"libs/providers/growthbook": "0.1.2"
23+
"libs/providers/growthbook": "0.1.2",
24+
"libs/providers/aws-ssm": "0.1.0"
2425
}

.verdaccio/config.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# path to a directory with all packages
2+
storage: ../tmp/local-registry/storage
3+
4+
# a list of other known repositories we can talk to
5+
uplinks:
6+
npmjs:
7+
url: https://registry.npmjs.org/
8+
maxage: 60m
9+
10+
packages:
11+
'**':
12+
# give all users (including non-authenticated users) full access
13+
# because it is a local registry
14+
access: $all
15+
publish: $all
16+
unpublish: $all
17+
18+
# if package is not available locally, proxy requests to npm registry
19+
proxy: npmjs
20+
21+
# log settings
22+
log:
23+
type: stdout
24+
format: pretty
25+
level: warn
26+
27+
publish:
28+
allow_offline: true # set offline to true to allow publish offline
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
{
2+
"extends": ["../.eslintrc.json"],
3+
"ignorePatterns": ["!**/*"],
4+
"overrides": [
5+
{
6+
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
7+
"rules": {}
8+
},
9+
{
10+
"files": ["*.ts", "*.tsx"],
11+
"rules": {}
12+
},
13+
{
14+
"files": ["*.js", "*.jsx"],
15+
"rules": {}
16+
},
17+
{
18+
"files": ["*.json"],
19+
"parser": "jsonc-eslint-parser",
20+
"rules": {
21+
"@nx/dependency-checks": [
22+
"error",
23+
{
24+
"ignoredFiles": ["{projectRoot}/eslint.config.{js,cjs,mjs}"]
25+
}
26+
]
27+
}
28+
}
29+
]
30+
}

libs/providers/aws-ssm/README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# aws-ssm Provider
2+
3+
## Installation
4+
5+
```
6+
$ npm install @openfeature/aws-ssm-provider
7+
```
8+
9+
## Building
10+
11+
Run `nx package providers-aws-ssm` to build the library.
12+
13+
## Running unit tests
14+
15+
Run `nx test providers-aws-ssm` to execute the unit tests via [Jest](https://jestjs.io).
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"presets": [["minify", { "builtIns": false }]]
3+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
/* eslint-disable */
2+
export default {
3+
displayName: 'aws-ssm',
4+
preset: '../../../jest.preset.js',
5+
globals: {
6+
'ts-jest': {
7+
tsconfig: '<rootDir>/tsconfig.spec.json',
8+
},
9+
},
10+
transform: {
11+
'^.+\\.[tj]s$': 'ts-jest',
12+
},
13+
moduleFileExtensions: ['ts', 'js', 'html'],
14+
coverageDirectory: '../../../coverage/libs/providers/aws-ssm',
15+
testEnvironment: 'node',
16+
};
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"name": "@openfeature/aws-ssm-provider",
3+
"version": "0.0.1",
4+
"dependencies": {
5+
"tslib": "^2.3.0"
6+
},
7+
"main": "./src/index.js",
8+
"typings": "./src/index.d.ts",
9+
"scripts": {
10+
"publish-if-not-exists": "cp $NPM_CONFIG_USERCONFIG .npmrc && if [ \"$(npm show $npm_package_name@$npm_package_version version)\" = \"$(npm run current-version -s)\" ]; then echo 'already published, skipping'; else npm publish --access public; fi",
11+
"current-version": "echo $npm_package_version"
12+
},
13+
"license": "Apache-2.0",
14+
"peerDependencies": {
15+
"@openfeature/server-sdk": "^1.17.0"
16+
}
17+
}
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
{
2+
"name": "providers-aws-ssm",
3+
"$schema": "../../../node_modules/nx/schemas/project-schema.json",
4+
"sourceRoot": "libs/providers/aws-ssm/src",
5+
"projectType": "library",
6+
"targets": {
7+
"publish": {
8+
"executor": "nx:run-commands",
9+
"options": {
10+
"command": "npm run publish-if-not-exists",
11+
"cwd": "dist/libs/providers/aws-ssm"
12+
},
13+
"dependsOn": [
14+
{
15+
"target": "package"
16+
}
17+
]
18+
},
19+
"lint": {
20+
"executor": "@nx/eslint:lint",
21+
"outputs": ["{options.outputFile}"]
22+
},
23+
"test": {
24+
"executor": "@nx/jest:jest",
25+
"outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
26+
"options": {
27+
"jestConfig": "libs/providers/aws-ssm/jest.config.ts"
28+
}
29+
},
30+
"package": {
31+
"executor": "@nx/rollup:rollup",
32+
"outputs": ["{options.outputPath}"],
33+
"options": {
34+
"project": "libs/providers/aws-ssm/package.json",
35+
"outputPath": "dist/libs/providers/aws-ssm",
36+
"entryFile": "libs/providers/aws-ssm/src/index.ts",
37+
"tsConfig": "libs/providers/aws-ssm/tsconfig.lib.json",
38+
"compiler": "tsc",
39+
"generateExportsField": true,
40+
"umdName": "aws-ssm",
41+
"external": "all",
42+
"format": ["cjs", "esm"],
43+
"assets": [
44+
{
45+
"glob": "package.json",
46+
"input": "./assets",
47+
"output": "./src/"
48+
},
49+
{
50+
"glob": "LICENSE",
51+
"input": "./",
52+
"output": "./"
53+
},
54+
{
55+
"glob": "README.md",
56+
"input": "./libs/providers/aws-ssm",
57+
"output": "./"
58+
}
59+
]
60+
}
61+
}
62+
},
63+
"tags": []
64+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export * from './lib/aws-ssm-provider';
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { AwsSsmProvider } from './aws-ssm-provider';
2+
3+
describe(AwsSsmProvider.name, () => {
4+
it('should be and instance of AwsSsmProvider', () => {
5+
expect(new AwsSsmProvider()).toBeInstanceOf(AwsSsmProvider);
6+
});
7+
});

0 commit comments

Comments
 (0)