Skip to content

Commit c2a1b67

Browse files
committed
feat: support build-contexts for docker build
1 parent 574f29a commit c2a1b67

File tree

4 files changed

+32
-5
lines changed

4 files changed

+32
-5
lines changed

container-scan/README.md

+2
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,10 @@ To use this action in your GitHub Actions workflow, include the following steps:
4040
| image-tag | Docker image tag | `true` | |
4141
| image-platform | Target platform to build image for (eg. linux/amd64 (default), linux/arm64, etc) | `false` | linux/amd64 |
4242
| build-args | List of build arguments for docker build as key-value pairs (e.g., KEY=VALUE) | `false` | |
43+
| build-contexts | List of additional build contexts (e.g., name=path) | `false` | |
4344
| secrets | List of secrets for docker build as key-value pairs (e.g., SECRET_KEY=VALUE) | `false` | |
4445
| enable-docker-build | Docker image tag | `false` | true |
46+
| image-tags | List of tags as key-value pair attributes | `false` | |
4547
<!-- action-docs-inputs -->
4648

4749
<!-- action-docs-outputs -->

container-scan/action.yaml

+9-1
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,14 @@ inputs:
3333
description: Target platform to build image for (eg. linux/amd64 (default), linux/arm64, etc)
3434
required: false
3535
default: linux/amd64
36-
3736
build-args:
3837
required: false
3938
description: List of build arguments for docker build as key-value pairs (e.g., KEY=VALUE)
4039
default: ""
40+
build-contexts:
41+
required: false
42+
description: List of additional build contexts (e.g., name=path)
43+
default: ""
4144
secrets:
4245
required: false
4346
description: List of secrets for docker build as key-value pairs (e.g., SECRET_KEY=VALUE)
@@ -46,6 +49,10 @@ inputs:
4649
required: false
4750
default: true
4851
description: Docker image tag
52+
image-tags:
53+
required: false
54+
description: List of tags as key-value pair attributes
55+
default: ""
4956

5057
outputs:
5158
comment-id:
@@ -74,6 +81,7 @@ runs:
7481
type=ref,event=branch
7582
type=ref,event=pr
7683
build-args: ${{ inputs.build-args }}
84+
build-contexts: ${{ inputs.build-contexts }}
7785
secrets: ${{ inputs.secrets }}
7886

7987
- name: "Determining image name"

docker-build/README.md

+10-2
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@ steps:
5151
type=semver,pattern={{version}},value=${{ steps.release.outputs.new-release-version }}
5252
```
5353
54-
#### Dynamically input multiple build arguments and secrets:
54+
#### Dynamically input multiple build arguments, contexts and secrets:
5555
56-
If you want to pass multiple build arguments and secrets, you can use the `build-args` and `secrets` input parameters.
56+
If you want to pass multiple build arguments and secrets, you can use the `build-args`, `build-contexts` and `secrets` input parameters.
5757

5858
```yaml
5959
steps:
@@ -71,9 +71,15 @@ steps:
7171
dockerhub-password: ${{ secrets.DOCKER_PASSWORD }}
7272
github-token: ${{ secrets.GITHUB_TOKEN }}
7373
image-version: ${{ steps.release.outputs.new-release-version }}
74+
image-tags: |
75+
tag1=value1
76+
tag2=value2
7477
build-args: |
7578
KEY1=VALUE1
7679
KEY2=VALUE2
80+
build-contexts: |
81+
context1=PATH1
82+
context2=PATH2
7783
secrets: |
7884
SECRET_KEY1=SECRET_VALUE1
7985
SECRET_KEY2=SECRET_VALUE2
@@ -98,7 +104,9 @@ steps:
98104
| push | Do you want to push the image to the registry | `false` | false |
99105
| load | Do you want to load the single-platform build result to docker images | `false` | true |
100106
| build-args | List of build arguments as key-value pairs (e.g., KEY=VALUE) | `false` | |
107+
| build-contexts | List of additional build contexts (e.g., name=path) | `false` | |
101108
| secrets | List of secrets as key-value pairs (e.g., SECRET_KEY=VALUE) | `false` | |
109+
| image-tags | List of tags as key-value pair attributes | `false` | |
102110

103111
## Outputs
104112

docker-build/action.yaml

+11-2
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,19 @@ inputs:
3737
required: false
3838
description: List of build arguments as key-value pairs (e.g., KEY=VALUE)
3939
default: ""
40+
build-contexts:
41+
required: false
42+
description: List of additional build contexts (e.g., name=path)
43+
default: ""
4044
secrets:
4145
required: false
4246
description: List of secrets as key-value pairs (e.g., SECRET_KEY=VALUE)
4347
default: ""
48+
image-tags:
49+
required: false
50+
description: List of tags as key-value pair attributes
51+
default: ""
52+
4453
outputs:
4554
image-name:
4655
description: Docker image name
@@ -113,5 +122,5 @@ runs:
113122
load: ${{ inputs.load }}
114123
tags: ${{ steps.config.outputs.image-name }}:${{ inputs.image-version }}
115124
labels: ${{ steps.meta.outputs.labels }}
116-
secrets: |
117-
${{ inputs.secrets }}
125+
secrets: ${{ inputs.secrets }}
126+
build-contexts: ${{ inputs.build-contexts }}

0 commit comments

Comments
 (0)