Fixup #2970: Add Missing Label app.kubernetes.io/part-of: ingress-nginx

-    Add missing label `app.kubernetes.io/part-of: ingress-nginx` for deploy example
-    Update new labels for docs/deploy and docs/examples
-    Update new labels for test/e2e and test/manifests
-    Update new labels for images/nginx

Also close #3001
This commit is contained in:
Wong Hoi Sing Edison 2018-09-04 11:25:30 +08:00
parent e60cbc4804
commit 6d3e9ea7d0
22 changed files with 131 additions and 53 deletions

View file

@ -52,5 +52,5 @@ echo "updating image..."
kubectl set image \ kubectl set image \
deployments \ deployments \
--namespace ingress-nginx \ --namespace ingress-nginx \
--selector app=ingress-nginx \ --selector app.kubernetes.io/name=ingress-nginx \
nginx-ingress-controller=${DEV_IMAGE} nginx-ingress-controller=${DEV_IMAGE}

View file

@ -13,10 +13,12 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
template: template:
metadata: metadata:
labels: labels:
app.kubernetes.io/name: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
terminationGracePeriodSeconds: 60 terminationGracePeriodSeconds: 60
containers: containers:
@ -57,3 +59,4 @@ spec:
targetPort: 8080 targetPort: 8080
selector: selector:
app.kubernetes.io/name: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx

View file

@ -19,6 +19,7 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
template: template:
metadata: metadata:
labels: labels:
@ -64,6 +65,7 @@ spec:
targetPort: 8080 targetPort: 8080
selector: selector:
app.kubernetes.io/name: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
--- ---
kind: ConfigMap kind: ConfigMap
@ -259,10 +261,12 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
template: template:
metadata: metadata:
labels: labels:
app.kubernetes.io/name: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
annotations: annotations:
prometheus.io/port: '10254' prometheus.io/port: '10254'
prometheus.io/scrape: 'true' prometheus.io/scrape: 'true'

View file

@ -15,6 +15,7 @@ spec:
type: LoadBalancer type: LoadBalancer
selector: selector:
app.kubernetes.io/name: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
ports: ports:
- name: http - name: http
port: 80 port: 80

View file

@ -19,6 +19,7 @@ spec:
type: LoadBalancer type: LoadBalancer
selector: selector:
app.kubernetes.io/name: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
ports: ports:
- name: http - name: http
port: 80 port: 80

View file

@ -15,6 +15,7 @@ spec:
type: LoadBalancer type: LoadBalancer
selector: selector:
app.kubernetes.io/name: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
ports: ports:
- name: http - name: http
port: 80 port: 80

View file

@ -6,7 +6,6 @@ metadata:
labels: labels:
app.kubernetes.io/name: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx app.kubernetes.io/part-of: ingress-nginx
spec: spec:
type: NodePort type: NodePort
ports: ports:
@ -20,3 +19,4 @@ spec:
protocol: TCP protocol: TCP
selector: selector:
app.kubernetes.io/name: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx

View file

@ -11,6 +11,7 @@ spec:
type: LoadBalancer type: LoadBalancer
selector: selector:
app.kubernetes.io/name: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
ports: ports:
- name: http - name: http
port: 80 port: 80

View file

@ -141,7 +141,7 @@ kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/mast
To check if the ingress controller pods have started, run the following command: To check if the ingress controller pods have started, run the following command:
```console ```console
kubectl get pods --all-namespaces -l app=ingress-nginx --watch kubectl get pods --all-namespaces -l app.kubernetes.io/name=ingress-nginx --watch
``` ```
Once the operator pods are running, you can cancel the above command by typing `Ctrl+C`. Once the operator pods are running, you can cancel the above command by typing `Ctrl+C`.
@ -153,7 +153,7 @@ To detect which version of the ingress controller is running, exec into the pod
```console ```console
POD_NAMESPACE=ingress-nginx POD_NAMESPACE=ingress-nginx
POD_NAME=$(kubectl get pods -n $POD_NAMESPACE -l app=ingress-nginx -o jsonpath='{.items[0].metadata.name}') POD_NAME=$(kubectl get pods -n $POD_NAMESPACE -l app.kubernetes.io/name=ingress-nginx -o jsonpath='{.items[0].metadata.name}')
kubectl exec -it $POD_NAME -n $POD_NAMESPACE -- /nginx-ingress-controller --version kubectl exec -it $POD_NAME -n $POD_NAMESPACE -- /nginx-ingress-controller --version
``` ```
@ -175,7 +175,7 @@ helm install stable/nginx-ingress --name my-nginx --set rbac.create=true
Detect installed version: Detect installed version:
```console ```console
POD_NAME=$(kubectl get pods -l app=nginx-ingress -o jsonpath='{.items[0].metadata.name}') POD_NAME=$(kubectl get pods -l app.kubernetes.io/name=ingress-nginx -o jsonpath='{.items[0].metadata.name}')
kubectl exec -it $POD_NAME -- /nginx-ingress-controller --version kubectl exec -it $POD_NAME -- /nginx-ingress-controller --version
``` ```

