替换配置文件中的环境变量
1.背景
k8s配置文件中,由于每次构建镜像的版本都会变,所以image后的version每次都要修改,所以最后设置成动态的形式的。
2.配置文件
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: nginx
spec:
replicas: 1
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: app
image: app:$VERSION
ports:
- containerPort: 80
当通过jenkins构建时可以通过全局环境变量,BUILD_ID来作为版本
sh 'version = $BUILD_ID && envsubst < deployment.yaml | kubectl apply -f -'