kubectl plugin.
Create a ConfigMap and a Job. And after the job is complete, delete them.
brew install miyamo2/tap/kubectl-create-transient_configmapgo install github.com/miyamo2/kubectl-create-transient_configmap@latestManifest
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: Nevercommand
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