mirror of
				https://github.com/TomWright/dasel.git
				synced 2022-05-22 02:32:45 +03:00 
			
		
		
		
	Merge branch 'master' into issue-164
This commit is contained in:
		
							
								
								
									
										19
									
								
								.github/workflows/build-dev.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								.github/workflows/build-dev.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -70,13 +70,26 @@ jobs: | ||||
|         run: ./target/release/${{ matrix.artifact_name }} --version | ||||
|       - name: Build docker image | ||||
|         if: matrix.build_docker == true | ||||
|         run: docker build --build-arg daselpath=target/release/${{ matrix.artifact_name }} -f docker/Dockerfile -t tomwright/dasel:latest . | ||||
|         run: | | ||||
|           docker build --build-arg daselpath=target/release/${{ matrix.artifact_name }} -f docker/Dockerfile -t tomwright/dasel:latest . | ||||
|           docker build --build-arg daselpath=target/release/${{ matrix.artifact_name }} -f docker/alpine.Dockerfile -t tomwright/dasel:alpine . | ||||
|       - name: Test docker image | ||||
|         if: matrix.build_docker == true | ||||
|         run: | | ||||
|           echo '{"hello": "World"}' | docker run -i --rm tomwright/dasel:latest -p json '.hello' | ||||
|           echo '{"hello": "World"}' | docker run -i --rm tomwright/dasel:alpine -p json '.hello' | ||||
|       - name: Docker login | ||||
|         if: matrix.build_docker == true | ||||
|         run: echo "${{ secrets.GHCR_PAT }}" | docker login ghcr.io -u TomWright --password-stdin | ||||
|       - name: Docker tag release | ||||
|         if: matrix.build_docker == true | ||||
|         run: docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }} | ||||
|         run: | | ||||
|           docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }} | ||||
|           docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }}-buster-slim | ||||
|           docker tag tomwright/dasel:alpine ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }}-alpine | ||||
|       - name: Docker push release | ||||
|         if: matrix.build_docker == true | ||||
|         run: docker push ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }} | ||||
|         run: | | ||||
|           docker push ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }} | ||||
|           docker push ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }}-buster-slim | ||||
|           docker push ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }}-alpine | ||||
							
								
								
									
										90
									
								
								.github/workflows/build-test.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										90
									
								
								.github/workflows/build-test.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,90 @@ | ||||
| on: | ||||
|   push: | ||||
|     branches-ignore: | ||||
|       - master | ||||
|       - main | ||||
| name: Build Test | ||||
| jobs: | ||||
|   publish: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: | ||||
|           - linux | ||||
|           - darwin | ||||
|           - windows | ||||
|         arch: | ||||
|           - amd64 | ||||
|           - 386 | ||||
|           - arm64 | ||||
|         include: | ||||
|           - os: linux | ||||
|             arch: amd64 | ||||
|             artifact_name: dasel_linux_amd64 | ||||
|             build_docker: true | ||||
|             test_version: true | ||||
|             test_execution: true | ||||
|           - os: linux | ||||
|             arch: 386 | ||||
|             artifact_name: dasel_linux_386 | ||||
|             build_docker: false | ||||
|             test_version: false | ||||
|             test_execution: false | ||||
|           - os: darwin | ||||
|             arch: amd64 | ||||
|             artifact_name: dasel_darwin_amd64 | ||||
|             build_docker: false | ||||
|             test_version: false | ||||
|             test_execution: false | ||||
|           - os: windows | ||||
|             arch: amd64 | ||||
|             artifact_name: dasel_windows_amd64.exe | ||||
|             build_docker: false | ||||
|             test_version: false | ||||
|             test_execution: false | ||||
|           - os: windows | ||||
|             arch: 386 | ||||
|             artifact_name: dasel_windows_386.exe | ||||
|             build_docker: false | ||||
|             test_version: false | ||||
|             test_execution: false | ||||
|           - os: linux | ||||
|             arch: arm64 | ||||
|             artifact_name: dasel_linux_arm64 | ||||
|             build_docker: false | ||||
|             test_version: false | ||||
|             test_execution: false | ||||
|         exclude: | ||||
|           - os: darwin | ||||
|             arch: 386 | ||||
|           - os: darwin | ||||
|             arch: arm64 | ||||
|           - os: windows | ||||
|             arch: arm64 | ||||
|     name: Dev build ${{ matrix.os }} ${{ matrix.arch }} | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|       - uses: actions/checkout@v2 | ||||
|       - uses: actions/setup-go@v2 | ||||
|         with: | ||||
|           go-version: '^1.17.0' # The Go version to download (if necessary) and use. | ||||
|       - name: Set env | ||||
|         run: echo RELEASE_VERSION=development >> $GITHUB_ENV | ||||
|       - name: Build | ||||
|         run: GOOS=${{ matrix.os }} GOARCH=${{ matrix.arch }} CGO_ENABLED=0 go build -o target/release/${{ matrix.artifact_name }} -ldflags="-X 'github.com/tomwright/dasel/internal.Version=${{ env.RELEASE_VERSION }}'" ./cmd/dasel | ||||
|       - name: Test version | ||||
|         if: matrix.test_version == true | ||||
|         run: ./target/release/${{ matrix.artifact_name }} --version | ||||
|       - name: Test execution | ||||
|         if: matrix.test_execution == true | ||||
|         run: | | ||||
|           echo '{"hello": "World"}' | ./target/release/${{ matrix.artifact_name }} -p json '.hello' | ||||
|       - name: Build docker image | ||||
|         if: matrix.build_docker == true | ||||
|         run: | | ||||
|           docker build --build-arg daselpath=target/release/${{ matrix.artifact_name }} -f docker/Dockerfile -t tomwright/dasel:latest . | ||||
|           docker build --build-arg daselpath=target/release/${{ matrix.artifact_name }} -f docker/alpine.Dockerfile -t tomwright/dasel:alpine . | ||||
|       - name: Test docker image | ||||
|         if: matrix.build_docker == true | ||||
|         run: | | ||||
|           echo '{"hello": "World"}' | docker run -i --rm tomwright/dasel:latest -p json '.hello' | ||||
|           echo '{"hello": "World"}' | docker run -i --rm tomwright/dasel:alpine -p json '.hello' | ||||
							
								
								
									
										29
									
								
								.github/workflows/build.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										29
									
								
								.github/workflows/build.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -88,22 +88,41 @@ jobs: | ||||
