IBM Cloud Docs
FAQs for GitHub, GitLab, and Git Repos and Issue Tracking

FAQs for GitHub, GitLab, and Git Repos and Issue Tracking

Get answers to frequently asked questions about using GitHub, GitLab, and Git Repos and Issue Tracking.

Can I manage GitHub, GitLab, and Git Repos and Issue Tracking by using Terraform?

You can use Terraform to add GitHub, GitLab, and Git Repos and Issue Tracking tool integrations to a toolchain, to update those tool integrations, or to remove those tool integrations from a toolchain. For more information about working with the GitHub, GitLab, and Git Repos and Issue Tracking tool integrations, see Working with tool integrations and Creating toolchains with Git.

You might be able to use Terraform to work directly with some GitHub and GitLab repositories (repos). For more information about the GitHub Terraform provider, see the GitHub Provider documentation. For more information about the GitLab Terraform provider, see the GitLab Provider documentation.

Can I manage GitHub, GitLab, and Git Repos and Issue Tracking by using an API?

You can use HTTP APIs or selected programming language SDKs to add GitHub, GitLab, and Git Repos and Issue Tracking tool integrations to a toolchain, to update those tool integrations, or to remove those tool integrations from a toolchain. For more information about working with the GitHub, GitLab, and Git Repos and Issue Tracking tool integrations, see Working with tool integrations and Creating toolchains with Git.

You might be able to use APIs to work directly with some repos. For more information about the GitHub API, see REST API. For more information about the GitLab API, see REST API.

What is the difference between the initialization block and the parameters block in Git tool integration Terraform resources?

In a Git tool integration Terraform resource, the initialization block consists of arguments that control how the tool integration prepares and binds itself to a specific target repo. If you change any of the arguments in the initialization block, Terraform deletes the tool integration from the toolchain and creates a replacement tool integration. All of the arguments in the initialization block are annotated with the Terraform behavior Forces new resource.

By contrast, arguments in the parameters block influence how the tool integration works after it is initialized. If an argument is not annotated with Forces new resource and you change the argument, Terraform applies the change to the existing tool integration. It does not delete and re-create the tool integration.

If you change any resource argument that is annotated with Forces new resource, Terraform deletes and re-creates the resource, irrespective of the block that contains the argument.

For more information about the Git tool integration Terraform resources, see the following Terraform Registry documentation:

What type of authentication should I use to access GitHub repos from my toolchain?

Before you can use a repo integration, you must authorize it so that IBM Cloud can access your GitHub account by using one of the following authentication methods.

  • IBM Cloud OAuth app: When you grant authorization by using the IBM Cloud OAuth App, you allow IBM Cloud to act as the authenticated user. You can also revoke permissions from the Oauth App.
  • Personal Access Token: Use a Personal Access Token (PAT) to provide granular access to a specific user or repo. Authorizing with a PAT is recommended when you use Terraform or the API.

Why is my Git Repos and Issue Tracking account blocked?

Git Repos and Issue Tracking is an IBM Cloud service. All users must have an IBM Cloud account or be invited to join an account.

We recommend using the IBM Cloud console to invite users to join your account. For more information, see Inviting users to an account.

After you create a new account or accept an invitation to join an account, allow up to 15 minutes for the reactivation process to be completed if your account was recently blocked.