...

Source file src/sigs.k8s.io/cli-utils/test/e2e/artifacts_test.go

Documentation: sigs.k8s.io/cli-utils/test/e2e

     1  // Copyright 2020 The Kubernetes Authors.
     2  // SPDX-License-Identifier: Apache-2.0
     3  
     4  package e2e
     5  
     6  import (
     7  	"strings"
     8  )
     9  
    10  var deployment1 = []byte(strings.TrimSpace(`
    11  apiVersion: apps/v1
    12  kind: Deployment
    13  metadata:
    14    name: nginx-deployment
    15  spec:
    16    replicas: 4
    17    selector:
    18      matchLabels:
    19        app: nginx
    20    template:
    21      metadata:
    22        labels:
    23          app: nginx
    24      spec:
    25        containers:
    26        - name: nginx
    27          image: nginx:1.19.6
    28          ports:
    29          - containerPort: 80
    30  `))
    31  
    32  var apiservice1 = []byte(strings.TrimSpace(`
    33  apiVersion: apiregistration.k8s.io/v1
    34  kind: APIService
    35  metadata:
    36    name: v1beta1.custom.metrics.k8s.io
    37  spec:
    38    insecureSkipTLSVerify: true
    39    group: custom.metrics.k8s.io
    40    groupPriorityMinimum: 100
    41    versionPriority: 100
    42    service:
    43      name: custom-metrics-stackdriver-adapter
    44      namespace: custom-metrics
    45    version: v1beta1
    46  `))
    47  
    48  var invalidCrd = []byte(strings.TrimSpace(`
    49  apiVersion: apiextensions.k8s.io/v1
    50  kind: CustomResourceDefinition
    51  metadata:
    52    name: invalidexamples.cli-utils.example.io
    53  spec:
    54    conversion:
    55      strategy: None
    56    group: cli-utils.example.io
    57    names:
    58      kind: InvalidExample
    59      listKind: InvalidExampleList
    60      plural: invalidexamples
    61      singular: invalidexample
    62    scope: Cluster
    63  `))
    64  
    65  var pod1 = []byte(strings.TrimSpace(`
    66  kind: Pod
    67  apiVersion: v1
    68  metadata:
    69    name: pod1
    70  spec:
    71    containers:
    72    - name: kubernetes-pause
    73      image: k8s.gcr.io/pause:2.0
    74  `))
    75  
    76  var pod2 = []byte(strings.TrimSpace(`
    77  kind: Pod
    78  apiVersion: v1
    79  metadata:
    80    name: pod2
    81  spec:
    82    containers:
    83    - name: kubernetes-pause
    84      image: k8s.gcr.io/pause:2.0
    85  `))
    86  
    87  var pod3 = []byte(strings.TrimSpace(`
    88  kind: Pod
    89  apiVersion: v1
    90  metadata:
    91    name: pod3
    92  spec:
    93    containers:
    94    - name: kubernetes-pause
    95      image: k8s.gcr.io/pause:2.0
    96  `))
    97  
    98  var podATemplate = `
    99  kind: Pod
   100  apiVersion: v1
   101  metadata:
   102    name: pod-a
   103    namespace: {{.Namespace}}
   104    annotations:
   105      config.kubernetes.io/apply-time-mutation: |
   106        - sourceRef:
   107            kind: Pod
   108            name: pod-b
   109            namespace: {{.Namespace}}
   110          sourcePath: $.status.podIP
   111          targetPath: $.spec.containers[?(@.name=="nginx")].env[?(@.name=="SERVICE_HOST")].value
   112          token: ${pob-b-ip}
   113        - sourceRef:
   114            kind: Pod
   115            name: pod-b
   116            namespace: {{.Namespace}}
   117          sourcePath: $.spec.containers[?(@.name=="nginx")].ports[?(@.name=="tcp")].containerPort
   118          targetPath: $.spec.containers[?(@.name=="nginx")].env[?(@.name=="SERVICE_HOST")].value
   119          token: ${pob-b-port}
   120  spec:
   121    containers:
   122    - name: nginx
   123      image: nginx:1.21
   124      ports:
   125      - name: tcp
   126        containerPort: 80
   127      env:
   128      - name: SERVICE_HOST
   129        value: "${pob-b-ip}:${pob-b-port}"
   130  `
   131  
   132  var podBTemplate = `
   133  kind: Pod
   134  apiVersion: v1
   135  metadata:
   136    name: pod-b
   137    namespace: {{.Namespace}}
   138  spec:
   139    containers:
   140    - name: nginx
   141      image: nginx:1.21
   142      ports:
   143      - name: tcp
   144        containerPort: 80
   145  `
   146  
   147  var invalidMutationPodBTemplate = `
   148  kind: Pod
   149  apiVersion: v1
   150  metadata:
   151    name: pod-b
   152    namespace: {{.Namespace}}
   153    annotations:
   154      config.kubernetes.io/apply-time-mutation: |
   155        - sourceRef:
   156            kind: Pod
   157            name: pod-a # cyclic dependency
   158            namespace: {{.Namespace}}
   159          sourcePath: $.status.podIP
   160          targetPath: $.spec.containers[?(@.name=="nginx")].env[?(@.name=="SERVICE_HOST")].value
   161          token: ${pob-b-ip}
   162        - sourceRef:
   163            kind: Pod
   164            name: pod-a
   165            namespace: "" # empty namespace on a namespaced type
   166          sourcePath: $.spec.containers[?(@.name=="nginx")].ports[?(@.name=="tcp")].containerPort
   167          targetPath: $.spec.containers[?(@.name=="nginx")].env[?(@.name=="SERVICE_HOST")].value
   168          token: ${pob-b-port}
   169  spec:
   170    containers:
   171    - name: nginx
   172      image: nginx:1.21
   173      ports:
   174      - name: tcp
   175        containerPort: 80
   176      env:
   177      - name: SERVICE_HOST
   178        value: "${pob-b-ip}:${pob-b-port}"
   179  `
   180  
   181  var invalidPodTemplate = `
   182  kind: Pod
   183  apiVersion: v1
   184  metadata:
   185    # missing name
   186    namespace: {{.Namespace}}
   187  spec:
   188    containers:
   189    - name: nginx
   190      image: nginx:1.21
   191      ports:
   192      - name: tcp
   193        containerPort: 80
   194  `
   195  
   196  var namespaceTemplate = `
   197  apiVersion: v1
   198  kind: Namespace
   199  metadata:
   200    name: {{.Namespace}}
   201  `
   202  

View as plain text