Connect Gateway API C++ Client Library

An idiomatic C++ client library for the Connect Gateway API .

The Connect Gateway service allows connectivity from external parties to connected Kubernetes clusters.

While this library is GA, please note that the Google Cloud C++ client libraries do notfollow Semantic Versioning .

Quickstart

The following shows the code that you'll run in the google/cloud/gkeconnect/quickstart/ directory, which should give you a taste of the Connect Gateway API C++ client library API.

 #include "google/cloud/gkeconnect/gateway/v1/gateway_control_client.h"
#include "google/cloud/gkeconnect/gateway/v1/gateway_control_rest_connection.h"
#include "google/cloud/location.h"
#include <iostream>

int main(int argc, char* argv[]) try {
  if (argc != 4) {
    std::cerr << "Usage: " << argv[0]
              << " project-id location-id membership-id\n";
    return 1;
  }

  auto const location = google::cloud::Location(argv[1], argv[2]);

  namespace gkeconnect = ::google::cloud::gkeconnect_gateway_v1;
  auto client = gkeconnect::GatewayControlClient(
      gkeconnect::MakeGatewayControlConnectionRest());

  google::cloud::gkeconnect::gateway::v1::GenerateCredentialsRequest request;
  request.set_name(location.FullName() + "/memberships/" + argv[3]);

  auto response = client.GenerateCredentials(request);
  if (!response) throw std::move(response).status();
  std::cout << response->DebugString() << "\n";

  return 0;
} catch (google::cloud::Status const& status) {
  std::cerr << "google::cloud::Status thrown: " << status << "\n";
  return 1;
} 

Main classes

The main class in this library is gkeconnect_gateway_v1::GatewayControlClient . All RPCs are exposed as member functions of this class. Other classes provide helpers, configuration parameters, and infrastructure to mock gkeconnect_gateway_v1::GatewayControlClient when testing your application.

More Information

Design a Mobile Site
View Site in Mobile | Classic
Share by: