plugsy / core

A simple, pluggable dashboard and status page
161 stars 4 forks source link

Agent - issue #27

Closed ma-karai closed 3 years ago

ma-karai commented 3 years ago

For me the agent mode does not work.

I have two plugsy systems running and the one has a config.json containing the agent config, with the proper ip addresses set. config.json:

{
  "$schema": "https://github.com/plugsy/core/releases/download/v4.0.0/config-schema.json",
  "agent": {
    "endpoint": "http://192.168.0.40:3000/graphql"
  }
}

My log states this:

7/11/2021 7:41:05 AMerror:   ┃ [14083]                         config: { '$ref': '#/definitions/RawConnectionConfig' },
7/11/2021 7:41:05 AMerror:   ┃ [14084]                         type: { '$ref': '#/definitions/RAW_CONNECTOR_TYPE' }
7/11/2021 7:41:05 AMerror:   ┃ [14085]                       },
7/11/2021 7:41:05 AMerror:   ┃ [14086]                       required: [ 'config', 'type' ],
7/11/2021 7:41:05 AMerror:   ┃ [14087]                       type: 'object'
7/11/2021 7:41:05 AMerror:   ┃ [14088]                     },
7/11/2021 7:41:05 AMerror:   ┃ [14089]                     {
7/11/2021 7:41:05 AMerror:   ┃ [14090]                       properties: {
7/11/2021 7:41:05 AMerror:   ┃ [14091]                         config: { '$ref': '#/definitions/WebsiteConnectionConfig' },
7/11/2021 7:41:05 AMerror:   ┃ [14092]                         type: { '$ref': '#/definitions/WEBSITE_CONNECTOR_TYPE' }
7/11/2021 7:41:05 AMerror:   ┃ [14093]                       },
7/11/2021 7:41:05 AMerror:   ┃ [14094]                       required: [ 'config', 'type' ],
7/11/2021 7:41:05 AMerror:   ┃ [14095]                       type: 'object'
7/11/2021 7:41:05 AMerror:   ┃ [14096]                     }
7/11/2021 7:41:05 AMerror:   ┃ [14097]                   ]
7/11/2021 7:41:05 AMerror:   ┃ [14098]                 },
7/11/2021 7:41:05 AMerror:   ┃ [14099]                 type: 'array'
7/11/2021 7:41:05 AMerror:   ┃ [14100]               }
7/11/2021 7:41:05 AMerror:   ┃ [14101]             ]
7/11/2021 7:41:05 AMerror:   ┃ [14102]           },
7/11/2021 7:41:05 AMerror:   ┃ [14103]           loggingLevel: { type: 'string' },
7/11/2021 7:41:05 AMerror:   ┃ [14104]           theme: { '$ref': '#/definitions/ThemeConfig' }
7/11/2021 7:41:05 AMerror:   ┃ [14105]         },
7/11/2021 7:41:05 AMerror:   ┃ [14106]         required: [ 'connectors' ],
7/11/2021 7:41:05 AMerror:   ┃ [14107]         type: 'object'
7/11/2021 7:41:05 AMerror:   ┃ [14108]       },
7/11/2021 7:41:05 AMerror:   ┃ [14109]       instance: { '$schema': './server/config-schema.json', agent: { endpoint: 'http://192.168.0.32:3000/graphql' } },
7/11/2021 7:41:05 AMerror:   ┃ [14110]       name: 'required',
7/11/2021 7:41:05 AMerror:   ┃ [14111]       argument: 'connectors',
7/11/2021 7:41:05 AMerror:   ┃ [14112]       stack: 'instance requires property "connectors"'
7/11/2021 7:41:05 AMerror:   ┃ [14113]     }
7/11/2021 7:41:05 AMerror:   ┃ [14114]   ]
7/11/2021 7:41:05 AMerror:   ┗ [14115] }
7/11/2021 7:41:05 AMerror:   ┏ You can edit your config file to trigger a reload +1s
7/11/2021 7:41:05 AMerror:   ┗ [1] { component: 'getServerConfig', error: '' }
7/11/2021 7:41:05 AMinfo:    ▪ > Server listening at http://localhost:3000 as production +14ms
Inlustra commented 3 years ago

If you're using a configuration file, you currently have to include the connectors in your configuration.

If you want to use the default docker configuration make sure you include it as a connector in the configuration file.

The examples show what that connectors object should look like.

This is worth pointing out though, the next version will have the agent as a completely separate image that you can use without needing this. On 11 Jul 2021, 12:02 PM +0200, makarai @.***>, wrote:

For me the agent mode does not work. I have two plugsy systems running and the one has a config.json containing the agent config, with the proper ip addresses set. config.json: {

"$schema": "https://github.com/plugsy/core/releases/download/v4.0.0/config-schema.json",

"agent": {

"endpoint": "http://192.168.0.40:3000/graphql"

}

}

My log states this: 7/11/2021 7:41:05 AMerror: ┃ [14083] config: { '$ref': '#/definitions/RawConnectionConfig' },

7/11/2021 7:41:05 AMerror: ┃ [14084] type: { '$ref': '#/definitions/RAW_CONNECTOR_TYPE' }

7/11/2021 7:41:05 AMerror: ┃ [14085] },

7/11/2021 7:41:05 AMerror: ┃ [14086] required: [ 'config', 'type' ],

7/11/2021 7:41:05 AMerror: ┃ [14087] type: 'object'

7/11/2021 7:41:05 AMerror: ┃ [14088] },

7/11/2021 7:41:05 AMerror: ┃ [14089] {

7/11/2021 7:41:05 AMerror: ┃ [14090] properties: {

7/11/2021 7:41:05 AMerror: ┃ [14091] config: { '$ref': '#/definitions/WebsiteConnectionConfig' },

7/11/2021 7:41:05 AMerror: ┃ [14092] type: { '$ref': '#/definitions/WEBSITE_CONNECTOR_TYPE' }

7/11/2021 7:41:05 AMerror: ┃ [14093] },

7/11/2021 7:41:05 AMerror: ┃ [14094] required: [ 'config', 'type' ],

7/11/2021 7:41:05 AMerror: ┃ [14095] type: 'object'

7/11/2021 7:41:05 AMerror: ┃ [14096] }

7/11/2021 7:41:05 AMerror: ┃ [14097] ]

7/11/2021 7:41:05 AMerror: ┃ [14098] },

7/11/2021 7:41:05 AMerror: ┃ [14099] type: 'array'

7/11/2021 7:41:05 AMerror: ┃ [14100] }

7/11/2021 7:41:05 AMerror: ┃ [14101] ]

7/11/2021 7:41:05 AMerror: ┃ [14102] },

7/11/2021 7:41:05 AMerror: ┃ [14103] loggingLevel: { type: 'string' },

7/11/2021 7:41:05 AMerror: ┃ [14104] theme: { '$ref': '#/definitions/ThemeConfig' }

7/11/2021 7:41:05 AMerror: ┃ [14105] },

7/11/2021 7:41:05 AMerror: ┃ [14106] required: [ 'connectors' ],

7/11/2021 7:41:05 AMerror: ┃ [14107] type: 'object'

7/11/2021 7:41:05 AMerror: ┃ [14108] },

7/11/2021 7:41:05 AMerror: ┃ [14109] instance: { '$schema': './server/config-schema.json', agent: { endpoint: 'http://192.168.0.32:3000/graphql' } },

7/11/2021 7:41:05 AMerror: ┃ [14110] name: 'required',

7/11/2021 7:41:05 AMerror: ┃ [14111] argument: 'connectors',

7/11/2021 7:41:05 AMerror: ┃ [14112] stack: 'instance requires property "connectors"'

7/11/2021 7:41:05 AMerror: ┃ [14113] }

7/11/2021 7:41:05 AMerror: ┃ [14114] ]

7/11/2021 7:41:05 AMerror: ┗ [14115] }

7/11/2021 7:41:05 AMerror: ┏ You can edit your config file to trigger a reload +1s

7/11/2021 7:41:05 AMerror: ┗ [1] { component: 'getServerConfig', error: '' }

7/11/2021 7:41:05 AMinfo: ▪ > Server listening at http://localhost:3000 as production +14ms

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

Inlustra commented 3 years ago

Apologies, I realise the docs does not accurately explain this. The configuration is verified to match the schema file you've noted in $schema before allowing it into the application.

The minimum you'll need for agent mode is:

{
   "agent": {
    "endpoint": "http://192.168.0.40:3000/graphql"
  },
  "connectors": [
    {
      "type": "DOCKER",
      "config": {}
    },
  ]
}

I'll update the docs and remove this requirement in V4, thanks for testing this! As I've mentioned before, Agent mode isn't being used massively right now.

ma-karai commented 3 years ago
{
   "agent": {
    "endpoint": "http://192.168.0.40:3000/graphql"
  },
  "connectors": [
    {
      "type": "DOCKER",
      "config": {}
    }
  ]
}

got it to work! thanks