Categorygithub.com/redhatinsights/rhc
modulepackage
0.0.0-20241007084628-ff915cbfc1f6
Repository: https://github.com/redhatinsights/rhc.git
Documentation: pkg.go.dev

# README

rhc is a simple, one-step front-end client for remote host configured services. It is built to be an alternative client to subscription-manager, insights-client, and any other client utility that enables connecting a system to Red Hat services.

It currently performs 3 steps when it connects a system:

  1. Registers the system with Red Hat Subscription Management. If the system is already registered, this step is a noop and it moves to the next step.
  2. Registers the system with Red Hat Insights. If the system is already registered, this step is a noop and it moves to the next step.
  3. Activate the yggdrasil (or branded rhcd) service.

Likewise, when rhc is disconnecting a system, it performs the steps in descending order.

  1. Deactivates the yggdrasil (or branded rhcd) service.
  2. Unregisters the system from Red Hat Insights.
  3. Unregisters the system from Red Hat Subscription Management.

rhc (the front-end client) is not the same thing as yggdrasil. rhc began as a program within the yggdrasil project, but has since been forked out. rhc still has a soft dependency on yggdrasil; yggdrasil provides rhcd (or yggd), the service that rhc activates as the last step in its connection process.

Non-goals

  • rhc will never be a 100% compatible drop-in replacement for subscription-manager, insights-client, or any other Red Hat connected services command-line utility.
  • Complexity; rhc is deliberately designed to be simple, and as "hands-off" as possible.

# Functions

BashComplete prints all commands, subcommands and flags to the application writer.
BashCompleteCommand prints all visible flag options for the given command, and then recursively calls itself on each subcommand.
CanonicalFactsFromMap creates a CanonicalFacts struct from the key-value pairs in a map.
No description provided by the author
GetCanonicalFacts attempts to construct a CanonicalFacts struct by collecting data from the localhost.
GuessAPIURL gets the API server URL based on, insights-client.conf and rhsm.conf.
PrintFlagNames prints the long and short names of each flag in the slice.

# Variables

Installation directory prefix and paths.
Installation directory prefix and paths.
Installation directory prefix and paths.
Installation directory prefix and paths.
Installation directory prefix and paths.
Installation directory prefix and paths.
Installation directory prefix and paths.
LongName is used in file and directory names.
Installation directory prefix and paths.
Installation directory prefix and paths.
Provider is used when constructing user-facing string output to identify the agency providing the connection broker.
Installation directory prefix and paths.
ServiceName us used for manipulating of yggdrasil service It can be branded to rhcd on RHEL.
ShortName is used as a prefix to binary file names.
Installation directory prefix and paths.
TopicPrefix is used as a prefix to all MQTT topics in the client.
Version is the version as described by git.

# Structs

CanonicalFacts contain several identification strings that collectively combine to uniquely identify a system to the platform services.
No description provided by the author
ConnectResult is structure holding information about results of connect command.
DisconnectResult is structure holding information about result of disconnect command.
An InvalidValueTypeError represents an error when serializing data into an unsupported destination.
No description provided by the author
Organization is structure containing information about RHSM organization (sometimes called owner) JSON document returned from candlepin server can have the following format.
RHSMError is used for parsing JSON document returned by D-Bus methods.
SystemStatus is structure holding information about system status When more file format is supported, then add more tags for fields like xml:"hostname".