Commit 4a15c9e0 authored by Christopher Harm's avatar Christopher Harm

Adding nginx-ingress for kind provider

parent f7b08b72
Pipeline #90310 passed with stages
in 55 seconds
......@@ -15,7 +15,9 @@
package cmd
import (
"bytes"
"fmt"
"html/template"
"io/ioutil"
"log"
"os"
......@@ -26,6 +28,7 @@ import (
"git.psu.edu/k8s/devtool/environment"
"github.com/fatih/color"
"github.com/markbates/pkger"
"github.com/spf13/cobra"
"github.com/spf13/viper"
)
......@@ -40,16 +43,7 @@ var startCmd = &cobra.Command{
}
const (
helmVersionTwoTag = "SemVer"
kindConfigTemplate = `kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
image: kindest/node:%s
`
kindConfigWorkerTemplate = `- role: worker
image: kindest/node:%s
`
helmVersionTwoTag = "SemVer"
)
func init() {
......@@ -157,7 +151,7 @@ func start() {
if !kindRunning() {
k8sVersion := viper.GetString("kind.k8s.version") //"v1.15.7"
kindWorkers := uint(viper.GetInt("kind.workers"))
args := []string{"create", "cluster", "--name", clusterName}
if k8sVersion != "" {
file, err := ioutil.TempFile("/tmp", "devtool")
......@@ -166,13 +160,47 @@ func start() {
}
defer os.Remove(file.Name())
config := fmt.Sprintf(kindConfigTemplate, k8sVersion)
for i := 0; i < viper.GetInt("kind.workers"); i++ {
config += fmt.Sprintf(kindConfigWorkerTemplate, k8sVersion)
pkger.Include("/templates/kind-config.yaml")
kindConfigTemplate, err := readPkgedFile("/templates/kind-config.yaml")
if err != nil {
color.New(color.FgRed).Printf("Error reading kind template file: %v\n", err)
return
}
templateData := struct {
Version string
NumWorkers *uint
}{
k8sVersion,
&kindWorkers,
}
funcs := template.FuncMap{
"Iterate": func(count *uint) []uint {
var i uint
var Items []uint
for i = 0; i < (*count); i++ {
Items = append(Items, i)
}
return Items
},
}
t, err := template.New("kindConfig").Funcs(funcs).Parse(kindConfigTemplate)
if err != nil {
color.New(color.FgRed).Printf("Error processing kind template: %v\n", err)
return
}
var buf bytes.Buffer
err = t.Execute(&buf, templateData)
if err != nil {
color.New(color.FgRed).Printf("Error executing kind template: %v\n", err)
return
}
config := buf.String()
_, err = file.WriteString(config)
if err != nil {
color.New(color.FgRed).Printf("Failed to write kind config file: %v", err)
color.New(color.FgRed).Printf("Failed to write kind config file: %v\n", err)
}
color.Blue("Using kind config: ")
......@@ -194,6 +222,10 @@ func start() {
checkIfSwaggerUiInstalled()
if kindProvider() {
checkIfNginxIngressInstalled()
}
}
func helmVersion2() bool {
......@@ -358,22 +390,82 @@ func checkInstallTiller() {
func checkIfSwaggerUiInstalled() {
color.Blue("Checking if Swagger UI is installed.")
helmReleases := environment.RunAndGetOutputRequired("helm", "ls", "--all", "--short")
swaggerInstalled := false
installed := helmReleaseInstalled("swagger-ui")
for _, releaseName := range helmReleases {
if releaseName == "swagger-ui" {
swaggerInstalled = true
break
if !installed {
if helmVersion2() {
environment.RunRequired(true, "helm", "install", "--name", "swagger-ui", "cm/swagger-ui")
} else {
environment.RunRequired(true, "helm", "install", "swagger-ui", "cm/swagger-ui")
}
}
}
func checkIfNginxIngressInstalled() {
color.Blue("Checking if nginx-ingress is installed.")
installed := helmReleaseInstalled("nginx-ingress")
if !installed {
file, err := ioutil.TempFile("/tmp", "devtool")
if err != nil {
log.Fatal(err)
}
defer os.Remove(file.Name())
pkger.Include("/templates/nginx-ingress-values.yaml")
nginxConfig, err := readPkgedFile("/templates/nginx-ingress-values.yaml")
if err != nil {
color.New(color.FgRed).Printf("Error reading nginx ingress values file: %v", err)
return
}
_, err = file.WriteString(nginxConfig)
if err != nil {
color.New(color.FgRed).Printf("Failed to write nginx values file: %v", err)
}
if !swaggerInstalled {
if helmVersion2() {
environment.RunRequired(true, "helm", "install", "--name", "swagger-ui", "cm/swagger-ui")
//helm install --namespace nginx-ingress nginx-ingress stable/nginx-ingress --values=config/nginx-ingress-values.yaml
environment.RunRequired(true, "helm", "install", "--namespace", "nginx-ingress", "--name", "nginx-ingress", "--values", file.Name(), "stable/nginx-ingress")
} else {
environment.RunRequired(true, "helm", "install", "swagger-ui", "cm/swagger-ui")
environment.RunRequired(true, "kubectl", "create", "namespace", "nginx-ingress")
environment.RunRequired(true, "helm", "install", "nginx-ingress", "stable/nginx-ingress", "--namespace", "nginx-ingress", "--values", file.Name())
}
}
}
func helmReleaseInstalled(releaseName string) bool {
helmReleases := environment.RunAndGetOutputRequired("helm", "ls", "--all", "--short")
installed := false
for _, r := range helmReleases {
if r == releaseName {
installed = true
break
}
}
return installed
}
func readPkgedFile(path string) (string, error) {
f, err := pkger.Open(path)
if err != nil {
return "", err
}
defer f.Close()
info, err := f.Stat()
if err != nil {
return "", err
}
bytes := make([]byte, info.Size())
_, err = f.Read(bytes)
if err != nil {
return "", err
}
return string(bytes), nil
}
......@@ -8,6 +8,7 @@ require (
github.com/fatih/color v1.7.0
github.com/google/uuid v1.1.1
github.com/manifoldco/promptui v0.3.2
github.com/markbates/pkger v0.15.0
github.com/mattn/go-colorable v0.1.1 // indirect
github.com/mattn/go-isatty v0.0.7 // indirect
github.com/mitchellh/go-homedir v1.1.0
......@@ -16,5 +17,5 @@ require (
github.com/spf13/viper v1.3.2
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3 // indirect
gopkg.in/alecthomas/kingpin.v3-unstable v3.0.0-20180810215634-df19058c872c // indirect
gopkg.in/yaml.v2 v2.2.2
gopkg.in/yaml.v2 v2.2.7
)
......@@ -19,12 +19,15 @@ github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc
github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk=
github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=
github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.7.0 h1:DkWD4oS2D8LGGgTQ6IvwJJXSL5Vp2ffcQg58nFV38Ys=
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/gobuffalo/here v0.6.0 h1:hYrd0a6gDmWxBM4TnrGw8mQg24iSVoIkHEk7FodQcBI=
github.com/gobuffalo/here v0.6.0/go.mod h1:wAG085dHOYqUpf+Ap+WOdrPTp5IYcDAs/x7PLa8Y5fM=
github.com/golang/lint v0.0.0-20181026193005-c67002cb31c3 h1:I4BOK3PBMjhWfQM2zPJKK7lOBGsrsvOB7kBELP33hiE=
github.com/golang/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:tluoj9z5200jBnyusfRPU2LqT6J+DAorxEvtC7LHB+E=
github.com/google/shlex v0.0.0-20181106134648-c34317bd91bf h1:7+FW5aGwISbqUtkfmIpZJGRgNFg2ioYPvFaUxdqpDsg=
......@@ -50,6 +53,8 @@ github.com/magiconair/properties v1.8.0 h1:LLgXmsheXeRoUOBOjtwPQCWIYqM/LU1ayDtDe
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
github.com/manifoldco/promptui v0.3.2 h1:rir7oByTERac6jhpHUPErHuopoRDvO3jxS+FdadEns8=
github.com/manifoldco/promptui v0.3.2/go.mod h1:8JU+igZ+eeiiRku4T5BjtKh2ms8sziGpSYl1gN8Bazw=
github.com/markbates/pkger v0.15.0 h1:rSXoKLBWBgYG7j/h6Be7kggju23ie1Gx3/va9xl5aUw=
github.com/markbates/pkger v0.15.0/go.mod h1:0JoVlrol20BSywW79rN3kdFFsE5xYM+rSCQDXbLhiuI=
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
github.com/mattn/go-colorable v0.1.1 h1:G1f5SKeVxmagw/IyvzvtZE4Gybcc4Tr1tf7I8z0XgOg=
github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ=
......@@ -72,8 +77,6 @@ github.com/spf13/afero v1.1.2 h1:m8/z1t7/fwjysjQRYbP0RD+bUIF/8tJwPdEZsI83ACI=
github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=
github.com/spf13/cast v1.3.0 h1:oget//CVOEoFewqQxwr0Ej5yjygnqGkvggSE/gB35Q8=
github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
github.com/spf13/cobra v0.0.3 h1:ZlrZ4XsMRm04Fr5pSFxBgfND2EBVa1nLpiy1stUsX/8=
github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ=
github.com/spf13/cobra v0.0.5 h1:f0B+LkLX6DtmRH1isoNA9VTtNUK9K8xYd28JNNfOv/s=
github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU=
github.com/spf13/jwalterweatherman v1.0.0 h1:XHEdyB+EcvlqZamSM4ZOMGlc93t6AcsBEu9Gc1vn7yk=
......@@ -82,8 +85,11 @@ github.com/spf13/pflag v1.0.3 h1:zPAT6CGy6wXeQ7NtTnaTerfKOsV6V6F8agHXFiazDkg=
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
github.com/spf13/viper v1.3.2 h1:VUFqw5KcqRf7i70GOzW7N+Q7+gxVBkSSqiXB12+JQ4M=
github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.2.2 h1:bSDNvY7ZPG5RlJ8otE/7V6gMiyenm9RtJ7IUVIAoJ1w=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
github.com/tsenart/deadcode v0.0.0-20160724212837-210d2dc333e9 h1:vY5WqiEon0ZSTGM3ayVVi+twaHKHDFUVloaQ/wug9/c=
github.com/tsenart/deadcode v0.0.0-20160724212837-210d2dc333e9/go.mod h1:q+QjxYvZ+fpjMXqs+XEriussHjSYqeXVnAdSV1tkMYk=
github.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0=
......@@ -115,3 +121,5 @@ gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.7 h1:VUgggvou5XRW9mHwD/yXxIYSMtY0zoKQf/v226p2nyo=
gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
// Code generated by pkger; DO NOT EDIT.
package main
import (
"github.com/markbates/pkger"
"github.com/markbates/pkger/pkging/mem"
)
var _ = pkger.Apply(mem.UnmarshalEmbed([]byte(`1f8b08000000000000ffec597b6fe23a94ff2a23ff4d9b078402d2fe51da5b0ad3d25ba6e591abd1c8714ce2e247aeeda4c0d57cf79593f06e29bb7bb5d2ae184d89cf39bfd8c78f737e8efd0f207c2a1468fd0322a22f13955ee230b5660d658538d3425063ba2512b480150b862d2463cff53c4be2446c4015d0658990fa4fa863d0fab4ae0ae84386410b304838a8805b81400b800a788132c2faa091485801e15baf0f843844edbbf208358a41eb2f70097e56c00f0d29062d2d535c0a030c95e0a005b8d0df08571a528ac36f41aabfc10c120a038abf11fe2d48090dbf2188620c2aa023ee08c5cad45b367519095001c92cc2a129fe5c0d428ef964082cc4425031d6380d2e916016837216408d95656a92478de697f0c8629899e66e7192b715a453625c09161a2b500148b04462a5ac29851a6f2ba2254972996b48389616254a970a3ccf4b729168b12e58b0a8b1101049e2dcc5520eb78da1821b01a35d31743dcf691e282cc235961c520b87ef50866a1f46294934411b4dcce096b47e5d421ea69ad00f4c2a0d34c51b030bbd8d60dedb92506d4bd8ee808aa1b323b95e7d47f61c774bde6b52d3ad719a7b767357b2921999830a08a1860154d8527f532b9424cbc71a732442c2a3ada2051577b665f356bdb6a3211ccac5b606a96c5b8cf17c5b7c3321b125279819514a218def530a8d0353a68b057a7c6d7f6c157c4aa22300cc3322056798ef37a2def145242834fd32419961a948eeef56aca078b9c0d29218869470bc6b9c424d620b092af6226caab8d064ba581776cd9108d2e9145261c558e27d9b8828b6d294ec85740c554c90908915237ac494ff41a5bf822450aafdccf0014ae64bfe2b984290f313605a22c1b3af605acc303f0632ebea840ee4b0135ccb711f34fa96bea516e48a682cd91193a561f02ec9c138d19493792050acac4c238a21df4fc41141824322ad448a044b4df2dcb703e1642a68888481b044a7e44bc02aff7e81524862cc8374fa3fa08e753e643039f0fc13a886332cb8f52134c609fc97aab1a6846a2cbff0aae0be93f811b3001fa7d96d263d05a774280efcd39a5b91b8c8b38ad9347c62270a6abd975718d128c694c60660763321d99fbf35c24c989629d2e97e064a30a558132c4d2d5ab0bd64a392a953b5e0144bf1a9e170040a233ac84ba55e04127e64787b876612df31d431966c3f800a5052f2c881212349b180f32c7f296464cd2db5509689cb7dbdd9aa585a42aea6a288f6036bca091221b6f80a90cca24bc2ad0564f43233546df24af9b09044d55ca7f321340f4b639694dba7f542361b2c48a36d154ad26d71cab412526fab38d65a42b453915039b36eab1241e9b6bcff8ac4538a91a664d725457844f1949228de69552d148294aec66f138b58692af22e88fcc722a2dc38156a66b6f0c5c30a48b4296ab52a979b2646182e1f164ba92609cc7b9e2bfe4e85c661ce49656870ac8b5f2bd63ad92ae63fab215a2b571e973a33ab8914f9d6d4c8a934963c2685b2f01ca3a2a44854bc9414fd300f935f702997c39897223c4fd6054b2db88666ac64ca75d1b5b264a17ca7bf92d66309b560f9def4c0520ee2815e2d8cc3e50ad950acd292f028372d382a1f9beacbb9041550acfc2d0a2b149ba5ba2317bc6bb44577caa0d894ac544f9dfaaedcc84505a70697611e0a935db6e26bf52d10431443d74e045d3855dbfb029d3f4cfc9c8a5bed718f815399e1d517c3115c3c0ba7c7119b702e7b75227cbdd13f02fe6280cc620eb9327f0c2b05a3cfaadb099728cdc3f14b5c22c57cf105d0b5e204a2d911140939fcc46c727491033fb2e6cb5161944a6c05242432fd74b40e92faa7a0d56235159e82cb39e06705bc60a5d75ff13ca5b450ad3fda0bd5a3088d93ad7fc09787198f90f0d5c9c22967241df128c2e3282b12974c843978587ee5b48073e9b8e0f7efdf15302dbcfff4b8a6b50e7e65cd080f2f8aafae4bc37be635c2a7c23c43ac21a1794dbc389239405780224b0c5a5ecdab0066f246abe6da79f1579e505ac0b55dfbc2ae5eb8f517a7daaa5db5bce665a3dab4edabab5aedc2aeb56c134844fd32bb9bd6145285f36c961f2ae10cb4eab5ab7aa302ba5c80967755bff26cbb59017d4af80cb49c7c32306855ab4ea35101af24042dc7b6ed0ae86c8ae35fbf1218daa06557c0203495da15f063e3799bce8a7ed4ec66dd8802cd1468352ae05a13663cf9811168395ec3736bb57ac3b4af8ca65af3bcc695dda8feae80c70fa08dab3574dde7df1570733a74fceb57ca538543d0facbaed815fb673ec73196279dba6da67afffc6d73d0b60d393c6ddb9ca86d8ecd8a28284fcdca29db3d36db3e0c2bd07b21549c4b6d22ecff74d0953b09e3da2c3ae56cf35804fe2e0e79400b4097a6fead889eddb983aa038aa224461d3af2c7bd251c35d327d29670e4cd1e78a4e1325e3e309a3d5427f3c968fe0e3b7fd837cccbfcce70f91409ddbdef6541e7b5deedf4b3800f1681fbae51671e07ecf57bf7a69d04a33beebf88286fb3335c8637cd347007f489ebabee8db76eb37bef346fc87504ab43e28fee66c16b3f0b989ff84e3b0e3b7de18f1febc6fef0a3dd30cfee4de1e31369f70246ed67b799fa8cf270dc8bc30ecd824844dd9beb2860cd993fec51dfa5cbf0beb4bd89efc666fe8af6e634fc635833f6e7718fa3e5c6debd69e7fe3e8ce6f1840d155a8aa8cb68ea577b14551f3562c3d8bf9f35c3fb9ee3ffe86ebf1787e38108aabd04b33bdbf4f161e464be19ab9b5e3bb80f633ceeb783ce3c0b17e6bd36c5f783c564d8ce101ff427e3f63b1c792b5f7439be311c7914518379ae776fa3f7722c4450eddbaf9de622bc15d1d3ed75e1c77d7b115407d9c46daa27d27e7d76ae8fd4f56c3fbe1763063bcd657877a847f7bd2cec34df02f7bddebd1bdcbe5e275778614788dda5befb1af5eefd38b8b9aefff9a3dd0b3bc3c5643ca0dd1bef291c39e3a0da9366ae8b7936ef34955917a1db5c4077b8c8e77ee4c4be6bd6924e0236a0a8fa9ce5f3f762dab99e3d509f22de4f02b7164dc7f6775c55badb19a6fe4dbb397d16ff916fb925e67a13319bd0c8c3e904e6e211e1f30bc2238995bac8204db13a81c23e7f6dc56555d73981cbec66cbfcaf5e36edabff268b35fe3d16cb7dfeafb098db706ad515df34af1cafe1d4ecfa872cb60bb5afecfcdf872cb607ad7a0dbbee36ce2cf6ff9fc53e0fab0d9d2177b808197df35fefde266ed309f8734e1501bbd326c5042c4c024365269db2e1122d9ca53feeb970d4a79351ff2da80ed3f03a99f9233f0e4773fb99ddbd41776828324fcb01bb23416768a8864d46f3a5ff9cbc05ae679b141674868b274335f77d8ab89f4c4cfaba2ed265784fdf4dfb2f3905e5e9f4fb166dfd31190d75e07a2ffe38d7e734f3ea0e953feadb41b55b2f537b12b070e18ffbcb87718f4e4603ef895c930dddb4edc09d535452cc862e34c579df9b33ff87b3309807a69d091b2e0236b4fdf1630a478d2c18dd2d4daa2edbca5091b633f426a2c1f8ce998cde0b2ae90c99cf866f865e5e58f365e2c6d4bf1f2aff5944ddce20f6474e16f03e0d6f4beabc1f2efdd73843d5c17350edd94fa46d233ea45fa5e82278f1f9e6f77cf37bbef93ddffc9e6f7ecf37bfe79bdff3cdeff9e6f77cf37bbef93ddffc9e6f7ecf37bfe79bdff3cdeff9e6f77ff1e6f73f010000ffff010000ffff206b57d7a92f0000`)))
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
image: kindest/node:{{ .Version }}
kubeadmConfigPatches:
- |
kind: InitConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "ingress-ready=true"
authorization-mode: "AlwaysAllow"
extraPortMappings:
- containerPort: 80
hostPort: 80
protocol: TCP
- containerPort: 443
hostPort: 443
protocol: TCP
{{- range $val := Iterate .NumWorkers }}
- role: worker
image: kindest/node:{{ $.Version }}
{{- end }}
serviceAccount:
name: nginx-ingress-serviceaccount
defaultBackend:
enabled: false
controller:
service:
type: NodePort
kind: DaemonSet
nodeSelector:
ingress-ready: "true"
tolerations:
- key: node-role.kubernetes.io/master
operator: Equal
effect: NoSchedule
daemonset:
useHostPort: true
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment