CreateSCMIntegration
client.Runners.Configurations.ScmIntegrations.New(ctx, body) (*RunnerConfigurationScmIntegrationNewResponse, error)
POST/gitpod.v1.RunnerConfigurationService/CreateSCMIntegration
Creates a new SCM integration for a runner.
Use this method to:
- Configure source control access
- Set up repository integrations
- Enable code synchronization
Examples
-
Create GitHub integration:
Sets up GitHub SCM integration.
runnerId: "d2c94c27-3b76-4a42-b88c-95a85e392c68" scmId: "github" host: "github.com" oauthClientId: "client_id" oauthPlaintextClientSecret: "client_secret"
CreateSCMIntegration
package main
import (
"context"
"fmt"
"github.com/gitpod-io/gitpod-sdk-go"
"github.com/gitpod-io/gitpod-sdk-go/option"
)
func main() {
client := gitpod.NewClient(
option.WithBearerToken("My Bearer Token"),
)
scmIntegration, err := client.Runners.Configurations.ScmIntegrations.New(context.TODO(), gitpod.RunnerConfigurationScmIntegrationNewParams{
Host: gitpod.F("github.com"),
OAuthClientID: gitpod.F("client_id"),
OAuthPlaintextClientSecret: gitpod.F("client_secret"),
RunnerID: gitpod.F("d2c94c27-3b76-4a42-b88c-95a85e392c68"),
ScmID: gitpod.F("github"),
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", scmIntegration.ID)
}
{
"id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
}Returns Examples
{
"id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
}