Update .gitlab/.gitlab-ci.yml file
This commit is contained in:
		@@ -2,25 +2,24 @@ image: node:16
 | 
			
		||||
 | 
			
		||||
npm:
 | 
			
		||||
  stage: build
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - dist
 | 
			
		||||
    expire_in: 1 week
 | 
			
		||||
  cache:
 | 
			
		||||
    - key:
 | 
			
		||||
        files:
 | 
			
		||||
          - package.json
 | 
			
		||||
          - package-lock.json
 | 
			
		||||
      paths:
 | 
			
		||||
        - node_modules
 | 
			
		||||
        - package-lock.json
 | 
			
		||||
      policy: pull-push
 | 
			
		||||
    - key: $CI_PIPELINE_ID
 | 
			
		||||
      paths:
 | 
			
		||||
        - dist
 | 
			
		||||
      policy: push
 | 
			
		||||
  script:
 | 
			
		||||
    - npm i
 | 
			
		||||
    - npm install
 | 
			
		||||
    - npm run build
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - dist
 | 
			
		||||
    expire_in: 1 week
 | 
			
		||||
  rules:
 | 
			
		||||
    - if: $CI_COMMIT_BRANCH
 | 
			
		||||
 | 
			
		||||
@@ -29,16 +28,14 @@ audit:
 | 
			
		||||
  cache:
 | 
			
		||||
    - key:
 | 
			
		||||
        files:
 | 
			
		||||
          - package.json
 | 
			
		||||
          - package-lock.json
 | 
			
		||||
      paths:
 | 
			
		||||
        - node_modules
 | 
			
		||||
      policy: pull
 | 
			
		||||
  script:
 | 
			
		||||
    - AUDIT=$(npm audit)
 | 
			
		||||
    - echo "vulnerabilities_high $(echo $AUDIT | grep -oE '[0-9]+ high' | grep -oE '[0-9]+' || echo 0)" > metrics.txt
 | 
			
		||||
    - echo "vulnerabilities_medium $(echo $AUDIT | grep -oE '[0-9]+ moderate' | grep -oE '[0-9]+' || echo 0)" >> metrics.txt
 | 
			
		||||
    - echo "vulnerabilities_low $(echo $AUDIT | grep -oE '[0-9]+ low' | grep -oE '[0-9]+' || echo 0)" >> metrics.txt
 | 
			
		||||
    - echo "$AUDIT"
 | 
			
		||||
    - echo "vulnerabilities_high $(npm audit | grep -oE '[0-9]+ high' | grep -oE '[0-9]+' || echo 0)" > metrics.txt
 | 
			
		||||
    - echo "vulnerabilities_medium $(npm audit | grep -oE '[0-9]+ moderate' | grep -oE '[0-9]+' || echo 0)" >> metrics.txt
 | 
			
		||||
    - echo "vulnerabilities_low $(npm audit | grep -oE '[0-9]+ low' | grep -oE '[0-9]+' || echo 0)" >> metrics.txt
 | 
			
		||||
  artifacts:
 | 
			
		||||
    reports:
 | 
			
		||||
      metrics: metrics.txt
 | 
			
		||||
@@ -64,8 +61,8 @@ jest:
 | 
			
		||||
  rules:
 | 
			
		||||
    - if: $CI_COMMIT_BRANCH
 | 
			
		||||
 | 
			
		||||
registry-gitlab:
 | 
			
		||||
  stage: deploy
 | 
			
		||||
registry:
 | 
			
		||||
  stage: publish
 | 
			
		||||
  cache:
 | 
			
		||||
    - key:
 | 
			
		||||
        files:
 | 
			
		||||