View file

@ -4,7 +4,8 @@ metadata:
name: nginx-configuration name: nginx-configuration
namespace: ingress-nginx namespace: ingress-nginx
labels: labels:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
data: data:
proxy-connect-timeout: "10" proxy-connect-timeout: "10"
proxy-read-timeout: "120" proxy-read-timeout: "120"

View file

@ -4,10 +4,12 @@ kind: Service
metadata: metadata:
name: nginx-errors name: nginx-errors
labels: labels:
app: nginx-errors app.kubernetes.io/name: nginx-errors
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
selector: selector:
app: nginx-errors app.kubernetes.io/name: nginx-errors
app.kubernetes.io/part-of: ingress-nginx
ports: ports:
- port: 80 - port: 80
targetPort: 8080 targetPort: 8080
@ -18,15 +20,20 @@ kind: Deployment
apiVersion: apps/v1beta2 apiVersion: apps/v1beta2
metadata: metadata:
name: nginx-errors name: nginx-errors
labels:
app.kubernetes.io/name: nginx-errors
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
replicas: 1 replicas: 1
selector: selector:
matchLabels: matchLabels:
app: nginx-errors app.kubernetes.io/name: nginx-errors
app.kubernetes.io/part-of: ingress-nginx
template: template:
metadata: metadata:
labels: labels:
app: nginx-errors app.kubernetes.io/name: nginx-errors
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
containers: containers:
- name: nginx-error-server - name: nginx-error-server

View file

@ -6,4 +6,5 @@ metadata:
name: nginx-configuration name: nginx-configuration
namespace: ingress-nginx namespace: ingress-nginx
labels: labels:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx

View file

@ -16,7 +16,8 @@ metadata:
name: nginx-configuration name: nginx-configuration
namespace: ingress-nginx namespace: ingress-nginx
labels: labels:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
``` ```
```console ```console
@ -40,7 +41,8 @@ metadata:
name: nginx-configuration name: nginx-configuration
namespace: ingress-nginx namespace: ingress-nginx
labels: labels:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
``` ```
```console ```console

View file

@ -6,4 +6,5 @@ metadata:
name: nginx-configuration name: nginx-configuration
namespace: ingress-nginx namespace: ingress-nginx
labels: labels:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx

View file

@ -3,7 +3,8 @@ kind: Service
metadata: metadata:
name: nginx name: nginx
labels: labels:
app: nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
ports: ports:
- port: 80 - port: 80
@ -11,18 +12,23 @@ spec:
protocol: TCP protocol: TCP
name: http name: http
selector: selector:
app: nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
--- ---
apiVersion: v1 apiVersion: v1
kind: ReplicationController kind: ReplicationController
metadata: metadata:
name: nginx name: nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
replicas: 1 replicas: 1
template: template:
metadata: metadata:
labels: labels:
app: nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
containers: containers:
- name: nginx - name: nginx
@ -35,7 +41,8 @@ kind: Service
metadata: metadata:
name: http-svc name: http-svc
labels: labels:
app: http-svc app.kubernetes.io/name: http-svc
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
ports: ports:
- port: 80 - port: 80
@ -43,18 +50,23 @@ spec:
protocol: TCP protocol: TCP
name: http name: http
selector: selector:
app: http-svc app.kubernetes.io/name: http-svc
app.kubernetes.io/part-of: ingress-nginx
--- ---
apiVersion: v1 apiVersion: v1
kind: ReplicationController kind: ReplicationController
metadata: metadata:
name: http-svc name: http-svc
labels:
app.kubernetes.io/name: http-svc
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
replicas: 1 replicas: 1
template: template:
metadata: metadata:
labels: labels:
app: http-svc app.kubernetes.io/name: http-svc
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
containers: containers:
- name: http-svc - name: http-svc

View file

