Gaffer icon indicating copy to clipboard operation
Gaffer copied to clipboard

New Operation to get Gaffer version

Open GCHQDeveloper314 opened this issue 9 months ago • 0 comments

Describe the new feature you'd like A new Gaffer Operation to get the version of Gaffer which an instance is running.

Why do you want this feature? An endpoint for this was added to the REST APIs (in #2837). However this only gets the version of Gaffer for the endpoint which a user is interacting with directly, it doesn't provided a way to get the version of remote Gaffer instances which operations might be proxied to.

In this diagram, the current solution doesn't allow for fetching the version of Gaffer used in instance B via instance A:

graph LR
    subgraph "Gaffer Instance A (v2.1.0)"
    direction LR
    AF((Federated A)) -- ID=remoteProxy --> AP((Proxy A))
    AF -- ID=localStore --> AA((Accumulo A))
    end
    AP --> BF((Fed Store B))
    subgraph "Gaffer Instance B (v2.0.0)"
    BF -- ID=store1 --> BA1((Accumulo B1))
    BF -- ID=store2 --> BA2((Accumulo B2))
    end

Describe alternatives you've considered Sending the request directly to the REST API of each instance in the diagram above would work. But this might not be possible depending of network/firewall setup.

Additional context This should use a similar approach to acquire the version information as used in #2837. Ideally refactoring to avoid duplication between the endpoint which already does this.

When this is complete, an issue should also be raised on gaffer-doc to add documentation for the new operation.

GCHQDeveloper314 avatar Sep 13 '23 08:09 GCHQDeveloper314