Sven
Sven

Reputation: 2515

Getting ValidationError(Deployment): unknown field "env"

I'm trying to set up a manifest with specifying the ASPNETCORE_ENVIRONMENT env variable:

kubectl version 1.18.10

kind: Deployment
apiVersion: apps/v1
metadata:
  name: $(appName)
  labels:
    app: $(appName)
spec:
  replicas: 2
  selector:
    matchLabels:
      app: $(appName)
  template:
    metadata:
      labels:
        app: $(appName)
    spec:
      containers:
        - name: $(appName)
          image: xxx.azurecr.io/xxx:$(Build.BuildId)
          ports:
          - name: http
            containerPort: 80
            protocol: TCP
          env:
          - name: ASPNETCORE_ENVIRONMENT
            value: Staging

However it's not working, validation tells me:

 ##[error]error: error validating "/home/vsts/work/_temp/Deployment_xxx6_1610541107518": error validating data: ValidationError(Deployment): unknown field "env" in io.k8s.api.apps.v1.Deployment; if you choose to ignore these errors, turn validation off with --validate=false

I'm using Azure Devops Release Pipeline Powershell Task "Generate Kubernetes Manifest file".

Upvotes: 3

Views: 2570

Answers (1)

Sven
Sven

Reputation: 2515

Ok it must've been wrong formatting or indentation. The following file is working now:

kind: Deployment
apiVersion: apps/v1
metadata:
  name: $(appName)
  labels:
    app: $(appName)
spec:
  replicas: 2
  selector:
    matchLabels:
      app: $(appName)
  template:
    metadata:
      labels:
        app: $(appName)
    spec:
      containers:
      - name: $(appName)
        image: xxx.azurecr.io/xxx:$(Build.BuildId)
        ports:
        - containerPort: 80
        env:
        - name: ASPNETCORE_ENVIRONMENT
          value: Staging

Upvotes: 4

Related Questions