|           tag: ${{ github.ref }} | ||||
|       - name: Build docker image | ||||
|         if: matrix.build_docker == true | ||||
|         run: docker build --build-arg daselpath=target/release/${{ matrix.artifact_name }} -f docker/Dockerfile -t tomwright/dasel:latest . | ||||
|         run: | | ||||
|           docker build --build-arg daselpath=target/release/${{ matrix.artifact_name }} -f docker/Dockerfile -t tomwright/dasel:latest . | ||||
|           docker build --build-arg daselpath=target/release/${{ matrix.artifact_name }} -f docker/alpine.Dockerfile -t tomwright/dasel:alpine . | ||||
|       - name: Test docker image | ||||
|         if: matrix.build_docker == true | ||||
|         run: | | ||||
|           echo '{"hello": "World"}' | docker run -i --rm tomwright/dasel:latest -p json '.hello' | ||||
|           echo '{"hello": "World"}' | docker run -i --rm tomwright/dasel:alpine -p json '.hello' | ||||
|       - name: Docker login | ||||
|         if: matrix.build_docker == true | ||||
|         run: echo "${{ secrets.GHCR_PAT }}" | docker login ghcr.io -u TomWright --password-stdin | ||||
|       - name: Docker tag latest | ||||
|         if: matrix.build_docker == true | ||||
|         run: docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:latest | ||||
|         run: | | ||||
|           docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:latest | ||||
|           docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:buster-slim | ||||
|           docker tag tomwright/dasel:alpine ghcr.io/tomwright/dasel:alpine | ||||
|       - name: Docker tag release | ||||
|         if: matrix.build_docker == true | ||||
|         run: docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }} | ||||
|         run: | | ||||
|           docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }} | ||||
|           docker tag tomwright/dasel:latest ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }}-buster-slim | ||||
|           docker tag tomwright/dasel:alpine ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }}-alpine | ||||
|       - name: Docker push latest | ||||
|         if: matrix.build_docker == true | ||||
|         run: docker push ghcr.io/tomwright/dasel:latest | ||||
|         run: | | ||||
|           docker push ghcr.io/tomwright/dasel:latest | ||||
|           docker push ghcr.io/tomwright/dasel:buster-slim | ||||
|           docker push ghcr.io/tomwright/dasel:alpine | ||||
|       - name: Docker push release | ||||
|         if: matrix.build_docker == true | ||||
|         run: docker push ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }} | ||||
|         run: | | ||||
|           docker push ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }} | ||||
|           docker push ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }}-buster-slim | ||||
|           docker push ghcr.io/tomwright/dasel:${{ env.RELEASE_VERSION }}-alpine | ||||
|       - name: Homebrew bump formula | ||||
|         if: matrix.bump_homebrew == true | ||||
|         uses: dawidd6/action-homebrew-bump-formula@v3.7.2 | ||||
|   | ||||
							
								
								
									
										10
									
								
								docker/alpine.Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								docker/alpine.Dockerfile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| FROM alpine | ||||
|  | ||||
| ARG daselpath=./dasel | ||||
|  | ||||
| WORKDIR /root | ||||
| COPY $daselpath /usr/local/bin/dasel | ||||
| RUN chmod +x /usr/local/bin/dasel | ||||
|  | ||||
| ENTRYPOINT ["/usr/local/bin/dasel"] | ||||
| CMD [] | ||||
		Reference in New Issue
	
	Block a user
	 Tom Wright
					Tom Wright