mirror of
				https://github.com/docker/setup-buildx-action.git
				synced 2025-11-04 06:34:19 +08:00 
			
		
		
		
	Compare commits
	
		
			50 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					1583c0f09d | ||
| 
						 | 
					ed158e7963 | ||
| 
						 | 
					4cc794f83e | ||
| 
						 | 
					4dfc3d6c5d | ||
| 
						 | 
					af1b253b8d | ||
| 
						 | 
					3c6ab92b04 | ||
| 
						 | 
					2c8bcdab54 | ||
| 
						 | 
					1051acaba6 | ||
| 
						 | 
					e8cd182ec7 | ||
| 
						 | 
					8c5c87276d | ||
| 
						 | 
					90fa7ac870 | ||
| 
						 | 
					7ebadadf6b | ||
| 
						 | 
					ee3eb2f3a4 | ||
| 
						 | 
					c65d441f38 | ||
| 
						 | 
					da183f8ca3 | ||
| 
						 | 
					f7a6c723e1 | ||
| 
						 | 
					8424fa0070 | ||
| 
						 | 
					c52693d481 | ||
| 
						 | 
					5efa6e34fd | ||
| 
						 | 
					774224adf6 | ||
| 
						 | 
					5d221e8956 | ||
| 
						 | 
					68163b97ca | ||
| 
						 | 
					ae7d6893e8 | ||
| 
						 | 
					ac3a803dd3 | ||
| 
						 | 
					e468171a9d | ||
| 
						 | 
					a3e7502fd0 | ||
| 
						 | 
					b145473295 | ||
| 
						 | 
					18ce135bb5 | ||
| 
						 | 
					0e198e93af | ||
| 
						 | 
					05f3f3ac10 | ||
| 
						 | 
					622913496d | ||
| 
						 | 
					c6f6a07025 | ||
| 
						 | 
					6c5e29d848 | ||
| 
						 | 
					548b297749 | ||
| 
						 | 
					36590ad0c1 | ||
| 
						 | 
					4143b5899b | ||
| 
						 | 
					3f1544eb9e | ||
| 
						 | 
					f3204bbfac | ||
| 
						 | 
					4ba329ef89 | ||
| 
						 | 
					e600775e52 | ||
| 
						 | 
					b2b2ffa946 | ||
| 
						 | 
					fe905840cd | ||
| 
						 | 
					8998bbe94b | ||
| 
						 | 
					830833e0c7 | ||
| 
						 | 
					941183f0a0 | ||
| 
						 | 
					311b62b254 | ||
| 
						 | 
					afeb29a6e0 | ||
| 
						 | 
					b560416601 | ||
| 
						 | 
					516bb780e5 | ||
| 
						 | 
					11445527f0 | 
							
								
								
									
										115
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										115
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							@ -5,6 +5,7 @@ concurrency:
 | 
			
		||||
  cancel-in-progress: true
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
  schedule:
 | 
			
		||||
    - cron: '0 10 * * *'
 | 
			
		||||
  push:
 | 
			
		||||
@ -31,7 +32,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        id: buildx
 | 
			
		||||
@ -50,7 +51,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx 1
 | 
			
		||||
        uses: ./
 | 
			
		||||
@ -63,7 +64,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Stop docker
 | 
			
		||||
        run: |
 | 
			
		||||
@ -91,7 +92,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Create Dockerfile
 | 
			
		||||
        run: |
 | 
			
		||||
@ -119,7 +120,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
@ -141,7 +142,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
@ -164,7 +165,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
@ -177,7 +178,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
@ -210,7 +211,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Create context
 | 
			
		||||
        run: |
 | 
			
		||||
@ -232,7 +233,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Create buildkitd conf
 | 
			
		||||
        run: |
 | 
			
		||||
@ -264,7 +265,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Create Dockerfile
 | 
			
		||||
        run: |
 | 
			
		||||
@ -300,7 +301,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up QEMU
 | 
			
		||||
        uses: docker/setup-qemu-action@v3
 | 
			
		||||
@ -329,7 +330,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
@ -352,7 +353,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Uninstall docker cli
 | 
			
		||||
        run: |
 | 
			
		||||
@ -380,7 +381,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Uninstall docker cli
 | 
			
		||||
        run: |
 | 
			
		||||
@ -411,7 +412,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Uninstall docker cli
 | 
			
		||||
        run: |
 | 
			
		||||
@ -441,7 +442,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Create dummy contexts
 | 
			
		||||
        run: |
 | 
			
		||||
@ -470,7 +471,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up QEMU
 | 
			
		||||
        uses: docker/setup-qemu-action@v3
 | 
			
		||||
@ -485,7 +486,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Create Docker context
 | 
			
		||||
        run: |
 | 
			
		||||
@ -508,7 +509,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
@ -516,22 +517,21 @@ jobs:
 | 
			
		||||
          cleanup: ${{ matrix.cleanup }}
 | 
			
		||||
 | 
			
		||||
  k3s:
 | 
			
		||||
    runs-on: ubuntu-20.04
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    strategy:
 | 
			
		||||
      fail-fast: false
 | 
			
		||||
      matrix:
 | 
			
		||||
        version:
 | 
			
		||||
          - latest
 | 
			
		||||
          - v0.11.0
 | 
			
		||||
          - v0.10.5
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Install k3s
 | 
			
		||||
        uses: crazy-max/.github/.github/actions/install-k3s@605d30d5ae97f6680578ace4b56645af79343e60
 | 
			
		||||
        with:
 | 
			
		||||
          version: "v1.21.2-k3s1"
 | 
			
		||||
        uses: crazy-max/.github/.github/actions/install-k3s@a94383ec9e125b23907fb6fcebf7ff87964595e5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        id: buildx
 | 
			
		||||
@ -576,10 +576,73 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
        with:
 | 
			
		||||
          version: v0.11.2
 | 
			
		||||
          cache-binary: ${{ matrix.cache }}
 | 
			
		||||
 | 
			
		||||
  windows-error:
 | 
			
		||||
    runs-on: windows-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        id: buildx
 | 
			
		||||
        continue-on-error: true
 | 
			
		||||
        uses: ./
 | 
			
		||||
      -
 | 
			
		||||
        name: Check
 | 
			
		||||
        run: |
 | 
			
		||||
          echo "${{ toJson(steps.buildx) }}"
 | 
			
		||||
          if [ "${{ steps.buildx.outcome }}" != "failure" ] || [ "${{ steps.buildx.conclusion }}" != "success" ]; then
 | 
			
		||||
            echo "::error::Should have failed"
 | 
			
		||||
            exit 1
 | 
			
		||||
          fi
 | 
			
		||||
        shell: bash
 | 
			
		||||
 | 
			
		||||
  keep-state:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
        with:
 | 
			
		||||
          name: foo
 | 
			
		||||
          keep-state: true
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
        with:
 | 
			
		||||
          name: foo
 | 
			
		||||
          keep-state: true
 | 
			
		||||
 | 
			
		||||
  keep-state-error:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        id: buildx
 | 
			
		||||
        continue-on-error: true
 | 
			
		||||
        uses: ./
 | 
			
		||||
        with:
 | 
			
		||||
          driver: docker
 | 
			
		||||
          keep-state: true
 | 
			
		||||
      -
 | 
			
		||||
        name: Check
 | 
			
		||||
        run: |
 | 
			
		||||
          echo "${{ toJson(steps.buildx) }}"
 | 
			
		||||
          if [ "${{ steps.buildx.outcome }}" != "failure" ] || [ "${{ steps.buildx.conclusion }}" != "success" ]; then
 | 
			
		||||
            echo "::error::Should have failed"
 | 
			
		||||
            exit 1
 | 
			
		||||
          fi
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										17
									
								
								.github/workflows/pr-assign-author.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								.github/workflows/pr-assign-author.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,17 @@
 | 
			
		||||
name: pr-assign-author
 | 
			
		||||
 | 
			
		||||
permissions:
 | 
			
		||||
  contents: read
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  pull_request_target:
 | 
			
		||||
    types:
 | 
			
		||||
      - opened
 | 
			
		||||
      - reopened
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  run:
 | 
			
		||||
    uses: crazy-max/.github/.github/workflows/pr-assign-author.yml@1b673f36fad86812f538c1df9794904038a23cbf
 | 
			
		||||
    permissions:
 | 
			
		||||
      contents: read
 | 
			
		||||
      pull-requests: write
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/publish.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/publish.yml
									
									
									
									
										vendored
									
									
								
							@ -15,7 +15,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Publish
 | 
			
		||||
        uses: actions/publish-immutable-action@v0.0.4
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							@ -17,7 +17,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: Set up Docker Buildx
 | 
			
		||||
        uses: ./
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/validate.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/validate.yml
									
									
									
									
										vendored
									
									
								
							@ -19,7 +19,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        name: List targets
 | 
			
		||||
        id: generate
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										541
									
								
								.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										541
									
								
								.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										12
									
								
								.yarnrc.yml
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								.yarnrc.yml
									
									
									
									
									
								
							@ -1,3 +1,9 @@
 | 
			
		||||
