44 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
name: Build Container
 | 
						|
run-name: Build Container
 | 
						|
 | 
						|
on:
 | 
						|
  push:
 | 
						|
 | 
						|
jobs:
 | 
						|
  container:
 | 
						|
    name: Build Container
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    container: docker
 | 
						|
    steps:
 | 
						|
      - name: Build Container
 | 
						|
        run: |
 | 
						|
          git clone -b "${{github.ref_name}}" "https://${{github.token}}@${{github.server_url}}/${{github.repository}}.git" .
 | 
						|
          REGISTRY="$(echo ${{github.server_url}} | sed s%http://%% | sed s%https://%% )"
 | 
						|
          VERSION="$(cat package.json | grep 'version' | grep -Eo '([0-9]+\.?)+(-[0-9a-zA-Z\-\.]+)?')"
 | 
						|
          
 | 
						|
          docker login -u ${{github.repository_owner}} -p ${{secrets.DEPLOY_TOKEN}} $REGISTRY
 | 
						|
          
 | 
						|
          docker build -t $REGISTRY/${{github.repository}}:${{github.ref_name}} .
 | 
						|
          docker push $REGISTRY/${{github.repository}}:${{github.ref_name}}
 | 
						|
          
 | 
						|
          if [ '${{github.ref_name}}' == 'master' ]; then
 | 
						|
            docker tag $REGISTRY/${{github.repository}}:${{github.ref_name}} $REGISTRY/${{github.repository}}:$VERSION
 | 
						|
            docker push $REGISTRY/${{github.repository}}:$VERSION
 | 
						|
          
 | 
						|
            docker tag $REGISTRY/${{github.repository}}:${{github.ref_name}} $REGISTRY/${{github.repository}}:latest
 | 
						|
            docker push $REGISTRY/${{github.repository}}:latest
 | 
						|
          fi
 | 
						|
 | 
						|
  tag:
 | 
						|
    name: Git Tag
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    container: alpine/git
 | 
						|
    steps:
 | 
						|
      - name: Git Tag
 | 
						|
        run: |
 | 
						|
          git clone -b "${{github.ref_name}}" "https://${{github.token}}@${{github.server_url}}/${{github.repository}}.git" .
 | 
						|
          VERSION="$(cat package.json | grep 'version' | grep -Eo '([0-9]+\.?)+(-[0-9a-zA-Z\-\.]+)?')"
 | 
						|
          
 | 
						|
          git tag -f $VERSION ${{github.sha}}
 | 
						|
          git push -f origin $VERSION
 |