61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # Runs on any push to ci-linux-arm32v7.
 | |
| # Produces optimised static arm32v7 linux  binaries,
 | |
| # using GHC 8.10.4 and cabal.
 | |
| # Currently runs no tests.
 | |
| # Slow, will probably time out.
 | |
| 
 | |
| name: linux-arm32v7 CI binaries
 | |
| 
 | |
| on:
 | |
|   push:
 | |
|     branches: [ ci-linux-arm32v7 ]
 | |
|     #tags:
 | |
|     #  - '[0-9]+.[0-9]+'
 | |
|     #  - '[0-9]+.[0-9]+-*'
 | |
|     #  - '[0-9]+.[0-9]+.[0-9]+'
 | |
|     #  - '[0-9]+.[0-9]+.[0-9]+-*'
 | |
|   workflow_dispatch:
 | |
| 
 | |
| jobs:
 | |
|   docker:
 | |
|     runs-on: ubuntu-latest
 | |
|     steps:
 | |
|       -
 | |
|         name: Set up QEMU
 | |
|         uses: docker/setup-qemu-action@v1
 | |
|       -
 | |
|         name: Set up Docker Buildx
 | |
|         uses: docker/setup-buildx-action@v1
 | |
|       -
 | |
|         name: Build and push
 | |
|         id: docker_build
 | |
|         uses: docker/build-push-action@v2
 | |
|         with:
 | |
|           file: ./docker-static-arm32v7/Dockerfile
 | |
|           platforms: linux/arm
 | |
|           tags: hledger-linux-static-arm32v7:latest
 | |
|           load: true
 | |
| 
 | |
|       - name: Extract binaries from docker
 | |
|         run: |
 | |
|           # Create temporary container from it
 | |
|           container_id=$(docker create hledger-linux-static-arm32v7:latest)
 | |
|           # Copy stuff from temp container
 | |
|           docker cp $container_id:/root/hledger /tmp/hledger-linux-static-arm32v7
 | |
|           # Delete temp container
 | |
|           docker rm -v $container_id          
 | |
| 
 | |
|       - name: Upload binary
 | |
|         uses: actions/upload-artifact@v2
 | |
|         with:
 | |
|           name: hledger-linux-static-arm32v7
 | |
|           path: /tmp/hledger-linux-static-arm32v7
 | |
| 
 | |
|       - name: Release
 | |
|         uses: softprops/action-gh-release@v1
 | |
|         if: startsWith(github.ref, 'refs/tags/')
 | |
|         with:
 | |
|           files: /tmp/hledger-linux-static-arm32v7
 | |
|         env:
 | |
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 |