51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
name: Build
 | 
						|
run-name: Build
 | 
						|
 | 
						|
on:
 | 
						|
  - push
 | 
						|
  - pull_request
 | 
						|
 | 
						|
jobs:
 | 
						|
  build:
 | 
						|
    name: Build NPM Project
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    container: node:20-alpine
 | 
						|
    steps:
 | 
						|
      -   name: Clone Repository
 | 
						|
          uses: ztimson/actions/clone@develop
 | 
						|
 | 
						|
      -   name: Install & Build
 | 
						|
          run: |
 | 
						|
            npm i
 | 
						|
            npm run build
 | 
						|
 | 
						|
      -   name: Test
 | 
						|
          run: npm run test:coverage
 | 
						|
 | 
						|
      -   name: Upload to Registry
 | 
						|
          uses: ztimson/actions/npm/publish@develop
 | 
						|
 | 
						|
      -   name: Upload to NPM
 | 
						|
          uses: ztimson/actions/npm/publish@develop
 | 
						|
          with:
 | 
						|
              owner: ztimson
 | 
						|
              registry: https://registry.npmjs.org/
 | 
						|
              token: ${{secrets.NPM_TOKEN}}
 | 
						|
  tag:
 | 
						|
    name: Tag Version
 | 
						|
    needs: build
 | 
						|
    if: ${{github.ref_name}} == 'release'
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    container: node
 | 
						|
    steps:
 | 
						|
      -   name: Clone Repository
 | 
						|
          uses: ztimson/actions/clone@develop
 | 
						|
 | 
						|
      -   name: Get Version Number
 | 
						|
          run: echo "VERSION=$(cat package.json | grep version | grep -Eo ':.+' | grep -Eo '[[:alnum:]\.\/\-]+')" >> $GITHUB_ENV
 | 
						|
 | 
						|
      -   name: Tag Version
 | 
						|
          uses: ztimson/actions/tag@develop
 | 
						|
          with:
 | 
						|
            tag: ${{env.VERSION}}
 |