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 }