# https://yarnpkg.com/configuration/yarnrc
 | 
			
		||||
 | 
			
		||||
compressionLevel: mixed
 | 
			
		||||
enableGlobalCache: false
 | 
			
		||||
enableHardenedMode: true
 | 
			
		||||
 | 
			
		||||
logFilters:
 | 
			
		||||
  - code: YN0013
 | 
			
		||||
    level: discard
 | 
			
		||||
@ -5,9 +11,7 @@ logFilters:
 | 
			
		||||
    level: discard
 | 
			
		||||
  - code: YN0076
 | 
			
		||||
    level: discard
 | 
			
		||||
  - code: YN0086
 | 
			
		||||
    level: discard
 | 
			
		||||
 | 
			
		||||
nodeLinker: node-modules
 | 
			
		||||
 | 
			
		||||
plugins:
 | 
			
		||||
  - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
 | 
			
		||||
    spec: "@yarnpkg/plugin-interactive-tools"
 | 
			
		||||
 | 
			
		||||
@ -42,7 +42,7 @@ jobs:
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
        uses: actions/checkout@v5
 | 
			
		||||
      -
 | 
			
		||||
        # Add support for more platforms with QEMU (optional)
 | 
			
		||||
        # https://github.com/docker/setup-qemu-action
 | 
			
		||||
@ -86,8 +86,9 @@ The following inputs can be used as `step.with` keys:
 | 
			
		||||
> ```
 | 
			
		||||
 | 
			
		||||
| Name                         | Type     | Default            | Description                                                                                                                                                                 |
 | 
			
		||||
|------------------------------|----------|--------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | 
			
		||||
|------------------------------|----------|--------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | 
			
		||||
| `version`                    | String   |                    | [Buildx](https://github.com/docker/buildx) version. (eg. `v0.3.0`, `latest`, `https://github.com/docker/buildx.git#master`)                                                 |
 | 
			
		||||
| `name`                       | String   |                    | Name of the builder. If not specified, one will be generated or if it already exists, it will be used instead of creating a new one                                         |
 | 
			
		||||
| `driver`                     | String   | `docker-container` | Sets the [builder driver](https://docs.docker.com/engine/reference/commandline/buildx_create/#driver) to be used                                                            |
 | 
			
		||||
| `driver-opts`                | List     |                    | List of additional [driver-specific options](https://docs.docker.com/engine/reference/commandline/buildx_create/#driver-opt) (eg. `image=moby/buildkit:master`)             |
 | 
			
		||||
| `buildkitd-flags`            | String   |                    | [BuildKit daemon flags](https://docs.docker.com/engine/reference/commandline/buildx_create/#buildkitd-flags)                                                                |
 | 
			
		||||
@ -96,8 +97,9 @@ The following inputs can be used as `step.with` keys:
 | 
			
		||||
| `install`                    | Bool     | `false`            | Sets up `docker build` command as an alias to `docker buildx`                                                                                                               |
 | 
			
		||||
| `use`                        | Bool     | `true`             | Switch to this builder instance                                                                                                                                             |
 | 
			
		||||
| `endpoint`                   | String   |                    | [Optional address for docker socket](https://docs.docker.com/engine/reference/commandline/buildx_create/#description) or context from `docker context ls`                   |
 | 
			
		||||
| `platforms`                  | List/CSV |                    | Fixed [platforms](https://docs.docker.com/engine/reference/commandline/buildx_create/#platform) for current node. If not empty, values take priority over the detected ones. |
 | 
			
		||||
| `platforms`                  | List/CSV |                    | Fixed [platforms](https://docs.docker.com/engine/reference/commandline/buildx_create/#platform) for current node. If not empty, values take priority over the detected ones |
 | 
			
		||||
| `append`                     | YAML     |                    | [Append additional nodes](https://docs.docker.com/build/ci/github-actions/configure-builder/#append-additional-nodes-to-the-builder) to the builder                         |
 | 
			
		||||
| `keep-state`                 | Bool     | `false`            | Keep BuildKit state on `cleanup`. This is only useful on persistent self-hosted runners                                                                                     |
 | 
			
		||||
| `cache-binary`               | Bool     | `true`             | Cache buildx binary to GitHub Actions cache backend                                                                                                                         |
 | 
			
		||||
| `cleanup`                    | Bool     | `true`             | Cleanup temp files and remove builder at the end of a job                                                                                                                   |
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -56,6 +56,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -74,6 +75,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -92,6 +94,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['driver-opts', 'image=moby/buildkit:master\nnetwork=host'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -112,6 +115,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -132,6 +136,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -151,6 +156,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['driver-opts', `"env.no_proxy=localhost,127.0.0.1,.mydomain"`],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false'],
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -169,6 +175,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['platforms', 'linux/amd64\n"linux/arm64,linux/arm/v7"'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false'],
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -187,6 +194,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['driver', 'unknown'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false'],
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -203,6 +211,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['buildkitd-config', path.join(fixturesDir, 'buildkitd.toml')],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false'],
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -221,6 +230,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['buildkitd-config-inline', 'debug = true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false'],
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -240,6 +250,7 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        ['buildkitd-flags', '--allow-insecure-entitlement network.host'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false'],
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
@ -247,7 +258,45 @@ describe('getCreateArgs', () => {
 | 
			
		||||
        '--driver', 'cloud',
 | 
			
		||||
        '--buildkitd-flags', '--allow-insecure-entitlement network.host',
 | 
			
		||||
      ]
 | 
			
		||||
    ],
 | 
			
		||||
    [
 | 
			
		||||
      11,
 | 
			
		||||
      'v0.10.3',
 | 
			
		||||
      new Map<string, string>([
 | 
			
		||||
        ['install', 'false'],
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['keep-state', 'false'],
 | 
			
		||||
        ['name', 'test-builder-name'],
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
        '--name', 'test-builder-name',
 | 
			
		||||
        '--driver', 'docker-container',
 | 
			
		||||
        '--buildkitd-flags', '--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host',
 | 
			
		||||
        '--use'
 | 
			
		||||
      ]
 | 
			
		||||
    ],
 | 
			
		||||
    [
 | 
			
		||||
      12,
 | 
			
		||||
      'v0.10.3',
 | 
			
		||||
      new Map<string, string>([
 | 
			
		||||
        ['install', 'false'],
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['keep-state', 'true'],
 | 
			
		||||
        ['name', 'test-builder-name'],
 | 
			
		||||
      ]),
 | 
			
		||||
      [
 | 
			
		||||
        'create',
 | 
			
		||||
        '--name', 'test-builder-name',
 | 
			
		||||
        '--driver', 'docker-container',
 | 
			
		||||
        '--buildkitd-flags', '--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host',
 | 
			
		||||
        '--use',
 | 
			
		||||
      ]
 | 
			
		||||
    ],
 | 
			
		||||
  ])(
 | 
			
		||||
    '[%d] given buildx %s and %p as inputs, returns %p',
 | 
			
		||||
    async (num: number, buildxVersion: string, inputs: Map<string, string>, expected: Array<string>) => {
 | 
			
		||||
@ -285,6 +334,7 @@ describe('getAppendArgs', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      {
 | 
			
		||||
        "name": "aws_graviton2",
 | 
			
		||||
@ -343,6 +393,7 @@ describe('getVersion', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      ''
 | 
			
		||||
    ],
 | 
			
		||||
@ -354,7 +405,8 @@ describe('getVersion', () => {
 | 
			
		||||
        ['install', 'false'],
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true']
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      'latest'
 | 
			
		||||
    ],
 | 
			
		||||
@ -366,7 +418,8 @@ describe('getVersion', () => {
 | 
			
		||||
        ['install', 'false'],
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true']
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      'edge'
 | 
			
		||||
    ],
 | 
			
		||||
@ -378,7 +431,8 @@ describe('getVersion', () => {
 | 
			
		||||
        ['install', 'false'],
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true']
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      'v0.19.2'
 | 
			
		||||
    ],
 | 
			
		||||
@ -391,7 +445,8 @@ describe('getVersion', () => {
 | 
			
		||||
        ['install', 'false'],
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true']
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      'cloud:latest'
 | 
			
		||||
    ],
 | 
			
		||||
@ -404,7 +459,8 @@ describe('getVersion', () => {
 | 
			
		||||
        ['install', 'false'],
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true']
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      'cloud:edge'
 | 
			
		||||
    ],
 | 
			
		||||
@ -417,6 +473,7 @@ describe('getVersion', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      'cloud:latest'
 | 
			
		||||
    ],
 | 
			
		||||
@ -430,6 +487,7 @@ describe('getVersion', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      'cloud:v0.11.2-desktop.2'
 | 
			
		||||
    ],
 | 
			
		||||
@ -442,6 +500,7 @@ describe('getVersion', () => {
 | 
			
		||||
        ['use', 'true'],
 | 
			
		||||
        ['cache-binary', 'true'],
 | 
			
		||||
        ['cleanup', 'true'],
 | 
			
		||||
        ['keep-state', 'false']
 | 
			
		||||
      ]),
 | 
			
		||||
      'cloud:v0.11.2-desktop.2'
 | 
			
		||||
    ],
 | 
			
		||||
 | 
			
		||||
@ -34,6 +34,9 @@ inputs:
 | 
			
		||||
    description: 'Switch to this builder instance'
 | 
			
		||||
    default: 'true'
 | 
			
		||||
    required: false
 | 
			
		||||
  name:
 | 
			
		||||
    description: 'Name of the builder. If not specified, one will be generated or if it already exists, it will be used instead of creating a new one.'
 | 
			
		||||
    required: false
 | 
			
		||||
  endpoint:
 | 
			
		||||
    description: 'Optional address for docker socket or context from `docker context ls`'
 | 
			
		||||
    required: false
 | 
			
		||||
@ -43,6 +46,10 @@ inputs:
 | 
			
		||||
  append:
 | 
			
		||||
    description: 'Append additional nodes to the builder'
 | 
			
		||||
    required: false
 | 
			
		||||
  keep-state:
 | 
			
		||||
    description: 'Keep BuildKit state on cleanup. This is only useful on persistent self-hosted runners.'
 | 
			
		||||
    default: 'false'
 | 
			
		||||
    required: false
 | 
			
		||||
  cache-binary:
 | 
			
		||||
    description: 'Cache buildx binary to GitHub Actions cache backend'
 | 
			
		||||
    default: 'true'
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										38
									
								
								dist/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										38
									
								
								dist/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										2
									
								
								dist/index.js.map
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/index.js.map
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										2
									
								
								dist/sourcemap-register.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/sourcemap-register.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										26
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										26
									
								
								package.json
									
									
									
									
									
								
							@ -23,27 +23,27 @@
 | 
			
		||||
  ],
 | 
			
		||||
  "author": "Docker Inc.",
 | 
			
		||||
  "license": "Apache-2.0",
 | 
			
		||||
  "packageManager": "yarn@3.6.3",
 | 
			
		||||
  "packageManager": "yarn@4.9.2",
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
    "@actions/core": "^1.11.1",
 | 
			
		||||
    "@docker/actions-toolkit": "^0.56.0",
 | 
			
		||||
    "@docker/actions-toolkit": "^0.63.0",
 | 
			
		||||
    "js-yaml": "^4.1.0"
 | 
			
		||||
  },
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
    "@types/js-yaml": "^4.0.9",
 | 
			
		||||
    "@types/node": "^20.12.12",
 | 
			
		||||
    "@types/node": "^20.19.9",
 | 
			
		||||
    "@types/uuid": "^10.0.0",
 | 
			
		||||
    "@typescript-eslint/eslint-plugin": "^7.9.0",
 | 
			
		||||
    "@typescript-eslint/parser": "^7.9.0",
 | 
			
		||||
    "@vercel/ncc": "^0.38.1",
 | 
			
		||||
    "eslint": "^8.57.0",
 | 
			
		||||
    "eslint-config-prettier": "^9.1.0",
 | 
			
		||||
    "eslint-plugin-jest": "^28.5.0",
 | 
			
		||||
    "eslint-plugin-prettier": "^5.1.3",
 | 
			
		||||
    "@typescript-eslint/eslint-plugin": "^7.18.0",
 | 
			
		||||
    "@typescript-eslint/parser": "^7.18.0",
 | 
			
		||||
    "@vercel/ncc": "^0.38.3",
 | 
			
		||||
    "eslint": "^8.57.1",
 | 
			
		||||
    "eslint-config-prettier": "^9.1.2",
 | 
			
		||||
    "eslint-plugin-jest": "^28.14.0",
 | 
			
		||||
    "eslint-plugin-prettier": "^5.5.4",
 | 
			
		||||
    "jest": "^29.7.0",
 | 
			
		||||
    "prettier": "^3.2.5",
 | 
			
		||||
    "ts-jest": "^29.1.2",
 | 
			
		||||
    "prettier": "^3.6.2",
 | 
			
		||||
    "ts-jest": "^29.4.1",
 | 
			
		||||
    "ts-node": "^10.9.2",
 | 
			
		||||
    "typescript": "^5.4.5"
 | 
			
		||||
    "typescript": "^5.9.2"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -25,12 +25,13 @@ export interface Inputs {
 | 
			
		||||
  append: string;
 | 
			
		||||
  cacheBinary: boolean;
 | 
			
		||||
  cleanup: boolean;
 | 
			
		||||
  keepState: boolean;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export async function getInputs(): Promise<Inputs> {
 | 
			
		||||
  return {
 | 
			
		||||
    version: core.getInput('version'),
 | 
			
		||||
    name: await getBuilderName(core.getInput('driver') || 'docker-container'),
 | 
			
		||||
    name: await getBuilderName(core.getInput('name'), core.getInput('driver') || 'docker-container'),
 | 
			
		||||
    driver: core.getInput('driver') || 'docker-container',
 | 
			
		||||
    driverOpts: Util.getInputList('driver-opts', {ignoreComma: true, quote: false}),
 | 
			
		||||
    buildkitdFlags: core.getInput('buildkitd-flags'),
 | 
			
		||||
@ -41,13 +42,14 @@ export async function getInputs(): Promise<Inputs> {
 | 
			
		||||
    buildkitdConfig: core.getInput('buildkitd-config') || core.getInput('config'),
 | 
			
		||||
    buildkitdConfigInline: core.getInput('buildkitd-config-inline') || core.getInput('config-inline'),
 | 
			
		||||
    append: core.getInput('append'),
 | 
			
		||||
    keepState: core.getBooleanInput('keep-state'),
 | 
			
		||||
    cacheBinary: core.getBooleanInput('cache-binary'),
 | 
			
		||||
    cleanup: core.getBooleanInput('cleanup')
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export async function getBuilderName(driver: string): Promise<string> {
 | 
			
		||||
  return driver == 'docker' ? await Docker.context() : `builder-${crypto.randomUUID()}`;
 | 
			
		||||
export async function getBuilderName(name: string, driver: string): Promise<string> {
 | 
			
		||||
  return driver == 'docker' ? await Docker.context() : name || `builder-${crypto.randomUUID()}`;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export async function getCreateArgs(inputs: Inputs, toolkit: Toolkit): Promise<Array<string>> {
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										25
									
								
								src/main.ts
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								src/main.ts
									
									
									
									
									
								
							@ -28,6 +28,12 @@ actionsToolkit.run(
 | 
			
		||||
    const standalone = await toolkit.buildx.isStandalone();
 | 
			
		||||
    stateHelper.setStandalone(standalone);
 | 
			
		||||
 | 
			
		||||
    if (inputs.keepState && inputs.driver !== 'docker-container') {
 | 
			
		||||
      // https://docs.docker.com/reference/cli/docker/buildx/rm/#keep-state
 | 
			
		||||
      throw new Error(`Cannot use keep-state with ${inputs.driver} driver`);
 | 
			
		||||
    }
 | 
			
		||||
    stateHelper.setKeepState(inputs.keepState);
 | 
			
		||||
 | 
			
		||||
    await core.group(`Docker info`, async () => {
 | 
			
		||||
      try {
 | 
			
		||||
        await Docker.printVersion();
 | 
			
		||||
@ -118,6 +124,9 @@ actionsToolkit.run(
 | 
			
		||||
 | 
			
		||||
    if (inputs.driver !== 'docker') {
 | 
			
		||||
      await core.group(`Creating a new builder instance`, async () => {
 | 
			
		||||
        if (await toolkit.builder.exists(inputs.name)) {
 | 
			
		||||
          core.info(`Builder ${inputs.name} already exists, skipping creation`);
 | 
			
		||||
        } else {
 | 
			
		||||
          const certsDriverOpts = Buildx.resolveCertsDriverOpts(inputs.driver, inputs.endpoint, {
 | 
			
		||||
            cacert: process.env[`${context.builderNodeEnvPrefix}_0_AUTH_TLS_CACERT`],
 | 
			
		||||
            cert: process.env[`${context.builderNodeEnvPrefix}_0_AUTH_TLS_CERT`],
 | 
			
		||||
@ -134,6 +143,7 @@ actionsToolkit.run(
 | 
			
		||||
              throw new Error(res.stderr.match(/(.*)\s*$/)?.[0]?.trim() ?? 'unknown error');
 | 
			
		||||
            }
 | 
			
		||||
          });
 | 
			
		||||
        }
 | 
			
		||||
      });
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -179,6 +189,7 @@ actionsToolkit.run(
 | 
			
		||||
        throw new Error(`Cannot set buildx as default builder without the Docker CLI`);
 | 
			
		||||
      }
 | 
			
		||||
      await core.group(`Setting buildx as default builder`, async () => {
 | 
			
		||||
        stateHelper.setBuildxIsDefaultBuilder(true);
 | 
			
		||||
        const installCmd = await toolkit.buildx.getCommand(['install']);
 | 
			
		||||
        await Exec.getExecOutput(installCmd.command, installCmd.args, {
 | 
			
		||||
          ignoreReturnCode: true
 | 
			
		||||
@ -248,7 +259,7 @@ actionsToolkit.run(
 | 
			
		||||
        const buildx = new Buildx({standalone: stateHelper.standalone});
 | 
			
		||||
        const builder = new Builder({buildx: buildx});
 | 
			
		||||
        if (await builder.exists(stateHelper.builderName)) {
 | 
			
		||||
          const rmCmd = await buildx.getCommand(['rm', stateHelper.builderName]);
 | 
			
		||||
          const rmCmd = await buildx.getCommand(['rm', stateHelper.builderName, ...(stateHelper.keepState ? ['--keep-state'] : [])]);
 | 
			
		||||
          await Exec.getExecOutput(rmCmd.command, rmCmd.args, {
 | 
			
		||||
            ignoreReturnCode: true
 | 
			
		||||
          }).then(res => {
 | 
			
		||||
@ -279,5 +290,17 @@ actionsToolkit.run(
 | 
			
		||||
        fs.rmSync(stateHelper.certsDir, {recursive: true});
 | 
			
		||||
      });
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (stateHelper.buildxIsDefaultBuilder) {
 | 
			
		||||
      await core.group(`Restoring default builder`, async () => {
 | 
			
		||||
        await Exec.getExecOutput('docker', ['buildx', 'uninstall'], {
 | 
			
		||||
          ignoreReturnCode: true
 | 
			
		||||
        }).then(res => {
 | 
			
		||||
          if (res.stderr.length > 0 && res.exitCode != 0) {
 | 
			
		||||
            core.warning(`${res.stderr.match(/(.*)\s*$/)?.[0]?.trim() ?? 'unknown error'}`);
 | 
			
		||||
          }
 | 
			
		||||
        });
 | 
			
		||||
      });
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
@ -8,6 +8,8 @@ export const containerName = process.env['STATE_containerName'] || '';
 | 
			
		||||
export const certsDir = process.env['STATE_certsDir'] || '';
 | 
			
		||||
export const tmpDockerContext = process.env['STATE_tmpDockerContext'] || '';
 | 
			
		||||
export const cleanup = /true/i.test(process.env['STATE_cleanup'] || '');
 | 
			
		||||
export const buildxIsDefaultBuilder = /true/i.test(process.env['STATE_buildxIsDefaultBuilder'] || '');
 | 
			
		||||
export const keepState = /true/i.test(process.env['STATE_keepState'] || '');
 | 
			
		||||
 | 
			
		||||
export function setDebug(debug: string) {
 | 
			
		||||
  core.saveState('isDebug', debug);
 | 
			
		||||
@ -40,3 +42,11 @@ export function setTmpDockerContext(tmpDockerContext: string) {
 | 
			
		||||
export function setCleanup(cleanup: boolean) {
 | 
			
		||||
  core.saveState('cleanup', cleanup);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function setBuildxIsDefaultBuilder(buildxIsDefaultBuilder: boolean) {
 | 
			
		||||
  core.saveState('buildxIsDefaultBuilder', buildxIsDefaultBuilder);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function setKeepState(keepState: boolean) {
 | 
			
		||||
  core.saveState('keepState', keepState);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user