fix(core): update
This commit is contained in:
		
							
								
								
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -15,8 +15,6 @@ node_modules/
 | 
			
		||||
 | 
			
		||||
# builds
 | 
			
		||||
dist/
 | 
			
		||||
dist_web/
 | 
			
		||||
dist_serve/
 | 
			
		||||
dist_ts_web/
 | 
			
		||||
dist_*/
 | 
			
		||||
 | 
			
		||||
# custom
 | 
			
		||||
@@ -3,14 +3,14 @@ image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
 | 
			
		||||
 | 
			
		||||
cache:
 | 
			
		||||
  paths:
 | 
			
		||||
  - .npmci_cache/
 | 
			
		||||
  key: "$CI_BUILD_STAGE"
 | 
			
		||||
    - .npmci_cache/
 | 
			
		||||
  key: '$CI_BUILD_STAGE'
 | 
			
		||||
 | 
			
		||||
stages:
 | 
			
		||||
- security
 | 
			
		||||
- test
 | 
			
		||||
- release
 | 
			
		||||
- metadata
 | 
			
		||||
  - security
 | 
			
		||||
  - test
 | 
			
		||||
  - release
 | 
			
		||||
  - metadata
 | 
			
		||||
 | 
			
		||||
# ====================
 | 
			
		||||
# security stage
 | 
			
		||||
@@ -18,21 +18,24 @@ stages:
 | 
			
		||||
mirror:
 | 
			
		||||
  stage: security
 | 
			
		||||
  script:
 | 
			
		||||
  - npmci git mirror
 | 
			
		||||
    - npmci git mirror
 | 
			
		||||
  tags:
 | 
			
		||||
  - docker
 | 
			
		||||
  - notpriv
 | 
			
		||||
    - lossless
 | 
			
		||||
    - docker
 | 
			
		||||
    - notpriv
 | 
			
		||||
 | 
			
		||||
snyk:
 | 
			
		||||
audit:
 | 
			
		||||
  image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
 | 
			
		||||
  stage: security
 | 
			
		||||
  script:
 | 
			
		||||
    - npmci npm prepare
 | 
			
		||||
    - npmci command npm install -g snyk
 | 
			
		||||
    - npmci command npm install --ignore-scripts
 | 
			
		||||
    - npmci command snyk test
 | 
			
		||||
    - npmci command npm config set registry https://registry.npmjs.org
 | 
			
		||||
    - npmci command npm audit --audit-level=high
 | 
			
		||||
  tags:
 | 
			
		||||
  - docker
 | 
			
		||||
  - notpriv
 | 
			
		||||
    - lossless
 | 
			
		||||
    - docker
 | 
			
		||||
    - notpriv
 | 
			
		||||
 | 
			
		||||
# ====================
 | 
			
		||||
# test stage
 | 
			
		||||
@@ -41,37 +44,40 @@ snyk:
 | 
			
		||||
testStable:
 | 
			
		||||
  stage: test
 | 
			
		||||
  script:
 | 
			
		||||
  - npmci npm prepare
 | 
			
		||||
  - npmci node install stable
 | 
			
		||||
  - npmci npm install
 | 
			
		||||
  - npmci npm test
 | 
			
		||||
    - npmci npm prepare
 | 
			
		||||
    - npmci node install stable
 | 
			
		||||
    - npmci npm install
 | 
			
		||||
    - npmci npm test
 | 
			
		||||
  coverage: /\d+.?\d+?\%\s*coverage/
 | 
			
		||||
  tags:
 | 
			
		||||
  - docker
 | 
			
		||||
  - priv
 | 
			
		||||
    - lossless
 | 
			
		||||
    - docker
 | 
			
		||||
    - priv
 | 
			
		||||
 | 
			
		||||
testBuild:
 | 
			
		||||
  stage: test
 | 
			
		||||
  script:
 | 
			
		||||
  - npmci npm prepare
 | 
			
		||||
  - npmci node install stable
 | 
			
		||||
  - npmci npm install
 | 
			
		||||
  - npmci command npm run build
 | 
			
		||||
    - npmci npm prepare
 | 
			
		||||
    - npmci node install stable
 | 
			
		||||
    - npmci npm install
 | 
			
		||||
    - npmci command npm run build
 | 
			
		||||
  coverage: /\d+.?\d+?\%\s*coverage/
 | 
			
		||||
  tags:
 | 
			
		||||
  - docker
 | 
			
		||||
  - notpriv
 | 
			
		||||
    - lossless
 | 
			
		||||
    - docker
 | 
			
		||||
    - notpriv
 | 
			
		||||
 | 
			
		||||
release:
 | 
			
		||||
  stage: release
 | 
			
		||||
  script:
 | 
			
		||||
  - npmci node install stable
 | 
			
		||||
  - npmci npm publish
 | 
			
		||||
    - npmci node install stable
 | 
			
		||||
    - npmci npm publish
 | 
			
		||||
  only:
 | 
			
		||||
  - tags
 | 
			
		||||
    - tags
 | 
			
		||||
  tags:
 | 
			
		||||
  - docker
 | 
			
		||||
  - notpriv
 | 
			
		||||
    - lossless
 | 
			
		||||
    - docker
 | 
			
		||||
    - notpriv
 | 
			
		||||
 | 
			
		||||
# ====================
 | 
			
		||||
# metadata stage
 | 
			
		||||
@@ -81,33 +87,35 @@ codequality:
 | 
			
		||||
  allow_failure: true
 | 
			
		||||
  script:
 | 
			
		||||
    - npmci command npm install -g tslint typescript
 | 
			
		||||
    - npmci npm prepare
 | 
			
		||||
    - npmci npm install
 | 
			
		||||
    - npmci command "tslint -c tslint.json ./ts/**/*.ts"
 | 
			
		||||
  tags:
 | 
			
		||||
  - docker
 | 
			
		||||
  - priv
 | 
			
		||||
    - lossless
 | 
			
		||||
    - docker
 | 
			
		||||
    - priv
 | 
			
		||||
 | 
			
		||||
trigger:
 | 
			
		||||
  stage: metadata
 | 
			
		||||
  script:
 | 
			
		||||
  - npmci trigger
 | 
			
		||||
    - npmci trigger
 | 
			
		||||
  only:
 | 
			
		||||
  - tags
 | 
			
		||||
    - tags
 | 
			
		||||
  tags:
 | 
			
		||||
  - docker
 | 
			
		||||
  - notpriv
 | 
			
		||||
    - lossless
 | 
			
		||||
    - docker
 | 
			
		||||
    - notpriv
 | 
			
		||||
 | 
			
		||||
pages:
 | 
			
		||||
  image: hosttoday/ht-docker-dbase:npmci
 | 
			
		||||
  services:
 | 
			
		||||
   - docker:stable-dind
 | 
			
		||||
  stage: metadata
 | 
			
		||||
  script:
 | 
			
		||||
    - npmci node install lts
 | 
			
		||||
    - npmci command npm install -g @gitzone/tsdoc
 | 
			
		||||
    - npmci npm prepare
 | 
			
		||||
    - npmci npm install
 | 
			
		||||
    - npmci command tsdoc
 | 
			
		||||
  tags:
 | 
			
		||||
    - lossless
 | 
			
		||||
    - docker
 | 
			
		||||
    - notpriv
 | 
			
		||||
  only:
 | 
			
		||||
@@ -115,5 +123,5 @@ pages:
 | 
			
		||||
  artifacts:
 | 
			
		||||
    expire_in: 1 week
 | 
			
		||||
    paths:
 | 
			
		||||
    - public
 | 
			
		||||
      - public
 | 
			
		||||
  allow_failure: true
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										29
									
								
								.vscode/launch.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								.vscode/launch.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,29 @@
 | 
			
		||||
{
 | 
			
		||||
  "version": "0.2.0",
 | 
			
		||||
  "configurations": [
 | 
			
		||||
    {
 | 
			
		||||
      "name": "current file",
 | 
			
		||||
      "type": "node",
 | 
			
		||||
      "request": "launch",
 | 
			
		||||
      "args": [
 | 
			
		||||
        "${relativeFile}"
 | 
			
		||||
      ],
 | 
			
		||||
      "runtimeArgs": ["-r", "@gitzone/tsrun"],
 | 
			
		||||
      "cwd": "${workspaceRoot}",
 | 
			
		||||
      "protocol": "inspector",
 | 
			
		||||
      "internalConsoleOptions": "openOnSessionStart"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "name": "test.ts",
 | 
			
		||||
      "type": "node",
 | 
			
		||||
      "request": "launch",
 | 
			
		||||
      "args": [
 | 
			
		||||
        "test/test.ts"
 | 
			
		||||
      ],
 | 
			
		||||
      "runtimeArgs": ["-r", "@gitzone/tsrun"],
 | 
			
		||||
      "cwd": "${workspaceRoot}",
 | 
			
		||||
      "protocol": "inspector",
 | 
			
		||||
      "internalConsoleOptions": "openOnSessionStart"
 | 
			
		||||
    }
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										26
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,26 @@
 | 
			
		||||
{
 | 
			
		||||
  "json.schemas": [
 | 
			
		||||
    {
 | 
			
		||||
      "fileMatch": ["/npmextra.json"],
 | 
			
		||||
      "schema": {
 | 
			
		||||
        "type": "object",
 | 
			
		||||
        "properties": {
 | 
			
		||||
          "npmci": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "description": "settings for npmci"
 | 
			
		||||
          },
 | 
			
		||||
          "gitzone": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "description": "settings for gitzone",
 | 
			
		||||
            "properties": {
 | 
			
		||||
              "projectType": {
 | 
			
		||||
                "type": "string",
 | 
			
		||||
                "enum": ["website", "element", "service", "npm"]
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										43
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										43
									
								
								README.md
									
									
									
									
									
								
							@@ -1,43 +0,0 @@
 | 
			
		||||
# @pushrocks/qenv
 | 
			
		||||
easy promised environments
 | 
			
		||||
 | 
			
		||||
## Availabililty and Links
 | 
			
		||||
* [npmjs.org (npm package)](https://www.npmjs.com/package/@pushrocks/qenv)
 | 
			
		||||
* [gitlab.com (source)](https://gitlab.com/pushrocks/qenv)
 | 
			
		||||
* [github.com (source mirror)](https://github.com/pushrocks/qenv)
 | 
			
		||||
* [docs (typedoc)](https://pushrocks.gitlab.io/qenv/)
 | 
			
		||||
 | 
			
		||||
## Status for master
 | 
			
		||||
[](https://gitlab.com/pushrocks/qenv/commits/master)
 | 
			
		||||
[](https://gitlab.com/pushrocks/qenv/commits/master)
 | 
			
		||||
[](https://www.npmjs.com/package/@pushrocks/qenv)
 | 
			
		||||
[](https://snyk.io/test/npm/@pushrocks/qenv)
 | 
			
		||||
[](https://nodejs.org/dist/latest-v10.x/docs/api/)
 | 
			
		||||
[](https://nodejs.org/dist/latest-v10.x/docs/api/)
 | 
			
		||||
[](https://prettier.io/)
 | 
			
		||||
 | 
			
		||||
## Usage
 | 
			
		||||
 | 
			
		||||
Use TypeScript for best in class instellisense.
 | 
			
		||||
 | 
			
		||||
qenv works with two files:
 | 
			
		||||
 | 
			
		||||
- **qenv.yml** - specifies which ENV vars are required.
 | 
			
		||||
- **env.yml** - specifies all env vars that are not already set in the current environment.
 | 
			
		||||
 | 
			
		||||
Now obviously you can set build specific env vars in many CI environments.
 | 
			
		||||
So there we do not need an **env.yml** since all ENV vars are in place
 | 
			
		||||
However when on another machine you can have a env.yml that will be added to the environment by qenv.
 | 
			
		||||
 | 
			
		||||
```javascript
 | 
			
		||||
import { Qenv } from 'qenv';
 | 
			
		||||
 | 
			
		||||
const myQenv = new Qenv('path/to/dir/where/qenv.yml/is/', 'path/to/dir/where/env.yml/is(');
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
For further information read the linked docs at the top of this readme.
 | 
			
		||||
 | 
			
		||||
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
 | 
			
		||||
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy)
 | 
			
		||||
 | 
			
		||||
[](https://maintainedby.lossless.com)
 | 
			
		||||
@@ -4,6 +4,7 @@
 | 
			
		||||
    "npmAccessLevel": "public"
 | 
			
		||||
  },
 | 
			
		||||
  "gitzone": {
 | 
			
		||||
    "projectType": "npm",
 | 
			
		||||
    "module": {
 | 
			
		||||
      "githost": "gitlab.com",
 | 
			
		||||
      "gitscope": "pushrocks",
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										19
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								package.json
									
									
									
									
									
								
							@@ -3,8 +3,8 @@
 | 
			
		||||
  "version": "4.0.7",
 | 
			
		||||
  "private": false,
 | 
			
		||||
  "description": "easy promised environments",
 | 
			
		||||
  "main": "dist/index.js",
 | 
			
		||||
  "typings": "dist/index.d.ts",
 | 
			
		||||
  "main": "dist_ts/index.js",
 | 
			
		||||
  "typings": "dist_ts/index.d.ts",
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "test": "(tstest test/)",
 | 
			
		||||
    "build": "(tsbuild)"
 | 
			
		||||
@@ -38,14 +38,15 @@
 | 
			
		||||
    "@pushrocks/smartlog": "^2.0.26"
 | 
			
		||||
  },
 | 
			
		||||
  "files": [
 | 
			
		||||
    "ts/*",
 | 
			
		||||
    "ts_web/*",
 | 
			
		||||
    "dist/*",
 | 
			
		||||
    "dist_web/*",
 | 
			
		||||
    "dist_ts_web/*",
 | 
			
		||||
    "assets/*",
 | 
			
		||||
    "ts/**/*",
 | 
			
		||||
    "ts_web/**/*",
 | 
			
		||||
    "dist/**/*",
 | 
			
		||||
    "dist_*/**/*",
 | 
			
		||||
    "dist_ts/**/*",
 | 
			
		||||
    "dist_ts_web/**/*",
 | 
			
		||||
    "assets/**/*",
 | 
			
		||||
    "cli.js",
 | 
			
		||||
    "npmextra.json",
 | 
			
		||||
    "readme.md"
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
@@ -15,12 +15,7 @@ export class Qenv {
 | 
			
		||||
  public qenvFilePathAbsolute: string;
 | 
			
		||||
  public envFilePathAbsolute: string;
 | 
			
		||||
 | 
			
		||||
  constructor(
 | 
			
		||||
    qenvFileBasePathArg = process.cwd(),
 | 
			
		||||
    envFileBasePathArg,
 | 
			
		||||
    failOnMissing = true
 | 
			
		||||
  ) {
 | 
			
		||||
 | 
			
		||||
  constructor(qenvFileBasePathArg = process.cwd(), envFileBasePathArg, failOnMissing = true) {
 | 
			
		||||
    // lets make sure paths are absolute
 | 
			
		||||
    this.qenvFilePathAbsolute = plugins.path.join(
 | 
			
		||||
      plugins.path.resolve(qenvFileBasePathArg),
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user