@ -3,16 +3,19 @@ kind: Deployment
metadata: metadata:
name: nginx-ingress-controller name: nginx-ingress-controller
labels: labels:
k8s-app: nginx-ingress-controller app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
replicas: 1 replicas: 1
selector: selector:
matchLabels: matchLabels:
k8s-app: nginx-ingress-controller app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
template: template:
metadata: metadata:
labels: labels:
k8s-app: nginx-ingress-controller app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
# hostNetwork makes it possible to use ipv6 and to preserve the source IP correctly regardless of docker configuration # hostNetwork makes it possible to use ipv6 and to preserve the source IP correctly regardless of docker configuration
# however, it is not a hard dependency of the nginx-ingress-controller itself and it may cause issues if port 10254 already is taken on the host # however, it is not a hard dependency of the nginx-ingress-controller itself and it may cause issues if port 10254 already is taken on the host

View file

@ -4,7 +4,8 @@ kind: Service
metadata: metadata:
name: nginx-ingress-lb name: nginx-ingress-lb
labels: labels:
app: nginx-ingress-lb app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
externalTrafficPolicy: Local externalTrafficPolicy: Local
type: LoadBalancer type: LoadBalancer
@ -18,5 +19,5 @@ spec:
targetPort: 443 targetPort: 443
selector: selector:
# Selects nginx-ingress-controller pods # Selects nginx-ingress-controller pods
k8s-app: nginx-ingress-controller app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx

View file

@ -3,7 +3,8 @@ kind: Service
metadata: metadata:
name: nginxsvc name: nginxsvc
labels: labels:
app: nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
type: NodePort type: NodePort
ports: ports:
@ -14,20 +15,26 @@ spec:
protocol: TCP protocol: TCP
name: https name: https
selector: selector:
app: nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
--- ---
apiVersion: v1 apiVersion: v1
kind: ReplicationController kind: ReplicationController
metadata: metadata:
name: nginx name: nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
replicas: 1 replicas: 1
selector: selector:
app: nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
template: template:
metadata: metadata:
labels: labels:
app: nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
containers: containers:
- name: nginx - name: nginx

View file

@ -108,7 +108,7 @@ func (f *Framework) BeforeEach() {
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())
err = WaitForPodsReady(f.KubeClientSet, 5*time.Minute, 1, f.IngressController.Namespace, metav1.ListOptions{ err = WaitForPodsReady(f.KubeClientSet, 5*time.Minute, 1, f.IngressController.Namespace, metav1.ListOptions{
LabelSelector: "app=ingress-nginx", LabelSelector: "app.kubernetes.io/name=ingress-nginx",
}) })
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())
@ -200,7 +200,7 @@ func (f *Framework) WaitForNginxConfiguration(matcher func(cfg string) bool) err
// NginxLogs returns the logs of the nginx ingress controller pod running // NginxLogs returns the logs of the nginx ingress controller pod running
func (f *Framework) NginxLogs() (string, error) { func (f *Framework) NginxLogs() (string, error) {
l, err := f.KubeClientSet.CoreV1().Pods(f.IngressController.Namespace).List(metav1.ListOptions{ l, err := f.KubeClientSet.CoreV1().Pods(f.IngressController.Namespace).List(metav1.ListOptions{
LabelSelector: "app=ingress-nginx", LabelSelector: "app.kubernetes.io/name=ingress-nginx",
}) })
if err != nil { if err != nil {
return "", err return "", err
@ -220,7 +220,7 @@ func (f *Framework) NginxLogs() (string, error) {
func (f *Framework) matchNginxConditions(name string, matcher func(cfg string) bool) wait.ConditionFunc { func (f *Framework) matchNginxConditions(name string, matcher func(cfg string) bool) wait.ConditionFunc {
return func() (bool, error) { return func() (bool, error) {
l, err := f.KubeClientSet.CoreV1().Pods(f.IngressController.Namespace).List(metav1.ListOptions{ l, err := f.KubeClientSet.CoreV1().Pods(f.IngressController.Namespace).List(metav1.ListOptions{
LabelSelector: "app=ingress-nginx", LabelSelector: "app.kubernetes.io/name=ingress-nginx",
}) })
if err != nil { if err != nil {
return false, err return false, err

View file

@ -28,7 +28,7 @@ function on_exit {
test $error_code == 0 && return; test $error_code == 0 && return;
echo "Obtaining ingress controller pod logs..." echo "Obtaining ingress controller pod logs..."
kubectl logs -l app=ingress-nginx -n $NAMESPACE kubectl logs -l app.kubernetes.io/name=ingress-nginx -n $NAMESPACE
} }
trap on_exit EXIT trap on_exit EXIT

View file

@ -5,16 +5,19 @@ kind: Deployment
metadata: metadata:
name: default-http-backend name: default-http-backend
labels: labels:
app: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
replicas: 1 replicas: 1
selector: selector:
matchLabels: matchLabels:
app: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
template: template:
metadata: metadata:
labels: labels:
app: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
terminationGracePeriodSeconds: 60 terminationGracePeriodSeconds: 60
containers: containers:
@ -46,13 +49,15 @@ kind: Service
metadata: metadata:
name: default-http-backend name: default-http-backend
labels: labels:
app: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
ports: ports:
- port: 80 - port: 80
targetPort: 8080 targetPort: 8080
selector: selector:
app: default-http-backend app.kubernetes.io/name: default-http-backend
app.kubernetes.io/part-of: ingress-nginx
--- ---
kind: ConfigMap kind: ConfigMap
@ -60,32 +65,44 @@ apiVersion: v1
metadata: metadata:
name: nginx-configuration name: nginx-configuration
labels: labels:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
--- ---
kind: ConfigMap kind: ConfigMap
apiVersion: v1 apiVersion: v1
metadata: metadata:
name: tcp-services name: tcp-services
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
--- ---
kind: ConfigMap kind: ConfigMap
apiVersion: v1 apiVersion: v1
metadata: metadata:
name: udp-services name: udp-services
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
--- ---
apiVersion: v1 apiVersion: v1
kind: ServiceAccount kind: ServiceAccount
metadata: metadata:
name: nginx-ingress-serviceaccount name: nginx-ingress-serviceaccount
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
--- ---
apiVersion: rbac.authorization.k8s.io/v1beta1 apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
name: nginx-ingress-clusterrole name: nginx-ingress-clusterrole
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
rules: rules:
- apiGroups: - apiGroups:
- "" - ""
@ -140,6 +157,9 @@ apiVersion: rbac.authorization.k8s.io/v1beta1
kind: Role kind: Role
metadata: metadata:
name: nginx-ingress-role name: nginx-ingress-role
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
rules: rules:
- apiGroups: - apiGroups:
- "" - ""
@ -182,6 +202,9 @@ apiVersion: rbac.authorization.k8s.io/v1beta1
kind: RoleBinding kind: RoleBinding
metadata: metadata:
name: nginx-ingress-role-${NAMESPACE} name: nginx-ingress-role-${NAMESPACE}
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: Role kind: Role
@ -197,6 +220,9 @@ apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
name: nginx-ingress-clusterrole-${NAMESPACE} name: nginx-ingress-clusterrole-${NAMESPACE}
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: ClusterRole kind: ClusterRole
@ -212,15 +238,20 @@ apiVersion: extensions/v1beta1
kind: Deployment kind: Deployment
metadata: metadata:
name: nginx-ingress-controller name: nginx-ingress-controller
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec: spec:
replicas: 1 replicas: 1
selector: selector:
matchLabels: matchLabels:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
template: template:
metadata: metadata:
labels: labels:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
annotations: annotations:
prometheus.io/port: '10254' prometheus.io/port: '10254'
prometheus.io/scrape: 'true' prometheus.io/scrape: 'true'
@ -251,6 +282,14 @@ spec:
- --publish-service=$(POD_NAMESPACE)/ingress-nginx - --publish-service=$(POD_NAMESPACE)/ingress-nginx
- --annotations-prefix=nginx.ingress.kubernetes.io - --annotations-prefix=nginx.ingress.kubernetes.io
- --watch-namespace=${NAMESPACE} - --watch-namespace=${NAMESPACE}
securityContext:
capabilities:
drop:
- ALL
add:
- NET_BIND_SERVICE
# www-data -> 33
runAsUser: 33
env: env:
- name: POD_NAME - name: POD_NAME
valueFrom: valueFrom:
@ -260,14 +299,6 @@ spec:
valueFrom: valueFrom:
fieldRef: fieldRef:
fieldPath: metadata.namespace fieldPath: metadata.namespace
securityContext:
capabilities:
drop:
- ALL
add:
- NET_BIND_SERVICE
# www-data -> 33
runAsUser: 33
ports: ports:
- name: http - name: http
containerPort: 80 containerPort: 80

View file

@ -14,4 +14,5 @@ spec:
targetPort: 443 targetPort: 443
protocol: TCP protocol: TCP
selector: selector:
app: ingress-nginx app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx