Skip to content

kubectl plugin; Create a ConfigMap and a Job. And after the job is complete, delete them.

License

Notifications You must be signed in to change notification settings

miyamo2/kubectl-create-transient_configmap

Repository files navigation

kubectl-create-transient_configmap

CI GitHub release (latest by date) Go Report Card GitHub License

kubectl plugin.
Create a ConfigMap and a Job. And after the job is complete, delete them.

Quick Start

Install

With homebrew

brew install miyamo2/tap/kubectl-create-transient_configmap

With go install

go install github.com/miyamo2/kubectl-create-transient_configmap@latest

Simple Usage

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

Features

Flags

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.

Contributing

Feel free to open a PR or an Issue.
However, you must promise to follow our Code of Conduct.

License

kubectl-create-transient_configmap released under the MIT License