71 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
name: Build
 | 
						|
run-name: Build
 | 
						|
 | 
						|
on:
 | 
						|
    - push
 | 
						|
    - pull_request
 | 
						|
 | 
						|
jobs:
 | 
						|
    build:
 | 
						|
        name: Build NPM Project
 | 
						|
        runs-on: ubuntu-latest
 | 
						|
        container: node
 | 
						|
        steps:
 | 
						|
            -   name: Clone Repository
 | 
						|
                uses: ztimson/actions/clone@develop
 | 
						|
 | 
						|
            -   name: Install Dependencies
 | 
						|
                run: npm i
 | 
						|
 | 
						|
            -   name: Build Project
 | 
						|
                run: npm run build
 | 
						|
 | 
						|
            -   name: Test
 | 
						|
                run: npm run test:coverage
 | 
						|
 | 
						|
            -   name: Cache Artifacts
 | 
						|
                uses: ztimson/actions/cache@develop
 | 
						|
                with:
 | 
						|
                    pattern: dist
 | 
						|
 | 
						|
            -   name: Upload Docs
 | 
						|
                uses: actions/upload-artifact@v3
 | 
						|
                with:
 | 
						|
                    name: docs
 | 
						|
                    path: docs
 | 
						|
                    retention-days: 7
 | 
						|
 | 
						|
    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}}
 | 
						|
 | 
						|
    publish:
 | 
						|
        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: Restore Artifacts
 | 
						|
                uses: ztimson/actions/cache/restore@develop
 | 
						|
 | 
						|
            -   name: Upload to Registry
 | 
						|
                uses: ztimson/actions/npm/publish@develop
 |