134 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			134 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
# gitzone ci_default_private
 | 
						|
image: code.foss.global/hosttoday/ht-docker-node:npmci
 | 
						|
 | 
						|
cache:
 | 
						|
  paths:
 | 
						|
    - .npmci_cache/
 | 
						|
  key: '$CI_BUILD_STAGE'
 | 
						|
 | 
						|
stages:
 | 
						|
  - security
 | 
						|
  - test
 | 
						|
  - release
 | 
						|
  - metadata
 | 
						|
 | 
						|
before_script:
 | 
						|
  - pnpm install -g pnpm
 | 
						|
  - pnpm install -g @ship.zone/npmci
 | 
						|
  - npmci npm prepare
 | 
						|
 | 
						|
# ====================
 | 
						|
# security stage
 | 
						|
# ====================
 | 
						|
# ====================
 | 
						|
# security stage
 | 
						|
# ====================
 | 
						|
auditProductionDependencies:
 | 
						|
  image: code.foss.global/hosttoday/ht-docker-node:npmci
 | 
						|
  stage: security
 | 
						|
  script:
 | 
						|
    - npmci command npm config set registry https://registry.npmjs.org
 | 
						|
    - npmci command pnpm audit --audit-level=high --prod
 | 
						|
  tags:
 | 
						|
    - private
 | 
						|
    - docker
 | 
						|
  allow_failure: true
 | 
						|
 | 
						|
auditDevDependencies:
 | 
						|
  image: code.foss.global/hosttoday/ht-docker-node:npmci
 | 
						|
  stage: security
 | 
						|
  script:
 | 
						|
    - npmci command npm config set registry https://registry.npmjs.org
 | 
						|
    - npmci command pnpm audit --audit-level=high --dev
 | 
						|
  tags:
 | 
						|
    - private
 | 
						|
    - docker
 | 
						|
  allow_failure: true
 | 
						|
 | 
						|
# ====================
 | 
						|
# test stage
 | 
						|
# ====================
 | 
						|
 | 
						|
testStable:
 | 
						|
  stage: test
 | 
						|
  script:
 | 
						|
    - npmci node install stable
 | 
						|
    - npmci npm install
 | 
						|
    - npmci npm test
 | 
						|
  coverage: /\d+.?\d+?\%\s*coverage/
 | 
						|
  tags:
 | 
						|
    - private
 | 
						|
    - docker
 | 
						|
    - notprivileged
 | 
						|
 | 
						|
testBuild:
 | 
						|
  stage: test
 | 
						|
  script:
 | 
						|
    - npmci node install stable
 | 
						|
    - npmci npm install
 | 
						|
    - npmci command npm run build
 | 
						|
  coverage: /\d+.?\d+?\%\s*coverage/
 | 
						|
  tags:
 | 
						|
    - private
 | 
						|
    - docker
 | 
						|
    - notprivileged
 | 
						|
 | 
						|
release:
 | 
						|
  stage: release
 | 
						|
  script:
 | 
						|
    - npmci node install stable
 | 
						|
    - npmci npm publish
 | 
						|
  only:
 | 
						|
    - tags
 | 
						|
  tags:
 | 
						|
    - private
 | 
						|
    - docker
 | 
						|
    - notprivileged
 | 
						|
 | 
						|
# ====================
 | 
						|
# metadata stage
 | 
						|
# ====================
 | 
						|
codequality:
 | 
						|
  stage: metadata
 | 
						|
  allow_failure: true
 | 
						|
  only:
 | 
						|
    - tags
 | 
						|
  script:
 | 
						|
    - npmci command npm install -g typescript
 | 
						|
    - npmci npm prepare
 | 
						|
    - npmci npm install
 | 
						|
  tags:
 | 
						|
    - private
 | 
						|
    - docker
 | 
						|
    - priv
 | 
						|
 | 
						|
trigger:
 | 
						|
  stage: metadata
 | 
						|
  script:
 | 
						|
    - npmci trigger
 | 
						|
  only:
 | 
						|
    - tags
 | 
						|
  tags:
 | 
						|
    - private
 | 
						|
    - docker
 | 
						|
    - notprivileged
 | 
						|
 | 
						|
pages:
 | 
						|
  stage: metadata
 | 
						|
  script:
 | 
						|
    - npmci node install lts
 | 
						|
    - npmci command npm install -g @git.zone/tsdoc
 | 
						|
    - npmci npm install
 | 
						|
    - npmci command tsdoc
 | 
						|
  tags:
 | 
						|
    - private
 | 
						|
    - docker
 | 
						|
    - notprivileged
 | 
						|
  only:
 | 
						|
    - tags
 | 
						|
  artifacts:
 | 
						|
    expire_in: 1 week
 | 
						|
    paths:
 | 
						|
      - public
 | 
						|
  allow_failure: true
 |