Proto commits in isc-projects/stork

These 33 commits are when the Protocol Buffers files have changed:

Commit:577c539
Author:Marcin Siodelski
Committer:Piotrek Zadroga

[#1669] New gRPC call to fetch zones from agent

Commit:8091d98
Author:Marcin Siodelski
Committer:Piotrek Zadroga

[#1669] Populate zones from agents to server

Commit:f03d14c
Author:Marcin Siodelski
Committer:Piotrek Zadroga

[#1669] Comments in the api file

The documentation is generated from this commit.

Commit:3cbe0db
Author:Slawek Figiel
Committer:Slawek Figiel

[#1624] Refactor to HTTP client

Commit:b685c08
Author:Andrei Pavel
Committer:Andrei Pavel

[#1566] Fix typos

Commit:4bded27
Author:Slawek Figiel
Committer:Slawek Figiel

[#1059] Remove existing agent compression

Commit:24a53b0
Author:Slawek Figiel
Committer:Slawek Figiel

[#945] Return credentials status from Agent

Commit:f0fc3a9
Author:Slawek Figiel
Committer:Slawek Figiel

[#709] Single point change in api

Commit:fab83a2
Author:Slawek Figiel
Committer:Slawek Figiel

[#709] Remove unecessary blank line

Commit:e1862f8
Author:Marcin Siodelski
Committer:Marcin Siodelski

[#652] Bump up protoc versions

Commit:fa6364d
Author:Slawek Figiel
Committer:Slawek Figiel

[#347] Remove unused parameters

Commit:0db998d
Author:Slawek Figiel
Committer:Slawek Figiel

[#527] Fetch SSL status from Kea and use HTTPS

Commit:5af66c8
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#481] agent server TLS - part 2 - added code for registering a machine in the server and performing key and certs exchange but ut us not used fully yet - added server-token and agent-token based agent authorizations but for now it is disabled - added API for presenting and regenerating server token but it is not used in UI yet - updated content of reference agent.env agent config file

Commit:d55f567
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#398] fixed problem with adding kea with 4500 subnets

Commit:1bfdb00
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#344] addressed review issues

Commit:142ffbc
Author:Marcin Siodelski
Committer:Michal Nowikowski

[#344] Tailing log file Added agent function to tail the log file and the corresponding server side function.

Commit:ebaf081
Author:Marcin Siodelski
Committer:Michal Nowikowski

[#344] Fix tailing beyond file size

Commit:6e0fab1
Author:Matthijs Mekking
Committer:Matthijs Mekking

[#64] Implement agentcomm fwd stats request Introduce ForwardToNamedStats that handles forwarding statistics request to named statistics-channel and returning the response to the server.

Commit:7100731
Author:Matthijs Mekking
Committer:Matthijs Mekking

[#64] Introduce agent.ForwardToNamedStats Introduce a Stork agent function to forward a statistics request to the named daemon statistics-channel. The statistics-channel access point is, just like with Kea Control Agent, represented by an URL. This reuses the CAClient. The CAClient has a Kea (Control Agent) specific name but should be renamed because it is now also used for the BIND 9 named statistics-channel.

Commit:a1292f3
Author:Matthijs Mekking
Committer:Matthijs Mekking

[#170] Change api/agent.proto Change the api to allow multiple access points per app.

Commit:d9088df
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#162] fixed args naming in agent.proto in ForwardRndcCommand

Commit:b632d82
Author:Matthijs Mekking
Committer:Matthijs Mekking

[#130] Forward rndc command from server Redesign such that the server will issue the command to the agent and the agent will forward the command to rndc (that in its turn will contact named). This moves logic from the agent to the server, and will require new rpc Messages.

Commit:d67f0ff
Author:Matthijs Mekking
Committer:Matthijs Mekking

[#130] Add control key to app Add `CtrlKey` to App structure and model. This is a generic application parameter to interact with the application, similar to control address and control port. Kea in principle does not use the `CtrlKey` and will leave it empty. For BIND 9 it is optional, but common.

Commit:1b12d39
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#136] added storing kea config in db Agent monitor has been streamlined. It detects only a presence of application. Now Stork server when learns that there is a new app then calls agent for extra information. In case of Kea app it invokes a series of ForwardToKeaOverHTTP agent calls which are passed to Kea CA. Server asks for versions, state and configuration of Kea daemons. In case of BIND 9 app server calls GetBind9State which gathers BIND 9 specific information e.g. named version. Getting Kea hooks information is reduced. Now the data is retrieved from db which is stored there in the phase described above.

Commit:9e05cf1
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#114] fixes for golangci-lint tool Changes include: * automatic fixes by golangci-lint * manual fixes for golangci-lint * removed all globals * added CAClient to avoid httpClient11 global, this involves creating NewStorkAgent function, and replaces client.go * reorganized imports, now they are in the following order (separated by empty line): stdlib imports, 3rd party packages, our stork packages * all acronyms are using capital letters now (eg. URL instead of Url) * replaces app types from explicit strings like "kea" to consts like KeaAppType * machineToRestApi func does not return error anymore so error handling has been removed * split Serve function from restservice.go to reduce its complexity * reordered return values so error is always last

Commit:ba5d1a9
Author:Matthijs Mekking
Committer:Matthijs Mekking

[#106] add Bind9 application Add the Bind9 application to Stork agent, api, and backend. This is almost a copy of the kea application but changed it to be Bind9 specific. Add some unit tests to make rake happy, and ignore low test coverage for updateMachineFields[Bind9,Kea] for now.

Commit:6af3c36
Author:Marcin Siodelski
Committer:Marcin Siodelski

[#110] Control address returned from agent

Commit:b44f0c0
Author:Marcin Siodelski
Committer:Marcin Siodelski

[#109] Implemented forwarding Kea command Added new GRPC command to the Agent, to forward the Kea command to the Kea instance over HTTP. The command name is ForwardToKeaOverHttp to highlight that it is intended for sending the commands over Kea's Control Agent (HTTP). In the future it is envisaged that we will also have ForwardToKeaOverUnix which will be for forwarding the command over the UNIX domain socket. This future command will lack the service list and the response will be slightly different, therefore it makes sense to split them into two commands.

Commit:0b09538
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#24] renamed service to app

Commit:106e480
Author:Michal Nowikowski
Committer:Matthijs Mekking

[#24] added basic support for services - added detecting kea in agent - added storing service information in database - added in webui presenting services list and information about particular service

Commit:8b20c83
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#23] added initial getting list of machines

Commit:951bceb
Author:Michal Nowikowski

[#70] improved gRPC API definition

Commit:2145d66
Author:Michal Nowikowski
Committer:Michal Nowikowski

[#26] prepared initial agent with gRPC and connected ReST api with agents part - server connects to agents using gRPC - added defining commandline arguments to agent and server - improved CI, switched to our own docker image for gitlab ci pipelines