# Cloud Build API . projects . githubEnterpriseConfigs

## Instance Methods

Close httplib2 connections.

Create an association between a GCP project and a GitHub Enterprise server.

Delete an association between a GCP project and a GitHub Enterprise server.

Retrieve a GitHubEnterpriseConfig.

List all GitHubEnterpriseConfigs for a given project.

Update an association between a GCP project and a GitHub Enterprise server.

### Method Details

`close()`

    Close httplib2 connections.

`create(parent, body=None, gheConfigId=None, projectId=None, x__xgafv=None)`

    Create an association between a GCP project and a GitHub Enterprise server.

    Args:
      parent: string, Name of the parent project. For example: projects/{$project_number} or projects/{$project_id} (required)
      body: object, The request body.
        The object takes the form of:

    { # GitHubEnterpriseConfig represents a configuration for a GitHub Enterprise server.
      "appId": "A String", # Required. The GitHub app id of the Cloud Build app on the GitHub Enterprise server.
      "createTime": "A String", # Output only. Time when the installation was associated with the project.
      "displayName": "A String", # Name to display for this config.
      "hostUrl": "A String", # The URL of the github enterprise host the configuration is for.
      "name": "A String", # Optional. The full resource name for the GitHubEnterpriseConfig For example: "projects/{$project_id}/githubEnterpriseConfigs/{$config_id}"
      "peeredNetwork": "A String", # Optional. The network to be used when reaching out to the GitHub Enterprise server. The VPC network must be enabled for private service connection. This should be set if the GitHub Enterprise server is hosted on-premises and not reachable by public internet. If this field is left empty, no network peering will occur and calls to the GitHub Enterprise server will be made over the public internet. Must be in the format `projects/{project}/global/networks/{network}`, where {project} is a project number or id and {network} is the name of a VPC network in the project.
      "secrets": { # GitHubEnterpriseSecrets represents the names of all necessary secrets in Secret Manager for a GitHub Enterprise server. Format is: projects//secrets/. # Names of secrets in Secret Manager.
        "oauthClientIdName": "A String", # The resource name for the OAuth client ID secret in Secret Manager.
        "oauthClientIdVersionName": "A String", # The resource name for the OAuth client ID secret version in Secret Manager.
        "oauthSecretName": "A String", # The resource name for the OAuth secret in Secret Manager.
        "oauthSecretVersionName": "A String", # The resource name for the OAuth secret secret version in Secret Manager.
        "privateKeyName": "A String", # The resource name for the private key secret.
        "privateKeyVersionName": "A String", # The resource name for the private key secret version.
        "webhookSecretName": "A String", # The resource name for the webhook secret in Secret Manager.
        "webhookSecretVersionName": "A String", # The resource name for the webhook secret secret version in Secret Manager.
      },
      "sslCa": "A String", # Optional. SSL certificate to use for requests to GitHub Enterprise.
      "webhookKey": "A String", # The key that should be attached to webhook calls to the ReceiveWebhook endpoint.
    }

      gheConfigId: string, Optional. The ID to use for the GithubEnterpriseConfig, which will become the final component of the GithubEnterpriseConfig's resource name. ghe_config_id must meet the following requirements: + They must contain only alphanumeric characters and dashes. + They can be 1-64 characters long. + They must begin and end with an alphanumeric character
      projectId: string, ID of the project.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
      "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
      "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
      "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    }

`delete(name, configId=None, projectId=None, x__xgafv=None)`

    Delete an association between a GCP project and a GitHub Enterprise server.

    Args:
      name: string, This field should contain the name of the enterprise config resource. For example: "projects/{$project_id}/githubEnterpriseConfigs/{$config_id}" (required)
      configId: string, Unique identifier of the `GitHubEnterpriseConfig`
      projectId: string, ID of the project
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
      "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
      "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
      "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    }

`get(name, configId=None, projectId=None, x__xgafv=None)`

    Retrieve a GitHubEnterpriseConfig.

    Args:
      name: string, This field should contain the name of the enterprise config resource. For example: "projects/{$project_id}/githubEnterpriseConfigs/{$config_id}" (required)
      configId: string, Unique identifier of the `GitHubEnterpriseConfig`
      projectId: string, ID of the project
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # GitHubEnterpriseConfig represents a configuration for a GitHub Enterprise server.
      "appId": "A String", # Required. The GitHub app id of the Cloud Build app on the GitHub Enterprise server.
      "createTime": "A String", # Output only. Time when the installation was associated with the project.
      "displayName": "A String", # Name to display for this config.
      "hostUrl": "A String", # The URL of the github enterprise host the configuration is for.
      "name": "A String", # Optional. The full resource name for the GitHubEnterpriseConfig For example: "projects/{$project_id}/githubEnterpriseConfigs/{$config_id}"
      "peeredNetwork": "A String", # Optional. The network to be used when reaching out to the GitHub Enterprise server. The VPC network must be enabled for private service connection. This should be set if the GitHub Enterprise server is hosted on-premises and not reachable by public internet. If this field is left empty, no network peering will occur and calls to the GitHub Enterprise server will be made over the public internet. Must be in the format `projects/{project}/global/networks/{network}`, where {project} is a project number or id and {network} is the name of a VPC network in the project.
      "secrets": { # GitHubEnterpriseSecrets represents the names of all necessary secrets in Secret Manager for a GitHub Enterprise server. Format is: projects//secrets/. # Names of secrets in Secret Manager.
        "oauthClientIdName": "A String", # The resource name for the OAuth client ID secret in Secret Manager.
        "oauthClientIdVersionName": "A String", # The resource name for the OAuth client ID secret version in Secret Manager.
        "oauthSecretName": "A String", # The resource name for the OAuth secret in Secret Manager.
        "oauthSecretVersionName": "A String", # The resource name for the OAuth secret secret version in Secret Manager.
        "privateKeyName": "A String", # The resource name for the private key secret.
        "privateKeyVersionName": "A String", # The resource name for the private key secret version.
        "webhookSecretName": "A String", # The resource name for the webhook secret in Secret Manager.
        "webhookSecretVersionName": "A String", # The resource name for the webhook secret secret version in Secret Manager.
      },
      "sslCa": "A String", # Optional. SSL certificate to use for requests to GitHub Enterprise.
      "webhookKey": "A String", # The key that should be attached to webhook calls to the ReceiveWebhook endpoint.
    }

`list(parent, projectId=None, x__xgafv=None)`

    List all GitHubEnterpriseConfigs for a given project.

    Args:
      parent: string, Name of the parent project. For example: projects/{$project_number} or projects/{$project_id} (required)
      projectId: string, ID of the project
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # RPC response object returned by ListGithubEnterpriseConfigs RPC method.
      "configs": [ # A list of GitHubEnterpriseConfigs
        { # GitHubEnterpriseConfig represents a configuration for a GitHub Enterprise server.
          "appId": "A String", # Required. The GitHub app id of the Cloud Build app on the GitHub Enterprise server.
          "createTime": "A String", # Output only. Time when the installation was associated with the project.
          "displayName": "A String", # Name to display for this config.
          "hostUrl": "A String", # The URL of the github enterprise host the configuration is for.
          "name": "A String", # Optional. The full resource name for the GitHubEnterpriseConfig For example: "projects/{$project_id}/githubEnterpriseConfigs/{$config_id}"
          "peeredNetwork": "A String", # Optional. The network to be used when reaching out to the GitHub Enterprise server. The VPC network must be enabled for private service connection. This should be set if the GitHub Enterprise server is hosted on-premises and not reachable by public internet. If this field is left empty, no network peering will occur and calls to the GitHub Enterprise server will be made over the public internet. Must be in the format `projects/{project}/global/networks/{network}`, where {project} is a project number or id and {network} is the name of a VPC network in the project.
          "secrets": { # GitHubEnterpriseSecrets represents the names of all necessary secrets in Secret Manager for a GitHub Enterprise server. Format is: projects//secrets/. # Names of secrets in Secret Manager.
            "oauthClientIdName": "A String", # The resource name for the OAuth client ID secret in Secret Manager.
            "oauthClientIdVersionName": "A String", # The resource name for the OAuth client ID secret version in Secret Manager.
            "oauthSecretName": "A String", # The resource name for the OAuth secret in Secret Manager.
            "oauthSecretVersionName": "A String", # The resource name for the OAuth secret secret version in Secret Manager.
            "privateKeyName": "A String", # The resource name for the private key secret.
            "privateKeyVersionName": "A String", # The resource name for the private key secret version.
            "webhookSecretName": "A String", # The resource name for the webhook secret in Secret Manager.
            "webhookSecretVersionName": "A String", # The resource name for the webhook secret secret version in Secret Manager.
          },
          "sslCa": "A String", # Optional. SSL certificate to use for requests to GitHub Enterprise.
          "webhookKey": "A String", # The key that should be attached to webhook calls to the ReceiveWebhook endpoint.
        },
      ],
    }

`patch(name, body=None, updateMask=None, x__xgafv=None)`

    Update an association between a GCP project and a GitHub Enterprise server.

    Args:
      name: string, Optional. The full resource name for the GitHubEnterpriseConfig For example: "projects/{$project_id}/githubEnterpriseConfigs/{$config_id}" (required)
      body: object, The request body.
        The object takes the form of:

    { # GitHubEnterpriseConfig represents a configuration for a GitHub Enterprise server.
      "appId": "A String", # Required. The GitHub app id of the Cloud Build app on the GitHub Enterprise server.
      "createTime": "A String", # Output only. Time when the installation was associated with the project.
      "displayName": "A String", # Name to display for this config.
      "hostUrl": "A String", # The URL of the github enterprise host the configuration is for.
      "name": "A String", # Optional. The full resource name for the GitHubEnterpriseConfig For example: "projects/{$project_id}/githubEnterpriseConfigs/{$config_id}"
      "peeredNetwork": "A String", # Optional. The network to be used when reaching out to the GitHub Enterprise server. The VPC network must be enabled for private service connection. This should be set if the GitHub Enterprise server is hosted on-premises and not reachable by public internet. If this field is left empty, no network peering will occur and calls to the GitHub Enterprise server will be made over the public internet. Must be in the format `projects/{project}/global/networks/{network}`, where {project} is a project number or id and {network} is the name of a VPC network in the project.
      "secrets": { # GitHubEnterpriseSecrets represents the names of all necessary secrets in Secret Manager for a GitHub Enterprise server. Format is: projects//secrets/. # Names of secrets in Secret Manager.
        "oauthClientIdName": "A String", # The resource name for the OAuth client ID secret in Secret Manager.
        "oauthClientIdVersionName": "A String", # The resource name for the OAuth client ID secret version in Secret Manager.
        "oauthSecretName": "A String", # The resource name for the OAuth secret in Secret Manager.
        "oauthSecretVersionName": "A String", # The resource name for the OAuth secret secret version in Secret Manager.
        "privateKeyName": "A String", # The resource name for the private key secret.
        "privateKeyVersionName": "A String", # The resource name for the private key secret version.
        "webhookSecretName": "A String", # The resource name for the webhook secret in Secret Manager.
        "webhookSecretVersionName": "A String", # The resource name for the webhook secret secret version in Secret Manager.
      },
      "sslCa": "A String", # Optional. SSL certificate to use for requests to GitHub Enterprise.
      "webhookKey": "A String", # The key that should be attached to webhook calls to the ReceiveWebhook endpoint.
    }

      updateMask: string, Update mask for the resource. If this is set, the server will only update the fields specified in the field mask. Otherwise, a full update of the mutable resource fields will be performed.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
      "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
      "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
      "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    }