github.com/docker/compose-on-kubernetes@v0.5.0/internal/controller/testcases/test-various-port-ordering.json (about)

     1  {
     2      "Stack": {
     3          "metadata": {
     4              "name": "test-various-port-ordering",
     5              "namespace": "default",
     6              "selfLink": "/apis/compose.docker.com/v1beta2/namespaces/default/stacks/test-various-port-ordering",
     7              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
     8              "resourceVersion": "24830",
     9              "creationTimestamp": "2018-09-19T20:38:06Z"
    10          },
    11          "spec": {
    12              "services": [
    13                  {
    14                      "name": "by-port",
    15                      "deploy": {
    16                          "resources": {},
    17                          "placement": {}
    18                      },
    19                      "image": "nginx",
    20                      "ports": [
    21                          {
    22                              "mode": "ingress",
    23                              "target": 81,
    24                              "published": 80,
    25                              "protocol": "tcp"
    26                          },
    27                          {
    28                              "mode": "ingress",
    29                              "target": 80,
    30                              "published": 81,
    31                              "protocol": "tcp"
    32                          }
    33                      ]
    34                  },
    35                  {
    36                      "name": "by-target",
    37                      "deploy": {
    38                          "resources": {},
    39                          "placement": {}
    40                      },
    41                      "image": "nginx",
    42                      "ports": [
    43                          {
    44                              "mode": "ingress",
    45                              "target": 80,
    46                              "published": 81,
    47                              "protocol": "tcp"
    48                          },
    49                          {
    50                              "mode": "ingress",
    51                              "target": 81,
    52                              "published": 80,
    53                              "protocol": "tcp"
    54                          }
    55                      ]
    56                  },
    57                  {
    58                      "name": "reverse",
    59                      "deploy": {
    60                          "resources": {},
    61                          "placement": {}
    62                      },
    63                      "image": "nginx",
    64                      "ports": [
    65                          {
    66                              "mode": "ingress",
    67                              "target": 81,
    68                              "published": 81,
    69                              "protocol": "tcp"
    70                          },
    71                          {
    72                              "mode": "ingress",
    73                              "target": 80,
    74                              "published": 80,
    75                              "protocol": "tcp"
    76                          }
    77                      ]
    78                  },
    79                  {
    80                      "name": "sorted",
    81                      "deploy": {
    82                          "resources": {},
    83                          "placement": {}
    84                      },
    85                      "image": "nginx",
    86                      "ports": [
    87                          {
    88                              "mode": "ingress",
    89                              "target": 80,
    90                              "published": 80,
    91                              "protocol": "tcp"
    92                          },
    93                          {
    94                              "mode": "ingress",
    95                              "target": 81,
    96                              "published": 81,
    97                              "protocol": "tcp"
    98                          }
    99                      ]
   100                  }
   101              ]
   102          },
   103          "status": {
   104              "phase": "Available",
   105              "message": "Stack is started"
   106          }
   107      },
   108      "Children": {
   109          "Deployments": {
   110              "default/by-port": {
   111                  "metadata": {
   112                      "name": "by-port",
   113                      "namespace": "default",
   114                      "selfLink": "/apis/apps/v1/namespaces/default/deployments/by-port",
   115                      "uid": "e98bb345-bc4b-11e8-a6d8-00155d0027c4",
   116                      "resourceVersion": "26759",
   117                      "generation": 42,
   118                      "creationTimestamp": "2018-09-19T20:38:06Z",
   119                      "labels": {
   120                          "com.docker.service.id": "test-various-port-ordering-by-port",
   121                          "com.docker.service.name": "by-port",
   122                          "com.docker.stack.namespace": "test-various-port-ordering"
   123                      },
   124                      "annotations": {
   125                          "deployment.kubernetes.io/revision": "1"
   126                      },
   127                      "ownerReferences": [
   128                          {
   129                              "apiVersion": "compose.docker.com/v1beta2",
   130                              "kind": "Stack",
   131                              "name": "test-various-port-ordering",
   132                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   133                              "controller": true,
   134                              "blockOwnerDeletion": true
   135                          }
   136                      ]
   137                  },
   138                  "spec": {
   139                      "replicas": 1,
   140                      "selector": {
   141                          "matchLabels": {
   142                              "com.docker.service.id": "test-various-port-ordering-by-port",
   143                              "com.docker.service.name": "by-port",
   144                              "com.docker.stack.namespace": "test-various-port-ordering"
   145                          }
   146                      },
   147                      "template": {
   148                          "metadata": {
   149                              "creationTimestamp": null,
   150                              "labels": {
   151                                  "com.docker.service.id": "test-various-port-ordering-by-port",
   152                                  "com.docker.service.name": "by-port",
   153                                  "com.docker.stack.namespace": "test-various-port-ordering"
   154                              }
   155                          },
   156                          "spec": {
   157                              "containers": [
   158                                  {
   159                                      "name": "by-port",
   160                                      "image": "nginx",
   161                                      "ports": [
   162                                          {
   163                                              "containerPort": 81,
   164                                              "protocol": "TCP"
   165                                          },
   166                                          {
   167                                              "containerPort": 80,
   168                                              "protocol": "TCP"
   169                                          }
   170                                      ],
   171                                      "resources": {},
   172                                      "terminationMessagePath": "/dev/termination-log",
   173                                      "terminationMessagePolicy": "File",
   174                                      "imagePullPolicy": "IfNotPresent"
   175                                  }
   176                              ],
   177                              "restartPolicy": "Always",
   178                              "terminationGracePeriodSeconds": 30,
   179                              "dnsPolicy": "ClusterFirst",
   180                              "securityContext": {},
   181                              "affinity": {
   182                                  "nodeAffinity": {
   183                                    "requiredDuringSchedulingIgnoredDuringExecution": {
   184                                      "nodeSelectorTerms": [
   185                                        {
   186                                          "matchExpressions": [
   187                                            {
   188                                              "key": "beta.kubernetes.io/os",
   189                                              "operator": "In",
   190                                              "values": [
   191                                                "linux"
   192                                              ]
   193                                            },
   194                                            {
   195                                              "key": "beta.kubernetes.io/arch",
   196                                              "operator": "In",
   197                                              "values": [
   198                                                "amd64"
   199                                              ]
   200                                            }
   201                                          ]
   202                                        }
   203                                      ]
   204                                    }
   205                                  }
   206                                },
   207                              "schedulerName": "default-scheduler"
   208                          }
   209                      },
   210                      "strategy": {
   211                          "type": "RollingUpdate",
   212                          "rollingUpdate": {
   213                              "maxUnavailable": "25%",
   214                              "maxSurge": "25%"
   215                          }
   216                      },
   217                      "revisionHistoryLimit": 3,
   218                      "progressDeadlineSeconds": 600
   219                  },
   220                  "status": {
   221                      "observedGeneration": 42,
   222                      "replicas": 1,
   223                      "updatedReplicas": 1,
   224                      "readyReplicas": 1,
   225                      "availableReplicas": 1,
   226                      "conditions": [
   227                          {
   228                              "type": "Available",
   229                              "status": "True",
   230                              "lastUpdateTime": "2018-09-19T20:38:41Z",
   231                              "lastTransitionTime": "2018-09-19T20:38:41Z",
   232                              "reason": "MinimumReplicasAvailable",
   233                              "message": "Deployment has minimum availability."
   234                          },
   235                          {
   236                              "type": "Progressing",
   237                              "status": "True",
   238                              "lastUpdateTime": "2018-09-19T20:38:41Z",
   239                              "lastTransitionTime": "2018-09-19T20:38:06Z",
   240                              "reason": "NewReplicaSetAvailable",
   241                              "message": "ReplicaSet \"by-port-5bbcf64b8\" has successfully progressed."
   242                          }
   243                      ]
   244                  }
   245              },
   246              "default/by-target": {
   247                  "metadata": {
   248                      "name": "by-target",
   249                      "namespace": "default",
   250                      "selfLink": "/apis/apps/v1/namespaces/default/deployments/by-target",
   251                      "uid": "e99b0f24-bc4b-11e8-a6d8-00155d0027c4",
   252                      "resourceVersion": "26762",
   253                      "generation": 42,
   254                      "creationTimestamp": "2018-09-19T20:38:06Z",
   255                      "labels": {
   256                          "com.docker.service.id": "test-various-port-ordering-by-target",
   257                          "com.docker.service.name": "by-target",
   258                          "com.docker.stack.namespace": "test-various-port-ordering"
   259                      },
   260                      "annotations": {
   261                          "deployment.kubernetes.io/revision": "1"
   262                      },
   263                      "ownerReferences": [
   264                          {
   265                              "apiVersion": "compose.docker.com/v1beta2",
   266                              "kind": "Stack",
   267                              "name": "test-various-port-ordering",
   268                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   269                              "controller": true,
   270                              "blockOwnerDeletion": true
   271                          }
   272                      ]
   273                  },
   274                  "spec": {
   275                      "replicas": 1,
   276                      "selector": {
   277                          "matchLabels": {
   278                              "com.docker.service.id": "test-various-port-ordering-by-target",
   279                              "com.docker.service.name": "by-target",
   280                              "com.docker.stack.namespace": "test-various-port-ordering"
   281                          }
   282                      },
   283                      "template": {
   284                          "metadata": {
   285                              "creationTimestamp": null,
   286                              "labels": {
   287                                  "com.docker.service.id": "test-various-port-ordering-by-target",
   288                                  "com.docker.service.name": "by-target",
   289                                  "com.docker.stack.namespace": "test-various-port-ordering"
   290                              }
   291                          },
   292                          "spec": {
   293                              "containers": [
   294                                  {
   295                                      "name": "by-target",
   296                                      "image": "nginx",
   297                                      "ports": [
   298                                          {
   299                                              "containerPort": 80,
   300                                              "protocol": "TCP"
   301                                          },
   302                                          {
   303                                              "containerPort": 81,
   304                                              "protocol": "TCP"
   305                                          }
   306                                      ],
   307                                      "resources": {},
   308                                      "terminationMessagePath": "/dev/termination-log",
   309                                      "terminationMessagePolicy": "File",
   310                                      "imagePullPolicy": "IfNotPresent"
   311                                  }
   312                              ],
   313                              "restartPolicy": "Always",
   314                              "terminationGracePeriodSeconds": 30,
   315                              "dnsPolicy": "ClusterFirst",
   316                              "securityContext": {},
   317                              "affinity": {
   318                                  "nodeAffinity": {
   319                                    "requiredDuringSchedulingIgnoredDuringExecution": {
   320                                      "nodeSelectorTerms": [
   321                                        {
   322                                          "matchExpressions": [
   323                                            {
   324                                              "key": "beta.kubernetes.io/os",
   325                                              "operator": "In",
   326                                              "values": [
   327                                                "linux"
   328                                              ]
   329                                            },
   330                                            {
   331                                              "key": "beta.kubernetes.io/arch",
   332                                              "operator": "In",
   333                                              "values": [
   334                                                "amd64"
   335                                              ]
   336                                            }
   337                                          ]
   338                                        }
   339                                      ]
   340                                    }
   341                                  }
   342                                },
   343                              "schedulerName": "default-scheduler"
   344                          }
   345                      },
   346                      "strategy": {
   347                          "type": "RollingUpdate",
   348                          "rollingUpdate": {
   349                              "maxUnavailable": "25%",
   350                              "maxSurge": "25%"
   351                          }
   352                      },
   353                      "revisionHistoryLimit": 3,
   354                      "progressDeadlineSeconds": 600
   355                  },
   356                  "status": {
   357                      "observedGeneration": 42,
   358                      "replicas": 1,
   359                      "updatedReplicas": 1,
   360                      "readyReplicas": 1,
   361                      "availableReplicas": 1,
   362                      "conditions": [
   363                          {
   364                              "type": "Available",
   365                              "status": "True",
   366                              "lastUpdateTime": "2018-09-19T20:38:39Z",
   367                              "lastTransitionTime": "2018-09-19T20:38:39Z",
   368                              "reason": "MinimumReplicasAvailable",
   369                              "message": "Deployment has minimum availability."
   370                          },
   371                          {
   372                              "type": "Progressing",
   373                              "status": "True",
   374                              "lastUpdateTime": "2018-09-19T20:38:39Z",
   375                              "lastTransitionTime": "2018-09-19T20:38:06Z",
   376                              "reason": "NewReplicaSetAvailable",
   377                              "message": "ReplicaSet \"by-target-fd75ccccd\" has successfully progressed."
   378                          }
   379                      ]
   380                  }
   381              },
   382              "default/reverse": {
   383                  "metadata": {
   384                      "name": "reverse",
   385                      "namespace": "default",
   386                      "selfLink": "/apis/apps/v1/namespaces/default/deployments/reverse",
   387                      "uid": "e9acf5c2-bc4b-11e8-a6d8-00155d0027c4",
   388                      "resourceVersion": "26765",
   389                      "generation": 42,
   390                      "creationTimestamp": "2018-09-19T20:38:06Z",
   391                      "labels": {
   392                          "com.docker.service.id": "test-various-port-ordering-reverse",
   393                          "com.docker.service.name": "reverse",
   394                          "com.docker.stack.namespace": "test-various-port-ordering"
   395                      },
   396                      "annotations": {
   397                          "deployment.kubernetes.io/revision": "1"
   398                      },
   399                      "ownerReferences": [
   400                          {
   401                              "apiVersion": "compose.docker.com/v1beta2",
   402                              "kind": "Stack",
   403                              "name": "test-various-port-ordering",
   404                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   405                              "controller": true,
   406                              "blockOwnerDeletion": true
   407                          }
   408                      ]
   409                  },
   410                  "spec": {
   411                      "replicas": 1,
   412                      "selector": {
   413                          "matchLabels": {
   414                              "com.docker.service.id": "test-various-port-ordering-reverse",
   415                              "com.docker.service.name": "reverse",
   416                              "com.docker.stack.namespace": "test-various-port-ordering"
   417                          }
   418                      },
   419                      "template": {
   420                          "metadata": {
   421                              "creationTimestamp": null,
   422                              "labels": {
   423                                  "com.docker.service.id": "test-various-port-ordering-reverse",
   424                                  "com.docker.service.name": "reverse",
   425                                  "com.docker.stack.namespace": "test-various-port-ordering"
   426                              }
   427                          },
   428                          "spec": {
   429                              "containers": [
   430                                  {
   431                                      "name": "reverse",
   432                                      "image": "nginx",
   433                                      "ports": [
   434                                          {
   435                                              "containerPort": 81,
   436                                              "protocol": "TCP"
   437                                          },
   438                                          {
   439                                              "containerPort": 80,
   440                                              "protocol": "TCP"
   441                                          }
   442                                      ],
   443                                      "resources": {},
   444                                      "terminationMessagePath": "/dev/termination-log",
   445                                      "terminationMessagePolicy": "File",
   446                                      "imagePullPolicy": "IfNotPresent"
   447                                  }
   448                              ],
   449                              "restartPolicy": "Always",
   450                              "terminationGracePeriodSeconds": 30,
   451                              "dnsPolicy": "ClusterFirst",
   452                              "securityContext": {},
   453                              "affinity": {
   454                                  "nodeAffinity": {
   455                                    "requiredDuringSchedulingIgnoredDuringExecution": {
   456                                      "nodeSelectorTerms": [
   457                                        {
   458                                          "matchExpressions": [
   459                                            {
   460                                              "key": "beta.kubernetes.io/os",
   461                                              "operator": "In",
   462                                              "values": [
   463                                                "linux"
   464                                              ]
   465                                            },
   466                                            {
   467                                              "key": "beta.kubernetes.io/arch",
   468                                              "operator": "In",
   469                                              "values": [
   470                                                "amd64"
   471                                              ]
   472                                            }
   473                                          ]
   474                                        }
   475                                      ]
   476                                    }
   477                                  }
   478                                },
   479                              "schedulerName": "default-scheduler"
   480                          }
   481                      },
   482                      "strategy": {
   483                          "type": "RollingUpdate",
   484                          "rollingUpdate": {
   485                              "maxUnavailable": "25%",
   486                              "maxSurge": "25%"
   487                          }
   488                      },
   489                      "revisionHistoryLimit": 3,
   490                      "progressDeadlineSeconds": 600
   491                  },
   492                  "status": {
   493                      "observedGeneration": 42,
   494                      "replicas": 1,
   495                      "updatedReplicas": 1,
   496                      "readyReplicas": 1,
   497                      "availableReplicas": 1,
   498                      "conditions": [
   499                          {
   500                              "type": "Available",
   501                              "status": "True",
   502                              "lastUpdateTime": "2018-09-19T20:38:42Z",
   503                              "lastTransitionTime": "2018-09-19T20:38:42Z",
   504                              "reason": "MinimumReplicasAvailable",
   505                              "message": "Deployment has minimum availability."
   506                          },
   507                          {
   508                              "type": "Progressing",
   509                              "status": "True",
   510                              "lastUpdateTime": "2018-09-19T20:38:42Z",
   511                              "lastTransitionTime": "2018-09-19T20:38:06Z",
   512                              "reason": "NewReplicaSetAvailable",
   513                              "message": "ReplicaSet \"reverse-5df475799c\" has successfully progressed."
   514                          }
   515                      ]
   516                  }
   517              },
   518              "default/sorted": {
   519                  "metadata": {
   520                      "name": "sorted",
   521                      "namespace": "default",
   522                      "selfLink": "/apis/apps/v1/namespaces/default/deployments/sorted",
   523                      "uid": "e9d778a0-bc4b-11e8-a6d8-00155d0027c4",
   524                      "resourceVersion": "26768",
   525                      "generation": 42,
   526                      "creationTimestamp": "2018-09-19T20:38:06Z",
   527                      "labels": {
   528                          "com.docker.service.id": "test-various-port-ordering-sorted",
   529                          "com.docker.service.name": "sorted",
   530                          "com.docker.stack.namespace": "test-various-port-ordering"
   531                      },
   532                      "annotations": {
   533                          "deployment.kubernetes.io/revision": "1"
   534                      },
   535                      "ownerReferences": [
   536                          {
   537                              "apiVersion": "compose.docker.com/v1beta2",
   538                              "kind": "Stack",
   539                              "name": "test-various-port-ordering",
   540                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   541                              "controller": true,
   542                              "blockOwnerDeletion": true
   543                          }
   544                      ]
   545                  },
   546                  "spec": {
   547                      "replicas": 1,
   548                      "selector": {
   549                          "matchLabels": {
   550                              "com.docker.service.id": "test-various-port-ordering-sorted",
   551                              "com.docker.service.name": "sorted",
   552                              "com.docker.stack.namespace": "test-various-port-ordering"
   553                          }
   554                      },
   555                      "template": {
   556                          "metadata": {
   557                              "creationTimestamp": null,
   558                              "labels": {
   559                                  "com.docker.service.id": "test-various-port-ordering-sorted",
   560                                  "com.docker.service.name": "sorted",
   561                                  "com.docker.stack.namespace": "test-various-port-ordering"
   562                              }
   563                          },
   564                          "spec": {
   565                              "containers": [
   566                                  {
   567                                      "name": "sorted",
   568                                      "image": "nginx",
   569                                      "ports": [
   570                                          {
   571                                              "containerPort": 80,
   572                                              "protocol": "TCP"
   573                                          },
   574                                          {
   575                                              "containerPort": 81,
   576                                              "protocol": "TCP"
   577                                          }
   578                                      ],
   579                                      "resources": {},
   580                                      "terminationMessagePath": "/dev/termination-log",
   581                                      "terminationMessagePolicy": "File",
   582                                      "imagePullPolicy": "IfNotPresent"
   583                                  }
   584                              ],
   585                              "restartPolicy": "Always",
   586                              "terminationGracePeriodSeconds": 30,
   587                              "dnsPolicy": "ClusterFirst",
   588                              "securityContext": {},
   589                              "affinity": {
   590                                  "nodeAffinity": {
   591                                    "requiredDuringSchedulingIgnoredDuringExecution": {
   592                                      "nodeSelectorTerms": [
   593                                        {
   594                                          "matchExpressions": [
   595                                            {
   596                                              "key": "beta.kubernetes.io/os",
   597                                              "operator": "In",
   598                                              "values": [
   599                                                "linux"
   600                                              ]
   601                                            },
   602                                            {
   603                                              "key": "beta.kubernetes.io/arch",
   604                                              "operator": "In",
   605                                              "values": [
   606                                                "amd64"
   607                                              ]
   608                                            }
   609                                          ]
   610                                        }
   611                                      ]
   612                                    }
   613                                  }
   614                                },
   615                              "schedulerName": "default-scheduler"
   616                          }
   617                      },
   618                      "strategy": {
   619                          "type": "RollingUpdate",
   620                          "rollingUpdate": {
   621                              "maxUnavailable": "25%",
   622                              "maxSurge": "25%"
   623                          }
   624                      },
   625                      "revisionHistoryLimit": 3,
   626                      "progressDeadlineSeconds": 600
   627                  },
   628                  "status": {
   629                      "observedGeneration": 42,
   630                      "replicas": 1,
   631                      "updatedReplicas": 1,
   632                      "readyReplicas": 1,
   633                      "availableReplicas": 1,
   634                      "conditions": [
   635                          {
   636                              "type": "Available",
   637                              "status": "True",
   638                              "lastUpdateTime": "2018-09-19T20:38:45Z",
   639                              "lastTransitionTime": "2018-09-19T20:38:45Z",
   640                              "reason": "MinimumReplicasAvailable",
   641                              "message": "Deployment has minimum availability."
   642                          },
   643                          {
   644                              "type": "Progressing",
   645                              "status": "True",
   646                              "lastUpdateTime": "2018-09-19T20:38:45Z",
   647                              "lastTransitionTime": "2018-09-19T20:38:06Z",
   648                              "reason": "NewReplicaSetAvailable",
   649                              "message": "ReplicaSet \"sorted-7cd9cc57bb\" has successfully progressed."
   650                          }
   651                      ]
   652                  }
   653              }
   654          },
   655          "Statefulsets": {},
   656          "Daemonsets": {},
   657          "Services": {
   658              "default/by-port": {
   659                  "metadata": {
   660                      "name": "by-port",
   661                      "namespace": "default",
   662                      "selfLink": "/api/v1/namespaces/default/services/by-port",
   663                      "uid": "e98d85f3-bc4b-11e8-a6d8-00155d0027c4",
   664                      "resourceVersion": "24641",
   665                      "creationTimestamp": "2018-09-19T20:38:06Z",
   666                      "labels": {
   667                          "com.docker.service.id": "test-various-port-ordering-by-port",
   668                          "com.docker.service.name": "by-port",
   669                          "com.docker.stack.namespace": "test-various-port-ordering"
   670                      },
   671                      "ownerReferences": [
   672                          {
   673                              "apiVersion": "compose.docker.com/v1beta2",
   674                              "kind": "Stack",
   675                              "name": "test-various-port-ordering",
   676                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   677                              "controller": true,
   678                              "blockOwnerDeletion": true
   679                          }
   680                      ]
   681                  },
   682                  "spec": {
   683                      "ports": [
   684                          {
   685                              "name": "headless",
   686                              "protocol": "TCP",
   687                              "port": 55555,
   688                              "targetPort": 55555
   689                          }
   690                      ],
   691                      "selector": {
   692                          "com.docker.service.id": "test-various-port-ordering-by-port",
   693                          "com.docker.service.name": "by-port",
   694                          "com.docker.stack.namespace": "test-various-port-ordering"
   695                      },
   696                      "clusterIP": "None",
   697                      "type": "ClusterIP",
   698                      "sessionAffinity": "None"
   699                  },
   700                  "status": {
   701                      "loadBalancer": {}
   702                  }
   703              },
   704              "default/by-port-published": {
   705                  "metadata": {
   706                      "name": "by-port-published",
   707                      "namespace": "default",
   708                      "selfLink": "/api/v1/namespaces/default/services/by-port-published",
   709                      "uid": "e99801b5-bc4b-11e8-a6d8-00155d0027c4",
   710                      "resourceVersion": "24652",
   711                      "creationTimestamp": "2018-09-19T20:38:06Z",
   712                      "labels": {
   713                          "com.docker.service.id": "test-various-port-ordering-by-port",
   714                          "com.docker.service.name": "by-port",
   715                          "com.docker.stack.namespace": "test-various-port-ordering"
   716                      },
   717                      "ownerReferences": [
   718                          {
   719                              "apiVersion": "compose.docker.com/v1beta2",
   720                              "kind": "Stack",
   721                              "name": "test-various-port-ordering",
   722                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   723                              "controller": true,
   724                              "blockOwnerDeletion": true
   725                          }
   726                      ]
   727                  },
   728                  "spec": {
   729                      "ports": [
   730                          {
   731                              "name": "80-tcp",
   732                              "protocol": "TCP",
   733                              "port": 80,
   734                              "targetPort": 81,
   735                              "nodePort": 31303
   736                          },
   737                          {
   738                              "name": "81-tcp",
   739                              "protocol": "TCP",
   740                              "port": 81,
   741                              "targetPort": 80,
   742                              "nodePort": 30867
   743                          }
   744                      ],
   745                      "selector": {
   746                          "com.docker.service.id": "test-various-port-ordering-by-port",
   747                          "com.docker.service.name": "by-port",
   748                          "com.docker.stack.namespace": "test-various-port-ordering"
   749                      },
   750                      "clusterIP": "10.104.217.39",
   751                      "type": "LoadBalancer",
   752                      "sessionAffinity": "None",
   753                      "externalTrafficPolicy": "Cluster"
   754                  },
   755                  "status": {
   756                      "loadBalancer": {}
   757                  }
   758              },
   759              "default/by-target": {
   760                  "metadata": {
   761                      "name": "by-target",
   762                      "namespace": "default",
   763                      "selfLink": "/api/v1/namespaces/default/services/by-target",
   764                      "uid": "e99e0746-bc4b-11e8-a6d8-00155d0027c4",
   765                      "resourceVersion": "24661",
   766                      "creationTimestamp": "2018-09-19T20:38:06Z",
   767                      "labels": {
   768                          "com.docker.service.id": "test-various-port-ordering-by-target",
   769                          "com.docker.service.name": "by-target",
   770                          "com.docker.stack.namespace": "test-various-port-ordering"
   771                      },
   772                      "ownerReferences": [
   773                          {
   774                              "apiVersion": "compose.docker.com/v1beta2",
   775                              "kind": "Stack",
   776                              "name": "test-various-port-ordering",
   777                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   778                              "controller": true,
   779                              "blockOwnerDeletion": true
   780                          }
   781                      ]
   782                  },
   783                  "spec": {
   784                      "ports": [
   785                          {
   786                              "name": "headless",
   787                              "protocol": "TCP",
   788                              "port": 55555,
   789                              "targetPort": 55555
   790                          }
   791                      ],
   792                      "selector": {
   793                          "com.docker.service.id": "test-various-port-ordering-by-target",
   794                          "com.docker.service.name": "by-target",
   795                          "com.docker.stack.namespace": "test-various-port-ordering"
   796                      },
   797                      "clusterIP": "None",
   798                      "type": "ClusterIP",
   799                      "sessionAffinity": "None"
   800                  },
   801                  "status": {
   802                      "loadBalancer": {}
   803                  }
   804              },
   805              "default/by-target-published": {
   806                  "metadata": {
   807                      "name": "by-target-published",
   808                      "namespace": "default",
   809                      "selfLink": "/api/v1/namespaces/default/services/by-target-published",
   810                      "uid": "e9aa3753-bc4b-11e8-a6d8-00155d0027c4",
   811                      "resourceVersion": "24677",
   812                      "creationTimestamp": "2018-09-19T20:38:06Z",
   813                      "labels": {
   814                          "com.docker.service.id": "test-various-port-ordering-by-target",
   815                          "com.docker.service.name": "by-target",
   816                          "com.docker.stack.namespace": "test-various-port-ordering"
   817                      },
   818                      "ownerReferences": [
   819                          {
   820                              "apiVersion": "compose.docker.com/v1beta2",
   821                              "kind": "Stack",
   822                              "name": "test-various-port-ordering",
   823                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   824                              "controller": true,
   825                              "blockOwnerDeletion": true
   826                          }
   827                      ]
   828                  },
   829                  "spec": {
   830                      "ports": [
   831                          {
   832                              "name": "81-tcp",
   833                              "protocol": "TCP",
   834                              "port": 81,
   835                              "targetPort": 80,
   836                              "nodePort": 31060
   837                          },
   838                          {
   839                              "name": "80-tcp",
   840                              "protocol": "TCP",
   841                              "port": 80,
   842                              "targetPort": 81,
   843                              "nodePort": 30985
   844                          }
   845                      ],
   846                      "selector": {
   847                          "com.docker.service.id": "test-various-port-ordering-by-target",
   848                          "com.docker.service.name": "by-target",
   849                          "com.docker.stack.namespace": "test-various-port-ordering"
   850                      },
   851                      "clusterIP": "10.97.15.159",
   852                      "type": "LoadBalancer",
   853                      "sessionAffinity": "None",
   854                      "externalTrafficPolicy": "Cluster"
   855                  },
   856                  "status": {
   857                      "loadBalancer": {}
   858                  }
   859              },
   860              "default/reverse": {
   861                  "metadata": {
   862                      "name": "reverse",
   863                      "namespace": "default",
   864                      "selfLink": "/api/v1/namespaces/default/services/reverse",
   865                      "uid": "e9af38a8-bc4b-11e8-a6d8-00155d0027c4",
   866                      "resourceVersion": "24684",
   867                      "creationTimestamp": "2018-09-19T20:38:06Z",
   868                      "labels": {
   869                          "com.docker.service.id": "test-various-port-ordering-reverse",
   870                          "com.docker.service.name": "reverse",
   871                          "com.docker.stack.namespace": "test-various-port-ordering"
   872                      },
   873                      "ownerReferences": [
   874                          {
   875                              "apiVersion": "compose.docker.com/v1beta2",
   876                              "kind": "Stack",
   877                              "name": "test-various-port-ordering",
   878                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   879                              "controller": true,
   880                              "blockOwnerDeletion": true
   881                          }
   882                      ]
   883                  },
   884                  "spec": {
   885                      "ports": [
   886                          {
   887                              "name": "headless",
   888                              "protocol": "TCP",
   889                              "port": 55555,
   890                              "targetPort": 55555
   891                          }
   892                      ],
   893                      "selector": {
   894                          "com.docker.service.id": "test-various-port-ordering-reverse",
   895                          "com.docker.service.name": "reverse",
   896                          "com.docker.stack.namespace": "test-various-port-ordering"
   897                      },
   898                      "clusterIP": "None",
   899                      "type": "ClusterIP",
   900                      "sessionAffinity": "None"
   901                  },
   902                  "status": {
   903                      "loadBalancer": {}
   904                  }
   905              },
   906              "default/reverse-published": {
   907                  "metadata": {
   908                      "name": "reverse-published",
   909                      "namespace": "default",
   910                      "selfLink": "/api/v1/namespaces/default/services/reverse-published",
   911                      "uid": "e9d2fde2-bc4b-11e8-a6d8-00155d0027c4",
   912                      "resourceVersion": "24699",
   913                      "creationTimestamp": "2018-09-19T20:38:06Z",
   914                      "labels": {
   915                          "com.docker.service.id": "test-various-port-ordering-reverse",
   916                          "com.docker.service.name": "reverse",
   917                          "com.docker.stack.namespace": "test-various-port-ordering"
   918                      },
   919                      "ownerReferences": [
   920                          {
   921                              "apiVersion": "compose.docker.com/v1beta2",
   922                              "kind": "Stack",
   923                              "name": "test-various-port-ordering",
   924                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   925                              "controller": true,
   926                              "blockOwnerDeletion": true
   927                          }
   928                      ]
   929                  },
   930                  "spec": {
   931                      "ports": [
   932                          {
   933                              "name": "81-tcp",
   934                              "protocol": "TCP",
   935                              "port": 81,
   936                              "targetPort": 81,
   937                              "nodePort": 32342
   938                          },
   939                          {
   940                              "name": "80-tcp",
   941                              "protocol": "TCP",
   942                              "port": 80,
   943                              "targetPort": 80,
   944                              "nodePort": 31921
   945                          }
   946                      ],
   947                      "selector": {
   948                          "com.docker.service.id": "test-various-port-ordering-reverse",
   949                          "com.docker.service.name": "reverse",
   950                          "com.docker.stack.namespace": "test-various-port-ordering"
   951                      },
   952                      "clusterIP": "10.101.212.240",
   953                      "type": "LoadBalancer",
   954                      "sessionAffinity": "None",
   955                      "externalTrafficPolicy": "Cluster"
   956                  },
   957                  "status": {
   958                      "loadBalancer": {}
   959                  }
   960              },
   961              "default/sorted": {
   962                  "metadata": {
   963                      "name": "sorted",
   964                      "namespace": "default",
   965                      "selfLink": "/api/v1/namespaces/default/services/sorted",
   966                      "uid": "ea06ea49-bc4b-11e8-a6d8-00155d0027c4",
   967                      "resourceVersion": "24715",
   968                      "creationTimestamp": "2018-09-19T20:38:06Z",
   969                      "labels": {
   970                          "com.docker.service.id": "test-various-port-ordering-sorted",
   971                          "com.docker.service.name": "sorted",
   972                          "com.docker.stack.namespace": "test-various-port-ordering"
   973                      },
   974                      "ownerReferences": [
   975                          {
   976                              "apiVersion": "compose.docker.com/v1beta2",
   977                              "kind": "Stack",
   978                              "name": "test-various-port-ordering",
   979                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
   980                              "controller": true,
   981                              "blockOwnerDeletion": true
   982                          }
   983                      ]
   984                  },
   985                  "spec": {
   986                      "ports": [
   987                          {
   988                              "name": "headless",
   989                              "protocol": "TCP",
   990                              "port": 55555,
   991                              "targetPort": 55555
   992                          }
   993                      ],
   994                      "selector": {
   995                          "com.docker.service.id": "test-various-port-ordering-sorted",
   996                          "com.docker.service.name": "sorted",
   997                          "com.docker.stack.namespace": "test-various-port-ordering"
   998                      },
   999                      "clusterIP": "None",
  1000                      "type": "ClusterIP",
  1001                      "sessionAffinity": "None"
  1002                  },
  1003                  "status": {
  1004                      "loadBalancer": {}
  1005                  }
  1006              },
  1007              "default/sorted-published": {
  1008                  "metadata": {
  1009                      "name": "sorted-published",
  1010                      "namespace": "default",
  1011                      "selfLink": "/api/v1/namespaces/default/services/sorted-published",
  1012                      "uid": "ea5f0b0f-bc4b-11e8-a6d8-00155d0027c4",
  1013                      "resourceVersion": "24720",
  1014                      "creationTimestamp": "2018-09-19T20:38:07Z",
  1015                      "labels": {
  1016                          "com.docker.service.id": "test-various-port-ordering-sorted",
  1017                          "com.docker.service.name": "sorted",
  1018                          "com.docker.stack.namespace": "test-various-port-ordering"
  1019                      },
  1020                      "ownerReferences": [
  1021                          {
  1022                              "apiVersion": "compose.docker.com/v1beta2",
  1023                              "kind": "Stack",
  1024                              "name": "test-various-port-ordering",
  1025                              "uid": "e9736ad2-bc4b-11e8-bb16-00155d0027c4",
  1026                              "controller": true,
  1027                              "blockOwnerDeletion": true
  1028                          }
  1029                      ]
  1030                  },
  1031                  "spec": {
  1032                      "ports": [
  1033                          {
  1034                              "name": "80-tcp",
  1035                              "protocol": "TCP",
  1036                              "port": 80,
  1037                              "targetPort": 80,
  1038                              "nodePort": 31394
  1039                          },
  1040                          {
  1041                              "name": "81-tcp",
  1042                              "protocol": "TCP",
  1043                              "port": 81,
  1044                              "targetPort": 81,
  1045                              "nodePort": 31626
  1046                          }
  1047                      ],
  1048                      "selector": {
  1049                          "com.docker.service.id": "test-various-port-ordering-sorted",
  1050                          "com.docker.service.name": "sorted",
  1051                          "com.docker.stack.namespace": "test-various-port-ordering"
  1052                      },
  1053                      "clusterIP": "10.109.185.185",
  1054                      "type": "LoadBalancer",
  1055                      "sessionAffinity": "None",
  1056                      "externalTrafficPolicy": "Cluster"
  1057                  },
  1058                  "status": {
  1059                      "loadBalancer": {}
  1060                  }
  1061              }
  1062          }
  1063      }
  1064  }