Modify user agent format with subsystem and is proxy configured information (#3116)

This commit is contained in:
Nikola Jokic
2023-12-08 13:16:29 +01:00
committed by GitHub
parent b08d533105
commit 202a97ab12
4 changed files with 50 additions and 9 deletions
+17 -9
View File
@@ -109,23 +109,31 @@ type ProxyFunc func(req *http.Request) (*url.URL, error)
type ClientOption func(*Client)
type UserAgentInfo struct {
Version string
CommitSHA string
// Version is the version of the controller
Version string
// CommitSHA is the git commit SHA of the controller
CommitSHA string
// ScaleSetID is the ID of the scale set
ScaleSetID int
// HasProxy is true if the controller is running behind a proxy
HasProxy bool
// Subsystem is the subsystem such as listener, controller, etc.
// Each system may pick its own subsystem name.
Subsystem string
}
func (u UserAgentInfo) String() string {
var scaleSetID = "NA"
scaleSetID := "NA"
if u.ScaleSetID > 0 {
scaleSetID = strconv.Itoa(u.ScaleSetID)
}
return fmt.Sprintf(
"actions-runner-controller/%s CommitSHA/%s ScaleSetID/%s",
u.Version,
u.CommitSHA,
scaleSetID,
)
proxy := "Proxy/disabled"
if u.HasProxy {
proxy = "Proxy/enabled"
}
return fmt.Sprintf("actions-runner-controller/%s (%s; %s) ScaleSetID/%s (%s)", u.Version, u.CommitSHA, u.Subsystem, scaleSetID, proxy)
}
func WithLogger(logger logr.Logger) ClientOption {