List CA pool

List all CA pools in the given project and location.

Code sample

Java

To authenticate to CA Service, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.


import com.google.cloud.security.privateca.v1.CaPool;
import com.google.cloud.security.privateca.v1.CertificateAuthorityServiceClient;
import com.google.cloud.security.privateca.v1.LocationName;
import java.io.IOException;

public class ListCaPools {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    // location: For a list of locations, see:
    // https://cloud.google.com/certificate-authority-service/docs/locations
    String project = "your-project-id";
    String location = "ca-location";
    listCaPools(project, location);
  }

  // List all CA pools present in the given project and location.
  public static void listCaPools(String project, String location) throws IOException {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the `certificateAuthorityServiceClient.close()` method on the client to safely
    // clean up any remaining background resources.
    try (CertificateAuthorityServiceClient certificateAuthorityServiceClient =
        CertificateAuthorityServiceClient.create()) {

      // Set the Location Name which contains project and location of the pool.
      LocationName locationName =
          LocationName.newBuilder().setProject(project).setLocation(location).build();

      String caPoolName = "";
      System.out.println("Available CA pools: ");

      // List the CA pools.
      for (CaPool caPool :
          certificateAuthorityServiceClient.listCaPools(locationName).iterateAll()) {
        caPoolName = caPool.getName();
        // caPoolName represents the full resource name of the
        // format 'projects/{project-id}/locations/{location}/ca-pools/{ca-pool-id}'.
        // Hence stripping it down to just CA pool id.
        System.out.println(
            caPoolName.substring(caPoolName.lastIndexOf("/") + 1) + " " + caPool.isInitialized());
      }
    }
  }
}

Python

To authenticate to CA Service, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.

import google.cloud.security.privateca_v1 as privateca_v1


def list_ca_pools(project_id: str, location: str) -> None:
    """
    List all CA pools present in the given project and location.

    Args:
        project_id: project ID or project number of the Cloud project you want to use.
        location: location you want to use. For a list of locations, see: https://cloud.google.com/certificate-authority-service/docs/locations.
    """

    caServiceClient = privateca_v1.CertificateAuthorityServiceClient()

    location_path = caServiceClient.common_location_path(project_id, location)

    request = privateca_v1.ListCaPoolsRequest(parent=location_path)

    print("Available CA pools:")

    for ca_pool in caServiceClient.list_ca_pools(request=request):
        ca_pool_name = ca_pool.name
        # ca_pool.name represents the full resource name of the
        # format 'projects/{project-id}/locations/{location}/ca-pools/{ca-pool-name}'.
        # Hence stripping it down to just pool name.
        print(caServiceClient.parse_ca_pool_path(ca_pool_name)["ca_pool"])

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser.