Frequently Asked Questions

Page last updated:

This topic provides guidance for common questions about configuring and running Pivotal Build Service.

How can I configure an image to pull from a private GitHub repository?

To configure an image to pull from a private GitHub repository:

  1. Create a personal access token by following the procedure in Creating a personal access token for the command line in the GitHub documentation.

  2. Create a YAML file with these values:

    project: PROJECT-NAME
    repository: GITHUB-REPOSITORY-URL
    username: PERSONAL-ACCESS-TOKEN
    password: PASSWORD
    

    Where:

    • PROJECT-NAME is the name of your Build Service project.
    • GITHUB-REPOSITORY-URL is the URL of your GitHub repository.
    • PERSONAL-ACCESS-TOKEN is the personal access token you generated in the previous step.
    • PASSWORD is the password for your GitHub repository.
  3. Create the secret by running:

    pb secrets git apply -f SECRET-YAML-FILE
    

    Where SECRET-YAML-FILE is the YAML file you created in the previous step.

Can I use ClusterBuilder with a private builder image?

No. Private images are only supported for builder types.

My GitHub repository is public and my first build started, but when I update my repository, new builds are not started.

If you configured a secret for GitHub, ensure that it is configured properly. For more information, see How can I configure an image to pull from a private GitHub repository?

Why do some builds fail with Error: failed to access run image: connect to repo store?

If the image is configured for the same registy that the Build Service was relocated to during installation, the credentials configured for the image require read access to the relocated images.

Applying images with local source code fails with the error message ERROR: uploading source: save image: ... http2: server sent GOAWAY and closed the connection

Configure your ingress controller so that the maximum field size is at least 8k and the maximum header size is at least 32k.

If you are using Nginx as your ingress controller, apply a ConfigMap configuration to update these settings:

kind: ConfigMap
apiVersion: v1
metadata:
  name: nginx-configuration
  namespace: ingress-nginx
  labels:
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx
data:
  http2-max-field-size: "8k"
  http2-max-header-size: "32k"