kubectl plugin.
Create a ConfigMap and a Job. And after the job is complete, delete them.
brew install miyamo2/tap/kubectl-create-transient_configmap
go install github.com/miyamo2/kubectl-create-transient_configmap@latest
Manifest
apiVersion: batch/v1
kind: CronJob
metadata:
name: foo-batch
spec:
timeZone: "Asia/Tokyo"
schedule: "0 0 * * *"
startingDeadlineSeconds: 100
jobTemplate:
spec:
completions: 1
parallelism: 1
backoffLimit: 0
template:
spec:
containers:
- name: foo-batch
image: e2e:latest
imagePullPolicy: Never
env:
- name: NUM
valueFrom:
configMapKeyRef:
name: foo-configmap
key: num
optional: true
restartPolicy: Never
command
kubectl create transient_configmap foo-configmap --from-literal=num=1 --job-name=test-job --job-from=cronjob/foo-batch
name | description |
---|---|
from-env-file |
Specify the path to a file to read lines of key=val pairs to create a configmap. |
from-file |
Key file can be specified using its file path, in which case file basename will be used as configmap key, or optionally with a key and file path, in which case the given key will be used. Specifying a directory will iterate each named file in the directory whose basename is a valid configmap key. |
from-literal |
Specify a key and literal value to insert in configmap (i.e. mykey=somevalue) |
job-name |
Name of job to be created. required. |
job-from |
The name of the resource to create a Job from (only cronjob is supported). |
job-image |
Image name to run. |
Feel free to open a PR or an Issue.
However, you must promise to follow our Code of Conduct.
kubectl-create-transient_configmap released under the MIT License