{
   "apiVersion": "v1",
   "items": [
      {
         "apiVersion": "v1",
         "data": {
            "foo_key": "bar_val"
         },
         "kind": "ConfigMap",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-config"
            },
            "name": "foo-config",
            "namespace": "foons"
         }
      },
      {
         "apiVersion": "batch/v1beta1",
         "kind": "CronJob",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-cronjob"
            },
            "name": "foo-cronjob",
            "namespace": "foons"
         },
         "spec": {
            "concurrencyPolicy": "Forbid",
            "failedJobsHistoryLimit": 20,
            "jobTemplate": {
               "spec": {
                  "completions": 1,
                  "parallelism": 1,
                  "template": {
                     "metadata": {
                        "labels": {
                           "name": "foo-cronjob"
                        }
                     },
                     "spec": {
                        "containers": [
                           {
                              "args": [ ],
                              "env": [ ],
                              "image": "busybox",
                              "imagePullPolicy": "IfNotPresent",
                              "name": "foo",
                              "ports": [ ],
                              "stdin": false,
                              "tty": false,
                              "volumeMounts": [ ]
                           }
                        ],
                        "imagePullSecrets": [ ],
                        "initContainers": [ ],
                        "restartPolicy": "OnFailure",
                        "terminationGracePeriodSeconds": 30,
                        "volumes": [ ]
                     }
                  }
               }
            },
            "schedule": "0 * * * *",
            "successfulJobsHistoryLimit": 10
         }
      },
      {
         "apiVersion": "apps/v1",
         "kind": "Deployment",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-deploy"
            },
            "name": "foo-deploy",
            "namespace": "foons"
         },
         "spec": {
            "minReadySeconds": 30,
            "replicas": 1,
            "revisionHistoryLimit": 10,
            "selector": {
               "matchLabels": {
                  "name": "foo-deploy"
               }
            },
            "strategy": {
               "rollingUpdate": {
                  "maxSurge": "25%",
                  "maxUnavailable": "25%"
               },
               "type": "RollingUpdate"
            },
            "template": {
               "metadata": {
                  "annotations": { },
                  "labels": {
                     "name": "foo-deploy"
                  }
               },
               "spec": {
                  "containers": [
                     {
                        "args": [ ],
                        "env": [
                           {
                              "name": "my_secret",
                              "valueFrom": {
                                 "secretKeyRef": {
                                    "key": "sec_key",
                                    "name": "foo-secret"
                                 }
                              }
                           }
                        ],
                        "image": "nginx:1.12",
                        "imagePullPolicy": "IfNotPresent",
                        "name": "foo",
                        "ports": [
                           {
                              "containerPort": 80,
                              "name": "http"
                           },
                           {
                              "containerPort": 888,
                              "name": "udp-port",
                              "protocol": "UDP"
                           }
                        ],
                        "stdin": false,
                        "tty": false,
                        "volumeMounts": [
                           {
                              "mountPath": "/config",
                              "name": "config-vol"
                           }
                        ]
                     }
                  ],
                  "imagePullSecrets": [ ],
                  "initContainers": [ ],
                  "serviceAccountName": "foo-sa",
                  "terminationGracePeriodSeconds": 30,
                  "volumes": [
                     {
                        "configMap": {
                           "name": "foo-config"
                        },
                        "name": "config-vol"
                     }
                  ]
               }
            }
         }
      },
      {
         "apiVersion": "apps/v1",
         "kind": "DaemonSet",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-ds"
            },
            "name": "foo-ds",
            "namespace": "foons"
         },
         "spec": {
            "selector": {
               "matchLabels": {
                  "name": "foo-ds"
               }
            },
            "template": {
               "metadata": {
                  "annotations": { },
                  "labels": {
                     "name": "foo-ds"
                  }
               },
               "spec": {
                  "containers": [
                     {
                        "args": [ ],
                        "env": [
                           {
                              "name": "my_secret",
                              "valueFrom": {
                                 "secretKeyRef": {
                                    "key": "sec_key",
                                    "name": "foo-secret"
                                 }
                              }
                           }
                        ],
                        "image": "nginx:1.12",
                        "imagePullPolicy": "IfNotPresent",
                        "name": "foo",
                        "ports": [
                           {
                              "containerPort": 80,
                              "name": "http"
                           },
                           {
                              "containerPort": 888,
                              "name": "udp-port",
                              "protocol": "UDP"
                           }
                        ],
                        "stdin": false,
                        "tty": false,
                        "volumeMounts": [
                           {
                              "mountPath": "/config",
                              "name": "config-vol"
                           }
                        ]
                     }
                  ],
                  "imagePullSecrets": [ ],
                  "initContainers": [ ],
                  "terminationGracePeriodSeconds": 30,
                  "volumes": [
                     {
                        "configMap": {
                           "name": "foo-config"
                        },
                        "name": "config-vol"
                     }
                  ]
               }
            },
            "updateStrategy": {
               "rollingUpdate": {
                  "maxUnavailable": 1
               },
               "type": "RollingUpdate"
            }
         }
      },
      {
         "apiVersion": "extensions/v1beta1",
         "kind": "Ingress",
         "metadata": {
            "annotations": {
               "certmanager.k8s.io/acme-challenge-type": "dns01",
               "certmanager.k8s.io/acme-dns01-provider": "default",
               "certmanager.k8s.io/cluster-issuer": "letsencrypt-prod-dns"
            },
            "labels": {
               "name": "foo-ingress"
            },
            "name": "foo-ingress",
            "namespace": "foons"
         },
         "spec": {
            "rules": [
               {
                  "host": "foo.g.dev.bitnami.net",
                  "http": {
                     "paths": [
                        {
                           "backend": {
                              "serviceName": "foo-svc",
                              "servicePort": 80
                           },
                           "path": "/"
                        }
                     ]
                  }
               }
            ],
            "tls": [
               {
                  "hosts": [
                     "foo.g.dev.bitnami.net"
                  ],
                  "secretName": "foo-ingress-cert"
               }
            ]
         }
      },
      {
         "apiVersion": "batch/v1",
         "kind": "Job",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-job"
            },
            "name": "foo-job",
            "namespace": "foons"
         },
         "spec": {
            "completions": 1,
            "parallelism": 1,
            "template": {
               "metadata": {
                  "labels": {
                     "name": "foo-job"
                  }
               },
               "spec": {
                  "containers": [
                     {
                        "args": [ ],
                        "env": [ ],
                        "image": "busybox",
                        "imagePullPolicy": "IfNotPresent",
                        "name": "foo",
                        "ports": [ ],
                        "stdin": false,
                        "tty": false,
                        "volumeMounts": [ ]
                     }
                  ],
                  "imagePullSecrets": [ ],
                  "initContainers": [ ],
                  "restartPolicy": "OnFailure",
                  "terminationGracePeriodSeconds": 30,
                  "volumes": [ ]
               }
            }
         }
      },
      {
         "apiVersion": "v1",
         "kind": "Namespace",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foons"
            },
            "name": "foons"
         }
      },
      {
         "apiVersion": "networking.k8s.io/v1",
         "kind": "NetworkPolicy",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-nsp-pods"
            },
            "name": "foo-nsp-pods",
            "namespace": "foons"
         },
         "spec": {
            "egress": [
               {
                  "ports": [
                     {
                        "port": 53,
                        "protocol": "UDP"
                     }
                  ],
                  "to": [
                     {
                        "namespaceSelector": {
                           "matchLabels": {
                              "name": "kube-system"
                           }
                        }
                     }
                  ]
               },
               {
                  "ports": [
                     {
                        "port": 80,
                        "protocol": "TCP"
                     },
                     {
                        "port": 888,
                        "protocol": "UDP"
                     }
                  ],
                  "to": [
                     {
                        "podSelector": {
                           "matchLabels": {
                              "name": "foo-sts"
                           }
                        }
                     }
                  ]
               }
            ],
            "ingress": [
               {
                  "from": [
                     {
                        "podSelector": {
                           "matchLabels": {
                              "name": "foo-job"
                           }
                        }
                     },
                     {
                        "podSelector": {
                           "matchLabels": {
                              "name": "foo-cronjob"
                           }
                        }
                     },
                     {
                        "namespaceSelector": {
                           "matchLabels": {
                              "name": "nginx-ingress"
                           }
                        }
                     }
                  ],
                  "ports": [
                     {
                        "port": 80,
                        "protocol": "TCP"
                     },
                     {
                        "port": 888,
                        "protocol": "UDP"
                     }
                  ]
               }
            ],
            "podSelector": {
               "matchLabels": {
                  "name": "foo-deploy"
               }
            },
            "policyTypes": [
               "Ingress",
               "Egress"
            ]
         }
      },
      {
         "apiVersion": "v1",
         "kind": "Pod",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-pod"
            },
            "name": "foo-pod",
            "namespace": "foons"
         },
         "spec": {
            "containers": [
               {
                  "args": [ ],
                  "env": [
                     {
                        "name": "my_secret",
                        "valueFrom": {
                           "secretKeyRef": {
                              "key": "sec_key",
                              "name": "foo-secret"
                           }
                        }
                     }
                  ],
                  "image": "nginx:1.12",
                  "imagePullPolicy": "IfNotPresent",
                  "name": "foo",
                  "ports": [
                     {
                        "containerPort": 80,
                        "name": "http"
                     },
                     {
                        "containerPort": 888,
                        "name": "udp-port",
                        "protocol": "UDP"
                     }
                  ],
                  "stdin": false,
                  "tty": false,
                  "volumeMounts": [
                     {
                        "mountPath": "/config",
                        "name": "config-vol"
                     }
                  ]
               }
            ],
            "imagePullSecrets": [ ],
            "initContainers": [ ],
            "terminationGracePeriodSeconds": 30,
            "volumes": [
               {
                  "configMap": {
                     "name": "foo-config"
                  },
                  "name": "config-vol"
               }
            ]
         }
      },
      {
         "apiVersion": "rbac.authorization.k8s.io/v1",
         "kind": "Role",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-role"
            },
            "name": "foo-role",
            "namespace": "foons"
         },
         "rules": [
            {
               "apiGroups": [
                  ""
               ],
               "resources": [
                  "pods",
                  "secrets",
                  "configmaps",
                  "persistentvolumeclaims"
               ],
               "verbs": [
                  "get"
               ]
            },
            {
               "apiGroups": [
                  ""
               ],
               "resources": [
                  "pods"
               ],
               "verbs": [
                  "patch"
               ]
            }
         ]
      },
      {
         "apiVersion": "rbac.authorization.k8s.io/v1",
         "kind": "RoleBinding",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-rolebinding"
            },
            "name": "foo-rolebinding",
            "namespace": "foons"
         },
         "roleRef": {
            "apiGroup": "rbac.authorization.k8s.io",
            "kind": "Role",
            "name": "foo-role"
         },
         "subjects": [
            {
               "kind": "ServiceAccount",
               "name": "foo-sa",
               "namespace": "foons"
            }
         ]
      },
      {
         "apiVersion": "v1",
         "kind": "ServiceAccount",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-sa"
            },
            "name": "foo-sa",
            "namespace": "foons"
         }
      },
      {
         "apiVersion": "v1",
         "data": {
            "sec_key": "c2VjcmV0Cg=="
         },
         "kind": "Secret",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-secret"
            },
            "name": "foo-secret",
            "namespace": "foons"
         },
         "type": "Opaque"
      },
      {
         "apiVersion": "v1",
         "kind": "Service",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-svc"
            },
            "name": "foo-svc",
            "namespace": "foons"
         },
         "spec": {
            "ports": [
               {
                  "port": 80,
                  "targetPort": 80
               }
            ],
            "selector": {
               "name": "foo-deploy"
            },
            "type": "ClusterIP"
         }
      },
      {
         "apiVersion": "apps/v1",
         "kind": "StatefulSet",
         "metadata": {
            "annotations": { },
            "labels": {
               "name": "foo-sts"
            },
            "name": "foo-sts",
            "namespace": "foons"
         },
         "spec": {
            "replicas": 1,
            "selector": {
               "matchLabels": {
                  "name": "foo-sts"
               }
            },
            "serviceName": "foo-sts",
            "template": {
               "metadata": {
                  "annotations": { },
                  "labels": {
                     "name": "foo-sts"
                  }
               },
               "spec": {
                  "containers": [
                     {
                        "args": [ ],
                        "env": [
                           {
                              "name": "my_secret",
                              "valueFrom": {
                                 "secretKeyRef": {
                                    "key": "sec_key",
                                    "name": "foo-secret"
                                 }
                              }
                           }
                        ],
                        "image": "nginx:1.12",
                        "imagePullPolicy": "IfNotPresent",
                        "name": "foo",
                        "ports": [
                           {
                              "containerPort": 80,
                              "name": "http"
                           },
                           {
                              "containerPort": 888,
                              "name": "udp-port",
                              "protocol": "UDP"
                           }
                        ],
                        "stdin": false,
                        "tty": false,
                        "volumeMounts": [
                           {
                              "mountPath": "/config",
                              "name": "config-vol"
                           },
                           {
                              "mountPath": "/foo/data",
                              "name": "datadir"
                           }
                        ]
                     }
                  ],
                  "imagePullSecrets": [ ],
                  "initContainers": [ ],
                  "serviceAccountName": "foo-sa",
                  "terminationGracePeriodSeconds": 30,
                  "volumes": [
                     {
                        "configMap": {
                           "name": "foo-config"
                        },
                        "name": "config-vol"
                     }
                  ]
               }
            },
            "updateStrategy": {
               "rollingUpdate": {
                  "partition": 0
               },
               "type": "RollingUpdate"
            },
            "volumeClaimTemplates": [
               {
                  "metadata": {
                     "labels": {
                        "name": "datadir"
                     },
                     "name": "datadir",
                     "namespace": "foons"
                  },
                  "spec": {
                     "accessModes": [
                        "ReadWriteOnce"
                     ],
                     "resources": {
                        "requests": {
                           "storage": "10Gi"
                        }
                     }
                  }
               }
            ]
         }
      }
   ],
   "kind": "List"
}
