django-qsessions icon indicating copy to clipboard operation
django-qsessions copied to clipboard

Deck shows differences with route that have more than 3 methods defined

Open gchristidis opened this issue 2 years ago • 9 comments

It appears that deck (v 1.8.2) does not like having more than 3 methods defined in a route.

The following yaml shows the issue with a route with more than 3 methods, i have used 2 select tags as thats what i am using

_format_version: '1.1'
_info:
  select_tags:
  - test
  - route
routes:
- methods:
  - GET
  - DELETE
  - POST
  - PUT
  - PATCH
  name: test_route
  https_redirect_status_code: 426
  path_handling: v1

Running a deck sync creates the route but when you run a diff or a sync again it shows its updating the route but with no change flags (+-) on any line. Looking at the output closely you see its only showing 3 elements in the methods.

updating route test_route {
   "https_redirect_status_code": 426,
   "id": "985c5808-f55f-4766-932d-d091e89abfc2",
   "methods": [
     "GET",
     "PATCH",
     "POST",
   ],
   "name": "test_route",
   "path_handling": "v1",
   "preserve_host": false,
   "protocols": [
     "http",
     "https"
   ],
   "regex_priority": 0,
   "strip_path": false,
   "tags": [
     "test",
   ]
 }

Summary:
  Created: 0
  Updated: 1
  Deleted: 0

Looking at the route from the admin api you see all the methods

{
  "strip_path": false,
  "tags": [
    "route",
    "test"
  ],
  "paths": null,
  "destinations": null,
  "headers": null,
  "protocols": [
    "http",
    "https"
  ],
  "created_at": 1633605274,
  "snis": null,
  "service": null,
  "name": "test_route",
  "methods": [
    "DELETE",
    "GET",
    "PATCH",
    "POST",
    "PUT"
  ],
  "preserve_host": false,
  "regex_priority": 0,
  "updated_at": 1633605274,
  "sources": null,
  "id": "985c5808-f55f-4766-932d-d091e89abfc2",
  "https_redirect_status_code": 426,
  "hosts": null,
  "path_handling": "v1"
}

gchristidis avatar Oct 07 '21 11:10 gchristidis