Skip to content

/apidocs.json in non-insecure mode returns invalid JSON #19

@ghost

Description

I start rudder like this:

$ docker run --mount type=bind,source=$HOME/.helm/repository/repositories.yaml,target=/root/.helm/repository/repositories.yaml,readonly -p 5000:5000 quay.io/acaleph/rudder
time="2018-09-25T19:36:13Z" level=info msg="Starting Rudder..." 
time="2018-09-25T19:36:13Z" level=info msg="CORS filter added." 
time="2018-09-25T19:36:13Z" level=info msg="OPTIONS filter added." 
time="2018-09-25T19:36:13Z" level=info msg="Auth filter added" 
time="2018-09-25T19:36:13Z" level=info msg="repo resource registered." 
time="2018-09-25T19:36:13Z" level=info msg="release resource registered." 
time="2018-09-25T19:36:13Z" level=info msg="[restful/swagger] listing is available at /apidocs.json" 
time="2018-09-25T19:36:13Z" level=info msg="[restful/swagger] /swagger/ is mapped to folder /opt/rudder/swagger" 
time="2018-09-25T19:36:13Z" level=info msg="Swagger enabled." 
time="2018-09-25T19:36:13Z" level=info msg="Rudder listening at: 0.0.0.0:5000"

On /apidocs.json rudder replies with invalid JSON (two documents in one):

$ http http://localhost:5000/apidocs.json
HTTP/1.1 200 OK
Content-Length: 642
Content-Type: application/json
Date: Tue, 25 Sep 2018 19:37:47 GMT

{
  "swaggerVersion": "1.2",
  "apis": [
   {
    "path": "/api/v1/repo",
    "description": "Helm repositories"
   },
   {
    "path": "/api/v1/releases",
    "description": "Helm releases"
   }
  ],
  "apiVersion": "dev",
  "info": {
   "title": "Rudder",
   "description": "RESTful proxy for the Tiller service"
  }
 }{
  "swaggerVersion": "1.2",
  "apis": [
   {
    "path": "/api/v1/repo",
    "description": "Helm repositories"
   },
   {
    "path": "/api/v1/releases",
    "description": "Helm releases"
   }
  ],
  "apiVersion": "dev",
  "info": {
   "title": "Rudder",
   "description": "RESTful proxy for the Tiller service"
  }
 }

When I pass --insecure to rudder, it replies with healthy JSON:

$ docker run --mount type=bind,source=$HOME/.helm/repository/repositories.yaml,target=/root/.helm/repository/repositories.yaml,readonly -p 5000:5000 quay.io/acaleph/rudder --insecure
time="2018-09-25T19:38:47Z" level=info msg="Starting Rudder..." 
time="2018-09-25T19:38:47Z" level=info msg="CORS filter added." 
time="2018-09-25T19:38:47Z" level=info msg="OPTIONS filter added." 
time="2018-09-25T19:38:47Z" level=info msg="repo resource registered." 
time="2018-09-25T19:38:47Z" level=info msg="release resource registered." 
time="2018-09-25T19:38:47Z" level=info msg="[restful/swagger] listing is available at /apidocs.json" 
time="2018-09-25T19:38:47Z" level=info msg="[restful/swagger] /swagger/ is mapped to folder /opt/rudder/swagger" 
time="2018-09-25T19:38:47Z" level=info msg="Swagger enabled." 
time="2018-09-25T19:38:47Z" level=info msg="Rudder listening at: 0.0.0.0:5000"
$ http http://localhost:5000/apidocs.json
HTTP/1.1 200 OK
Content-Length: 321
Content-Type: application/json
Date: Tue, 25 Sep 2018 19:39:16 GMT

{
    "apiVersion": "dev",
    "apis": [
        {
            "description": "Helm repositories",
            "path": "/api/v1/repo"
        },
        {
            "description": "Helm releases",
            "path": "/api/v1/releases"
        }
    ],
    "info": {
        "description": "RESTful proxy for the Tiller service",
        "title": "Rudder"
    },
    "swaggerVersion": "1.2"
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions