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
 | 
					  cancel-in-progress: true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
on:
 | 
					on:
 | 
				
			||||||
 | 
					  workflow_dispatch:
 | 
				
			||||||
  schedule:
 | 
					  schedule:
 | 
				
			||||||
    - cron: '0 10 * * *'
 | 
					    - cron: '0 10 * * *'
 | 
				
			||||||
  push:
 | 
					  push:
 | 
				
			||||||
@ -31,7 +32,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        id: buildx
 | 
					        id: buildx
 | 
				
			||||||
@ -50,7 +51,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx 1
 | 
					        name: Set up Docker Buildx 1
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@ -63,7 +64,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Stop docker
 | 
					        name: Stop docker
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -91,7 +92,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Create Dockerfile
 | 
					        name: Create Dockerfile
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -119,7 +120,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@ -141,7 +142,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@ -164,7 +165,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@ -177,7 +178,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@ -210,7 +211,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Create context
 | 
					        name: Create context
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -232,7 +233,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Create buildkitd conf
 | 
					        name: Create buildkitd conf
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -264,7 +265,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Create Dockerfile
 | 
					        name: Create Dockerfile
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -300,7 +301,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up QEMU
 | 
					        name: Set up QEMU
 | 
				
			||||||
        uses: docker/setup-qemu-action@v3
 | 
					        uses: docker/setup-qemu-action@v3
 | 
				
			||||||
@ -329,7 +330,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@ -352,7 +353,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Uninstall docker cli
 | 
					        name: Uninstall docker cli
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -380,7 +381,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Uninstall docker cli
 | 
					        name: Uninstall docker cli
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -411,7 +412,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Uninstall docker cli
 | 
					        name: Uninstall docker cli
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -441,7 +442,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Create dummy contexts
 | 
					        name: Create dummy contexts
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -470,7 +471,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up QEMU
 | 
					        name: Set up QEMU
 | 
				
			||||||
        uses: docker/setup-qemu-action@v3
 | 
					        uses: docker/setup-qemu-action@v3
 | 
				
			||||||
@ -485,7 +486,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Create Docker context
 | 
					        name: Create Docker context
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
@ -508,7 +509,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@ -516,22 +517,21 @@ jobs:
 | 
				
			|||||||
          cleanup: ${{ matrix.cleanup }}
 | 
					          cleanup: ${{ matrix.cleanup }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  k3s:
 | 
					  k3s:
 | 
				
			||||||
    runs-on: ubuntu-20.04
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        version:
 | 
					        version:
 | 
				
			||||||
 | 
					          - latest
 | 
				
			||||||
          - v0.11.0
 | 
					          - v0.11.0
 | 
				
			||||||
          - v0.10.5
 | 
					          - v0.10.5
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Install k3s
 | 
					        name: Install k3s
 | 
				
			||||||
        uses: crazy-max/.github/.github/actions/install-k3s@605d30d5ae97f6680578ace4b56645af79343e60
 | 
					        uses: crazy-max/.github/.github/actions/install-k3s@a94383ec9e125b23907fb6fcebf7ff87964595e5
 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          version: "v1.21.2-k3s1"
 | 
					 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        id: buildx
 | 
					        id: buildx
 | 
				
			||||||
@ -576,10 +576,73 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          version: v0.11.2
 | 
					          version: v0.11.2
 | 
				
			||||||
          cache-binary: ${{ matrix.cache }}
 | 
					          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:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Publish
 | 
					        name: Publish
 | 
				
			||||||
        uses: actions/publish-immutable-action@v0.0.4
 | 
					        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:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Set up Docker Buildx
 | 
					        name: Set up Docker Buildx
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										2
									
								
								.github/workflows/validate.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/validate.yml
									
									
									
									
										vendored
									
									
								
							@ -19,7 +19,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: List targets
 | 
					        name: List targets
 | 
				
			||||||
        id: generate
 | 
					        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:
 | 
					logFilters:
 | 
				
			||||||
  - code: YN0013
 | 
					  - code: YN0013
 | 
				
			||||||
    level: discard
 | 
					    level: discard
 | 
				
			||||||
@ -5,9 +11,7 @@ logFilters:
 | 
				
			|||||||
    level: discard
 | 
					    level: discard
 | 
				
			||||||
  - code: YN0076
 | 
					  - code: YN0076
 | 
				
			||||||
    level: discard
 | 
					    level: discard
 | 
				
			||||||
 | 
					  - code: YN0086
 | 
				
			||||||
 | 
					    level: discard
 | 
				
			||||||
 | 
					
 | 
				
			||||||
nodeLinker: node-modules
 | 
					nodeLinker: node-modules
 | 
				
			||||||
 | 
					 | 
				
			||||||
plugins:
 | 
					 | 
				
			||||||
  - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
 | 
					 | 
				
			||||||
    spec: "@yarnpkg/plugin-interactive-tools"
 | 
					 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										34
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								README.md
									
									
									
									
									
								
							@ -42,7 +42,7 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        name: Checkout
 | 
					        name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v5
 | 
				
			||||||
      -
 | 
					      -
 | 
				
			||||||
        # Add support for more platforms with QEMU (optional)
 | 
					        # Add support for more platforms with QEMU (optional)
 | 
				
			||||||
        # https://github.com/docker/setup-qemu-action
 | 
					        # https://github.com/docker/setup-qemu-action
 | 
				
			||||||
@ -85,21 +85,23 @@ The following inputs can be used as `step.with` keys:
 | 
				
			|||||||
> platforms: linux/amd64,linux/arm64
 | 
					> platforms: linux/amd64,linux/arm64
 | 
				
			||||||
> ```
 | 
					> ```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| Name                         | Type     | Default            | Description                                                                                                                                                                  |
 | 
					| 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`)                                                  |
 | 
					| `version`                    | String   |                    | [Buildx](https://github.com/docker/buildx) version. (eg. `v0.3.0`, `latest`, `https://github.com/docker/buildx.git#master`)                                                 |
 | 
				
			||||||
| `driver`                     | String   | `docker-container` | Sets the [builder driver](https://docs.docker.com/engine/reference/commandline/buildx_create/#driver) to be used                                                             |
 | 
					| `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-opts`                | List     |                    | List of additional [driver-specific options](https://docs.docker.com/engine/reference/commandline/buildx_create/#driver-opt) (eg. `image=moby/buildkit:master`)              |
 | 
					| `driver`                     | String   | `docker-container` | Sets the [builder driver](https://docs.docker.com/engine/reference/commandline/buildx_create/#driver) to be used                                                            |
 | 
				
			||||||
| `buildkitd-flags`            | String   |                    | [BuildKit daemon flags](https://docs.docker.com/engine/reference/commandline/buildx_create/#buildkitd-flags)                                                                 |
 | 
					| `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-config` \*        | String   |                    | [BuildKit daemon config file](https://docs.docker.com/engine/reference/commandline/buildx_create/#config)                                                                    |
 | 
					| `buildkitd-flags`            | String   |                    | [BuildKit daemon flags](https://docs.docker.com/engine/reference/commandline/buildx_create/#buildkitd-flags)                                                                |
 | 
				
			||||||
| `buildkitd-config-inline` \* | String   |                    | Same as `buildkitd-config` but inline                                                                                                                                        |
 | 
					| `buildkitd-config` \*        | String   |                    | [BuildKit daemon config file](https://docs.docker.com/engine/reference/commandline/buildx_create/#config)                                                                   |
 | 
				
			||||||
| `install`                    | Bool     | `false`            | Sets up `docker build` command as an alias to `docker buildx`                                                                                                                |
 | 
					| `buildkitd-config-inline` \* | String   |                    | Same as `buildkitd-config` but inline                                                                                                                                       |
 | 
				
			||||||
| `use`                        | Bool     | `true`             | Switch to this builder instance                                                                                                                                              |
 | 
					| `install`                    | Bool     | `false`            | Sets up `docker build` command as an alias to `docker buildx`                                                                                                               |
 | 
				
			||||||
| `endpoint`                   | String   |                    | [Optional address for docker socket](https://docs.docker.com/engine/reference/commandline/buildx_create/#description) or context from `docker context ls`                    |
 | 
					| `use`                        | Bool     | `true`             | Switch to this builder instance                                                                                                                                             |
 | 
				
			||||||
| `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. |
 | 
					| `endpoint`                   | String   |                    | [Optional address for docker socket](https://docs.docker.com/engine/reference/commandline/buildx_create/#description) or context from `docker context ls`                   |
 | 
				
			||||||
| `append`                     | YAML     |                    | [Append additional nodes](https://docs.docker.com/build/ci/github-actions/configure-builder/#append-additional-nodes-to-the-builder) to the builder                          |
 | 
					| `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 |
 | 
				
			||||||
| `cache-binary`               | Bool     | `true`             | Cache buildx binary to GitHub Actions cache backend                                                                                                                          |
 | 
					| `append`                     | YAML     |                    | [Append additional nodes](https://docs.docker.com/build/ci/github-actions/configure-builder/#append-additional-nodes-to-the-builder) to the builder                         |
 | 
				
			||||||
| `cleanup`                    | Bool     | `true`             | Cleanup temp files and remove builder at the end of a job                                                                                                                    |
 | 
					| `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                                                                                                                   |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
> [!IMPORTANT]
 | 
					> [!IMPORTANT]
 | 
				
			||||||
> If you set the `buildkitd-flags` input, the default flags (`--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host`)
 | 
					> If you set the `buildkitd-flags` input, the default flags (`--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host`)
 | 
				
			||||||
 | 
				
			|||||||
@ -56,6 +56,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -74,6 +75,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -92,6 +94,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['driver-opts', 'image=moby/buildkit:master\nnetwork=host'],
 | 
					        ['driver-opts', 'image=moby/buildkit:master\nnetwork=host'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -112,6 +115,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -132,6 +136,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -151,6 +156,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['driver-opts', `"env.no_proxy=localhost,127.0.0.1,.mydomain"`],
 | 
					        ['driver-opts', `"env.no_proxy=localhost,127.0.0.1,.mydomain"`],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false'],
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -169,6 +175,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['platforms', 'linux/amd64\n"linux/arm64,linux/arm/v7"'],
 | 
					        ['platforms', 'linux/amd64\n"linux/arm64,linux/arm/v7"'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false'],
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -187,6 +194,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['driver', 'unknown'],
 | 
					        ['driver', 'unknown'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false'],
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -203,6 +211,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['buildkitd-config', path.join(fixturesDir, 'buildkitd.toml')],
 | 
					        ['buildkitd-config', path.join(fixturesDir, 'buildkitd.toml')],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false'],
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -221,6 +230,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['buildkitd-config-inline', 'debug = true'],
 | 
					        ['buildkitd-config-inline', 'debug = true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false'],
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -240,6 +250,7 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        ['buildkitd-flags', '--allow-insecure-entitlement network.host'],
 | 
					        ['buildkitd-flags', '--allow-insecure-entitlement network.host'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false'],
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      [
 | 
					      [
 | 
				
			||||||
        'create',
 | 
					        'create',
 | 
				
			||||||
@ -247,7 +258,45 @@ describe('getCreateArgs', () => {
 | 
				
			|||||||
        '--driver', 'cloud',
 | 
					        '--driver', 'cloud',
 | 
				
			||||||
        '--buildkitd-flags', '--allow-insecure-entitlement network.host',
 | 
					        '--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',
 | 
					    '[%d] given buildx %s and %p as inputs, returns %p',
 | 
				
			||||||
    async (num: number, buildxVersion: string, inputs: Map<string, string>, expected: Array<string>) => {
 | 
					    async (num: number, buildxVersion: string, inputs: Map<string, string>, expected: Array<string>) => {
 | 
				
			||||||
@ -285,6 +334,7 @@ describe('getAppendArgs', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      {
 | 
					      {
 | 
				
			||||||
        "name": "aws_graviton2",
 | 
					        "name": "aws_graviton2",
 | 
				
			||||||
@ -343,6 +393,7 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      ''
 | 
					      ''
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
@ -354,7 +405,8 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['install', 'false'],
 | 
					        ['install', 'false'],
 | 
				
			||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true']
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      'latest'
 | 
					      'latest'
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
@ -366,7 +418,8 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['install', 'false'],
 | 
					        ['install', 'false'],
 | 
				
			||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true']
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      'edge'
 | 
					      'edge'
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
@ -378,7 +431,8 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['install', 'false'],
 | 
					        ['install', 'false'],
 | 
				
			||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true']
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      'v0.19.2'
 | 
					      'v0.19.2'
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
@ -391,7 +445,8 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['install', 'false'],
 | 
					        ['install', 'false'],
 | 
				
			||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true']
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      'cloud:latest'
 | 
					      'cloud:latest'
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
@ -404,7 +459,8 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['install', 'false'],
 | 
					        ['install', 'false'],
 | 
				
			||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true']
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      'cloud:edge'
 | 
					      'cloud:edge'
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
@ -417,6 +473,7 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      'cloud:latest'
 | 
					      'cloud:latest'
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
@ -430,6 +487,7 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      'cloud:v0.11.2-desktop.2'
 | 
					      'cloud:v0.11.2-desktop.2'
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
@ -442,6 +500,7 @@ describe('getVersion', () => {
 | 
				
			|||||||
        ['use', 'true'],
 | 
					        ['use', 'true'],
 | 
				
			||||||
        ['cache-binary', 'true'],
 | 
					        ['cache-binary', 'true'],
 | 
				
			||||||
        ['cleanup', 'true'],
 | 
					        ['cleanup', 'true'],
 | 
				
			||||||
 | 
					        ['keep-state', 'false']
 | 
				
			||||||
      ]),
 | 
					      ]),
 | 
				
			||||||
      'cloud:v0.11.2-desktop.2'
 | 
					      'cloud:v0.11.2-desktop.2'
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
 | 
				
			|||||||
@ -34,6 +34,9 @@ inputs:
 | 
				
			|||||||
    description: 'Switch to this builder instance'
 | 
					    description: 'Switch to this builder instance'
 | 
				
			||||||
    default: 'true'
 | 
					    default: 'true'
 | 
				
			||||||
    required: false
 | 
					    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:
 | 
					  endpoint:
 | 
				
			||||||
    description: 'Optional address for docker socket or context from `docker context ls`'
 | 
					    description: 'Optional address for docker socket or context from `docker context ls`'
 | 
				
			||||||
    required: false
 | 
					    required: false
 | 
				
			||||||
@ -43,6 +46,10 @@ inputs:
 | 
				
			|||||||
  append:
 | 
					  append:
 | 
				
			||||||
    description: 'Append additional nodes to the builder'
 | 
					    description: 'Append additional nodes to the builder'
 | 
				
			||||||
    required: false
 | 
					    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:
 | 
					  cache-binary:
 | 
				
			||||||
    description: 'Cache buildx binary to GitHub Actions cache backend'
 | 
					    description: 'Cache buildx binary to GitHub Actions cache backend'
 | 
				
			||||||
    default: 'true'
 | 
					    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.",
 | 
					  "author": "Docker Inc.",
 | 
				
			||||||
  "license": "Apache-2.0",
 | 
					  "license": "Apache-2.0",
 | 
				
			||||||
  "packageManager": "yarn@3.6.3",
 | 
					  "packageManager": "yarn@4.9.2",
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "@actions/core": "^1.11.1",
 | 
					    "@actions/core": "^1.11.1",
 | 
				
			||||||
    "@docker/actions-toolkit": "^0.56.0",
 | 
					    "@docker/actions-toolkit": "^0.63.0",
 | 
				
			||||||
    "js-yaml": "^4.1.0"
 | 
					    "js-yaml": "^4.1.0"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
    "@types/js-yaml": "^4.0.9",
 | 
					    "@types/js-yaml": "^4.0.9",
 | 
				
			||||||
    "@types/node": "^20.12.12",
 | 
					    "@types/node": "^20.19.9",
 | 
				
			||||||
    "@types/uuid": "^10.0.0",
 | 
					    "@types/uuid": "^10.0.0",
 | 
				
			||||||
    "@typescript-eslint/eslint-plugin": "^7.9.0",
 | 
					    "@typescript-eslint/eslint-plugin": "^7.18.0",
 | 
				
			||||||
    "@typescript-eslint/parser": "^7.9.0",
 | 
					    "@typescript-eslint/parser": "^7.18.0",
 | 
				
			||||||
    "@vercel/ncc": "^0.38.1",
 | 
					    "@vercel/ncc": "^0.38.3",
 | 
				
			||||||
    "eslint": "^8.57.0",
 | 
					    "eslint": "^8.57.1",
 | 
				
			||||||
    "eslint-config-prettier": "^9.1.0",
 | 
					    "eslint-config-prettier": "^9.1.2",
 | 
				
			||||||
    "eslint-plugin-jest": "^28.5.0",
 | 
					    "eslint-plugin-jest": "^28.14.0",
 | 
				
			||||||
    "eslint-plugin-prettier": "^5.1.3",
 | 
					    "eslint-plugin-prettier": "^5.5.4",
 | 
				
			||||||
    "jest": "^29.7.0",
 | 
					    "jest": "^29.7.0",
 | 
				
			||||||
    "prettier": "^3.2.5",
 | 
					    "prettier": "^3.6.2",
 | 
				
			||||||
    "ts-jest": "^29.1.2",
 | 
					    "ts-jest": "^29.4.1",
 | 
				
			||||||
    "ts-node": "^10.9.2",
 | 
					    "ts-node": "^10.9.2",
 | 
				
			||||||
    "typescript": "^5.4.5"
 | 
					    "typescript": "^5.9.2"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -25,12 +25,13 @@ export interface Inputs {
 | 
				
			|||||||
  append: string;
 | 
					  append: string;
 | 
				
			||||||
  cacheBinary: boolean;
 | 
					  cacheBinary: boolean;
 | 
				
			||||||
  cleanup: boolean;
 | 
					  cleanup: boolean;
 | 
				
			||||||
 | 
					  keepState: boolean;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export async function getInputs(): Promise<Inputs> {
 | 
					export async function getInputs(): Promise<Inputs> {
 | 
				
			||||||
  return {
 | 
					  return {
 | 
				
			||||||
    version: core.getInput('version'),
 | 
					    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',
 | 
					    driver: core.getInput('driver') || 'docker-container',
 | 
				
			||||||
    driverOpts: Util.getInputList('driver-opts', {ignoreComma: true, quote: false}),
 | 
					    driverOpts: Util.getInputList('driver-opts', {ignoreComma: true, quote: false}),
 | 
				
			||||||
    buildkitdFlags: core.getInput('buildkitd-flags'),
 | 
					    buildkitdFlags: core.getInput('buildkitd-flags'),
 | 
				
			||||||
@ -41,13 +42,14 @@ export async function getInputs(): Promise<Inputs> {
 | 
				
			|||||||
    buildkitdConfig: core.getInput('buildkitd-config') || core.getInput('config'),
 | 
					    buildkitdConfig: core.getInput('buildkitd-config') || core.getInput('config'),
 | 
				
			||||||
    buildkitdConfigInline: core.getInput('buildkitd-config-inline') || core.getInput('config-inline'),
 | 
					    buildkitdConfigInline: core.getInput('buildkitd-config-inline') || core.getInput('config-inline'),
 | 
				
			||||||
    append: core.getInput('append'),
 | 
					    append: core.getInput('append'),
 | 
				
			||||||
 | 
					    keepState: core.getBooleanInput('keep-state'),
 | 
				
			||||||
    cacheBinary: core.getBooleanInput('cache-binary'),
 | 
					    cacheBinary: core.getBooleanInput('cache-binary'),
 | 
				
			||||||
    cleanup: core.getBooleanInput('cleanup')
 | 
					    cleanup: core.getBooleanInput('cleanup')
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export async function getBuilderName(driver: string): Promise<string> {
 | 
					export async function getBuilderName(name: string, driver: string): Promise<string> {
 | 
				
			||||||
  return driver == 'docker' ? await Docker.context() : `builder-${crypto.randomUUID()}`;
 | 
					  return driver == 'docker' ? await Docker.context() : name || `builder-${crypto.randomUUID()}`;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export async function getCreateArgs(inputs: Inputs, toolkit: Toolkit): Promise<Array<string>> {
 | 
					export async function getCreateArgs(inputs: Inputs, toolkit: Toolkit): Promise<Array<string>> {
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										55
									
								
								src/main.ts
									
									
									
									
									
								
							
							
						
						
									
										55
									
								
								src/main.ts
									
									
									
									
									
								
							@ -28,6 +28,12 @@ actionsToolkit.run(
 | 
				
			|||||||
    const standalone = await toolkit.buildx.isStandalone();
 | 
					    const standalone = await toolkit.buildx.isStandalone();
 | 
				
			||||||
    stateHelper.setStandalone(standalone);
 | 
					    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 () => {
 | 
					    await core.group(`Docker info`, async () => {
 | 
				
			||||||
      try {
 | 
					      try {
 | 
				
			||||||
        await Docker.printVersion();
 | 
					        await Docker.printVersion();
 | 
				
			||||||
@ -118,22 +124,26 @@ actionsToolkit.run(
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    if (inputs.driver !== 'docker') {
 | 
					    if (inputs.driver !== 'docker') {
 | 
				
			||||||
      await core.group(`Creating a new builder instance`, async () => {
 | 
					      await core.group(`Creating a new builder instance`, async () => {
 | 
				
			||||||
        const certsDriverOpts = Buildx.resolveCertsDriverOpts(inputs.driver, inputs.endpoint, {
 | 
					        if (await toolkit.builder.exists(inputs.name)) {
 | 
				
			||||||
          cacert: process.env[`${context.builderNodeEnvPrefix}_0_AUTH_TLS_CACERT`],
 | 
					          core.info(`Builder ${inputs.name} already exists, skipping creation`);
 | 
				
			||||||
          cert: process.env[`${context.builderNodeEnvPrefix}_0_AUTH_TLS_CERT`],
 | 
					        } else {
 | 
				
			||||||
          key: process.env[`${context.builderNodeEnvPrefix}_0_AUTH_TLS_KEY`]
 | 
					          const certsDriverOpts = Buildx.resolveCertsDriverOpts(inputs.driver, inputs.endpoint, {
 | 
				
			||||||
        });
 | 
					            cacert: process.env[`${context.builderNodeEnvPrefix}_0_AUTH_TLS_CACERT`],
 | 
				
			||||||
        if (certsDriverOpts.length > 0) {
 | 
					            cert: process.env[`${context.builderNodeEnvPrefix}_0_AUTH_TLS_CERT`],
 | 
				
			||||||
          inputs.driverOpts = [...inputs.driverOpts, ...certsDriverOpts];
 | 
					            key: process.env[`${context.builderNodeEnvPrefix}_0_AUTH_TLS_KEY`]
 | 
				
			||||||
        }
 | 
					          });
 | 
				
			||||||
        const createCmd = await toolkit.buildx.getCommand(await context.getCreateArgs(inputs, toolkit));
 | 
					          if (certsDriverOpts.length > 0) {
 | 
				
			||||||
        await Exec.getExecOutput(createCmd.command, createCmd.args, {
 | 
					            inputs.driverOpts = [...inputs.driverOpts, ...certsDriverOpts];
 | 
				
			||||||
          ignoreReturnCode: true
 | 
					 | 
				
			||||||
        }).then(res => {
 | 
					 | 
				
			||||||
          if (res.stderr.length > 0 && res.exitCode != 0) {
 | 
					 | 
				
			||||||
            throw new Error(res.stderr.match(/(.*)\s*$/)?.[0]?.trim() ?? 'unknown error');
 | 
					 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
        });
 | 
					          const createCmd = await toolkit.buildx.getCommand(await context.getCreateArgs(inputs, toolkit));
 | 
				
			||||||
 | 
					          await Exec.getExecOutput(createCmd.command, createCmd.args, {
 | 
				
			||||||
 | 
					            ignoreReturnCode: true
 | 
				
			||||||
 | 
					          }).then(res => {
 | 
				
			||||||
 | 
					            if (res.stderr.length > 0 && res.exitCode != 0) {
 | 
				
			||||||
 | 
					              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`);
 | 
					        throw new Error(`Cannot set buildx as default builder without the Docker CLI`);
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      await core.group(`Setting buildx as default builder`, async () => {
 | 
					      await core.group(`Setting buildx as default builder`, async () => {
 | 
				
			||||||
 | 
					        stateHelper.setBuildxIsDefaultBuilder(true);
 | 
				
			||||||
        const installCmd = await toolkit.buildx.getCommand(['install']);
 | 
					        const installCmd = await toolkit.buildx.getCommand(['install']);
 | 
				
			||||||
        await Exec.getExecOutput(installCmd.command, installCmd.args, {
 | 
					        await Exec.getExecOutput(installCmd.command, installCmd.args, {
 | 
				
			||||||
          ignoreReturnCode: true
 | 
					          ignoreReturnCode: true
 | 
				
			||||||
@ -248,7 +259,7 @@ actionsToolkit.run(
 | 
				
			|||||||
        const buildx = new Buildx({standalone: stateHelper.standalone});
 | 
					        const buildx = new Buildx({standalone: stateHelper.standalone});
 | 
				
			||||||
        const builder = new Builder({buildx: buildx});
 | 
					        const builder = new Builder({buildx: buildx});
 | 
				
			||||||
        if (await builder.exists(stateHelper.builderName)) {
 | 
					        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, {
 | 
					          await Exec.getExecOutput(rmCmd.command, rmCmd.args, {
 | 
				
			||||||
            ignoreReturnCode: true
 | 
					            ignoreReturnCode: true
 | 
				
			||||||
          }).then(res => {
 | 
					          }).then(res => {
 | 
				
			||||||
@ -279,5 +290,17 @@ actionsToolkit.run(
 | 
				
			|||||||
        fs.rmSync(stateHelper.certsDir, {recursive: true});
 | 
					        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 certsDir = process.env['STATE_certsDir'] || '';
 | 
				
			||||||
export const tmpDockerContext = process.env['STATE_tmpDockerContext'] || '';
 | 
					export const tmpDockerContext = process.env['STATE_tmpDockerContext'] || '';
 | 
				
			||||||
export const cleanup = /true/i.test(process.env['STATE_cleanup'] || '');
 | 
					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) {
 | 
					export function setDebug(debug: string) {
 | 
				
			||||||
  core.saveState('isDebug', debug);
 | 
					  core.saveState('isDebug', debug);
 | 
				
			||||||
@ -40,3 +42,11 @@ export function setTmpDockerContext(tmpDockerContext: string) {
 | 
				
			|||||||
export function setCleanup(cleanup: boolean) {
 | 
					export function setCleanup(cleanup: boolean) {
 | 
				
			||||||
  core.saveState('cleanup', cleanup);
 | 
					  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