@@ -81,49 +78,28 @@ registry-gitlab:
 | 
			
		||||
    - VERSION=$(cat package.json | grep version | grep -Eo ':.+' | grep -Eo '[[:alnum:]\.\/\-]+')
 | 
			
		||||
    - if [ "$CI_COMMIT_BRANCH" != "$CI_DEFAULT_BRANCH" ] && [ "$VERSION" != *"-$CI_COMMIT_BRANCH" ]; then VERSION="$VERSION-$(echo "$CI_COMMIT_BRANCH" | sed -E "s/[_/]/-/g")"; npm version --no-git-tag-version $VERSION; fi
 | 
			
		||||
  script:
 | 
			
		||||
    - PACKAGES=$(curl -s -H "PRIVATE-TOKEN:$DEPLOY_TOKEN" "https://$CI_SERVER_HOST/api/v4/projects/$CI_PROJECT_ID/packages")
 | 
			
		||||
    - PACKAGES=$(curl -s -H "PRIVATE-TOKEN:$DEPLOY_TOKEN" https://$CI_SERVER_HOST/api/v4/projects/$CI_PROJECT_ID/packages)
 | 
			
		||||
    - ID=$(node -pe "JSON.parse(process.argv[1]).find(p => p['version'] == process.argv[2])?.id || ''" $PACKAGES $VERSION)
 | 
			
		||||
    - if [ -n "$ID" ]; then curl -s -X DELETE -H "PRIVATE-TOKEN:$DEPLOY_TOKEN" https://$CI_SERVER_HOST/api/v4/projects/$CI_PROJECT_ID/packages/$ID; fi
 | 
			
		||||
    - printf "@cwb:registry=https://$CI_SERVER_HOST/api/v4/projects/$CI_PROJECT_ID/packages/npm/\n//$CI_SERVER_HOST/api/v4/projects/$CI_PROJECT_ID/packages/npm/:_authToken=$DEPLOY_TOKEN" > .npmrc
 | 
			
		||||
    - printf "@transmute:registry=https://$CI_SERVER_HOST/api/v4/projects/$CI_PROJECT_ID/packages/npm/\n//$CI_SERVER_HOST/api/v4/projects/$CI_PROJECT_ID/packages/npm/:_authToken=$DEPLOY_TOKEN" > .npmrc
 | 
			
		||||
    - npm publish
 | 
			
		||||
  rules:
 | 
			
		||||
    - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
 | 
			
		||||
      allow_failure: true
 | 
			
		||||
    - if: $CI_COMMIT_BRANCH
 | 
			
		||||
      when: manual
 | 
			
		||||
      allow_failure: true
 | 
			
		||||
 | 
			
		||||
registry-npm:
 | 
			
		||||
  stage: deploy
 | 
			
		||||
  cache:
 | 
			
		||||
    - key:
 | 
			
		||||
        files:
 | 
			
		||||
          - package.json
 | 
			
		||||
      paths:
 | 
			
		||||
        - node_modules
 | 
			
		||||
      policy: pull
 | 
			
		||||
    - key: $CI_PIPELINE_ID
 | 
			
		||||
      paths:
 | 
			
		||||
        - dist
 | 
			
		||||
      policy: pull
 | 
			
		||||
  script:
 | 
			
		||||
    - npm publish
 | 
			
		||||
  rules:
 | 
			
		||||
    - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
 | 
			
		||||
      allow_failure: true
 | 
			
		||||
 | 
			
		||||
tag:
 | 
			
		||||
  stage: deploy
 | 
			
		||||
  stage: publish
 | 
			
		||||
  image:
 | 
			
		||||
    name: alpine/git
 | 
			
		||||
    entrypoint: [""]
 | 
			
		||||
  cache: []
 | 
			
		||||
  before_script:
 | 
			
		||||
    - git remote set-url origin "https://Tagger:$DEPLOY_TOKEN@$CI_SERVER_HOST/$CI_PROJECT_PATH.git"
 | 
			
		||||
    - git remote set-url origin "https://ReleaseBot:$DEPLOY_TOKEN@$CI_SERVER_HOST/$CI_PROJECT_PATH.git"
 | 
			
		||||
  script:
 | 
			
		||||
    - VERSION=$(cat package.json | grep version | grep -Eo ':.+' | grep -Eo '[[:alnum:]\.\/\-]+')
 | 
			
		||||
    - git tag -f $VERSION $CI_COMMIT_SHA
 | 
			
		||||
    - git push -f origin $VERSION
 | 
			
		||||
  rules:
 | 
			
		||||
    - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
 | 
			
		||||
  allow_failure: true
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user