我有一个 cronjob 掌舵聊天,我可以在 values.yaml 中定义许多工作,cronjob.yaml 将提供我的工作。我在命令行中设置图像标签 ID 时遇到了一个问题,下面的命令不会抛出任何错误,但它不会将作业图像标签更新为新的。
helm upgrade cronjobs cronjobs/ --wait --set job.myservice.image.tag=b70d744
Run Code Online (Sandbox Code Playgroud)
cronjobs 将使用旧图像标签运行,我该如何解决这个问题?
这是我的 cronjobs.yaml
{{- $chart_name := .Chart.Name }}
{{- $chart_version := .Chart.Version | replace "+" "_" }}
{{- $release_name := .Release.Name }}
{{- range $job := .Values.jobs }}
---
apiVersion: batch/v1beta1
kind: CronJob
metadata:
namespace: "{{ $job.namespace }}"
name: "{{ $release_name }}-{{ $job.name }}"
labels:
chart: "{{ $chart_name }}-{{ $chart_version }}"
spec:
concurrencyPolicy: {{ $job.concurrencyPolicy }}
failedJobsHistoryLimit: {{ $job.failedJobsHistoryLimit }}
suspend: {{ $job.suspend }} …Run Code Online (Sandbox Code Playgroud) 我在kubernetes中运行cron作业,作业成功完成,我将输出记录到日志文件内部(路径:存储/日志),但是由于容器已完成而无法访问该文件,这是我的工作Yaml。
apiVersion: v1
items:
- apiVersion: batch/v1beta1
kind: CronJob
metadata:
labels:
chart: cronjobs-0.1.0
name: cron-cronjob1
namespace: default
spec:
concurrencyPolicy: Forbid
failedJobsHistoryLimit: 1
jobTemplate:
spec:
template:
metadata:
labels:
app: cron
cron: cronjob1
spec:
containers:
- args:
- /usr/local/bin/php
- -c
- /var/www/html/artisan bulk:import
env:
- name: DB_CONNECTION
value: postgres
- name: DB_HOST
value: postgres
- name: DB_PORT
value: "5432"
- name: DB_DATABASE
value: xxx
- name: DB_USERNAME
value: xxx
- name: DB_PASSWORD
value: xxxx
- name: APP_KEY
value: xxxxx
image: registry.xxxxx.com/xxxx:2ecb785-e927977 …Run Code Online (Sandbox Code Playgroud) 我想从逗号分隔的字符串创建一个列表以传递给 ansible 中的循环,有时变量也只能有一个值
var1=test1,test2 也可以是 var1=test1
这是我的代码
- name: Separate facts
set_fact: groups="{{ var1.split(',') }}"
- name: delete
gcp_compute_instance_group:
name: "{{ item }}"
zone: xxx
project: xxx
auth_kind: serviceaccount
service_account_file: xxx
state: absent
loop: "{{ groups }}"
Run Code Online (Sandbox Code Playgroud)
这不起作用,我怎样才能达到我的要求