Skip to content
Open
15 changes: 15 additions & 0 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,21 @@ formatters:
replacement: any
- pattern: a[b:len(a)]
replacement: a[b:]
- pattern: skipUnlessMode(t, enterprise)
replacement: skipUnlessEnterprise(t)
- pattern: parseTwoPartID(a, b, c)
replacement: parseID2(a)
- pattern: parseThreePartID(a, b, c, d)
replacement: parseID3(a)
- pattern: wrapErrors([]error{fmt.Errorf(a)})
replacement: diag.Errorf(a)
- pattern: wrapErrors([]error{fmt.Errorf(a, b)})
replacement: diag.Errorf(a, b)
- pattern: wrapErrors([]error{err})
replacement: diag.FromErr(err)
- pattern: diag.FromErr(fmt.Errorf(a))
replacement: diag.Errorf(a)

gofumpt:
module-path: github.com/integrations/terraform-provider-github
extra-rules: true
Expand Down
2 changes: 1 addition & 1 deletion github/acc_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -318,7 +318,7 @@ func skipUnlessHasAppInstallations(t *testing.T) {
t.Fatalf("failed to get test meta: %s", err)
}

installations, _, err := meta.v3client.Organizations.ListInstallations(context.Background(), meta.name, nil)
installations, _, err := meta.v3client.Organizations.ListInstallations(t.Context(), meta.name, nil)
if err != nil {
t.Fatalf("failed to list app installations: %s", err)
}
Expand Down
13 changes: 6 additions & 7 deletions github/config_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package github

import (
"context"
"net/http"
"net/http/httptest"
"testing"
Expand Down Expand Up @@ -171,7 +170,7 @@ func TestAccConfigMeta(t *testing.T) {
t.Fatalf("failed to return meta without error: %s", err.Error())
}

ctx := context.Background()
ctx := t.Context()
client := meta.(*Owner).v3client
_, _, err = client.Meta.Get(ctx)
if err != nil {
Expand All @@ -191,7 +190,7 @@ func TestAccConfigMeta(t *testing.T) {
t.Fatalf("failed to return meta without error: %s", err.Error())
}

ctx := context.Background()
ctx := t.Context()
client := meta.(*Owner).v3client
_, _, err = client.Meta.Get(ctx)
if err != nil {
Expand All @@ -216,7 +215,7 @@ func TestAccConfigMeta(t *testing.T) {
t.Fatalf("failed to return meta without error: %s", err.Error())
}

ctx := context.Background()
ctx := t.Context()
client := meta.(*Owner).v3client
_, _, err = client.Meta.Get(ctx)
if err != nil {
Expand All @@ -242,7 +241,7 @@ func TestAccConfigMeta(t *testing.T) {
GitHubServicesSha githubv4.String
}
}
err = client.Query(context.Background(), &query, nil)
err = client.Query(t.Context(), &query, nil)
if err != nil {
t.Fatalf("failed to validate returned client without error: %s", err.Error())
}
Expand All @@ -261,7 +260,7 @@ func TestAccConfigMeta(t *testing.T) {
t.Fatalf("failed to return meta without error: %s", err.Error())
}

ctx := context.Background()
ctx := t.Context()
client := meta.(*Owner).v3client
_, _, err = client.Organizations.Get(ctx, testAccConf.owner)
if err != nil {
Expand Down Expand Up @@ -292,7 +291,7 @@ func TestAccConfigMeta(t *testing.T) {
variables := map[string]any{
"login": githubv4.String(testAccConf.owner),
}
err = client.Query(context.Background(), &query, variables)
err = client.Query(t.Context(), &query, variables)
if err != nil {
t.Fatalf("failed to validate returned client without error: %s", err.Error())
}
Expand Down
2 changes: 1 addition & 1 deletion github/data_source_github_enterprise_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ func TestAccGithubEnterpriseDataSource(t *testing.T) {
)

resource.Test(t, resource.TestCase{
PreCheck: func() { skipUnlessMode(t, enterprise) },
PreCheck: func() { skipUnlessEnterprise(t) },
ProviderFactories: providerFactories,
Steps: []resource.TestStep{
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ func TestAccGithubOrganizationExternalIdentities(t *testing.T) {
)

resource.Test(t, resource.TestCase{
PreCheck: func() { skipUnlessMode(t, enterprise) },
PreCheck: func() { skipUnlessEnterprise(t) },
ProviderFactories: providerFactories,
Steps: []resource.TestStep{
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ func TestAccGithubOrganizationRepositoryRoleDataSource(t *testing.T) {
`, roleName)

resource.Test(t, resource.TestCase{
PreCheck: func() { skipUnlessMode(t, enterprise) },
PreCheck: func() { skipUnlessEnterprise(t) },
ProviderFactories: providerFactories,
Steps: []resource.TestStep{
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ func TestAccDataSourceGithubOrganizationRepositoryRoles(t *testing.T) {
`

resource.Test(t, resource.TestCase{
PreCheck: func() { skipUnlessMode(t, enterprise) },
PreCheck: func() { skipUnlessEnterprise(t) },
ProviderFactories: providerFactories,
Steps: []resource.TestStep{
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import (

func TestAccGithubOrganizationTeamSyncGroupsDataSource_existing(t *testing.T) {
resource.Test(t, resource.TestCase{
PreCheck: func() { skipUnlessMode(t, enterprise) },
PreCheck: func() { skipUnlessEnterprise(t) },
ProviderFactories: providerFactories,
Steps: []resource.TestStep{
{
Expand Down
2 changes: 1 addition & 1 deletion github/data_source_github_user_external_identity_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ func TestAccGithubUserExternalIdentity(t *testing.T) {
)

resource.Test(t, resource.TestCase{
PreCheck: func() { skipUnlessMode(t, enterprise) },
PreCheck: func() { skipUnlessEnterprise(t) },
ProviderFactories: providerFactories,
Steps: []resource.TestStep{
{
Expand Down
21 changes: 10 additions & 11 deletions github/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package github

import (
"context"
"fmt"
"log"
"net/url"
"os"
Expand Down Expand Up @@ -388,13 +387,13 @@ func providerConfigure(p *schema.Provider) schema.ConfigureContextFunc {
if v, ok := appAuthAttr["id"].(string); ok && v != "" {
appID = v
} else {
return nil, wrapErrors([]error{fmt.Errorf("app_auth.id must be set and contain a non-empty value")})
return nil, diag.Errorf("app_auth.id must be set and contain a non-empty value")
}

if v, ok := appAuthAttr["installation_id"].(string); ok && v != "" {
appInstallationID = v
} else {
return nil, wrapErrors([]error{fmt.Errorf("app_auth.installation_id must be set and contain a non-empty value")})
return nil, diag.Errorf("app_auth.installation_id must be set and contain a non-empty value")
}

if v, ok := appAuthAttr["pem_file"].(string); ok && v != "" {
Expand All @@ -407,7 +406,7 @@ func providerConfigure(p *schema.Provider) schema.ConfigureContextFunc {
// actual new line character before decoding.
appPemFile = strings.ReplaceAll(v, `\n`, "\n")
} else {
return nil, wrapErrors([]error{fmt.Errorf("app_auth.pem_file must be set and contain a non-empty value")})
return nil, diag.Errorf("app_auth.pem_file must be set and contain a non-empty value")
}

apiPath := ""
Expand All @@ -417,7 +416,7 @@ func providerConfigure(p *schema.Provider) schema.ConfigureContextFunc {

appToken, err := GenerateOAuthTokenFromApp(baseURL.JoinPath(apiPath), appID, appInstallationID, appPemFile)
if err != nil {
return nil, wrapErrors([]error{err})
return nil, diag.FromErr(err)
}

token = appToken
Expand All @@ -430,25 +429,25 @@ func providerConfigure(p *schema.Provider) schema.ConfigureContextFunc {

writeDelay := d.Get("write_delay_ms").(int)
if writeDelay <= 0 {
return nil, wrapErrors([]error{fmt.Errorf("write_delay_ms must be greater than 0ms")})
return nil, diag.Errorf("write_delay_ms must be greater than 0ms")
}
log.Printf("[INFO] Setting write_delay_ms to %d", writeDelay)

readDelay := d.Get("read_delay_ms").(int)
if readDelay < 0 {
return nil, wrapErrors([]error{fmt.Errorf("read_delay_ms must be greater than or equal to 0ms")})
return nil, diag.Errorf("read_delay_ms must be greater than or equal to 0ms")
}
log.Printf("[DEBUG] Setting read_delay_ms to %d", readDelay)

retryDelay := d.Get("read_delay_ms").(int)
if retryDelay < 0 {
return nil, diag.FromErr(fmt.Errorf("retry_delay_ms must be greater than or equal to 0ms"))
return nil, diag.Errorf("retry_delay_ms must be greater than or equal to 0ms")
}
log.Printf("[DEBUG] Setting retry_delay_ms to %d", retryDelay)

maxRetries := d.Get("max_retries").(int)
if maxRetries < 0 {
return nil, diag.FromErr(fmt.Errorf("max_retries must be greater than or equal to 0"))
return nil, diag.Errorf("max_retries must be greater than or equal to 0")
}
log.Printf("[DEBUG] Setting max_retries to %d", maxRetries)
retryableErrors := make(map[int]bool)
Expand All @@ -467,7 +466,7 @@ func providerConfigure(p *schema.Provider) schema.ConfigureContextFunc {

_maxPerPage := d.Get("max_per_page").(int)
if _maxPerPage <= 0 {
return nil, diag.FromErr(fmt.Errorf("max_per_page must be greater than than 0"))
return nil, diag.Errorf("max_per_page must be greater than than 0")
}
log.Printf("[DEBUG] Setting max_per_page to %d", _maxPerPage)
maxPerPage = _maxPerPage
Expand All @@ -492,7 +491,7 @@ func providerConfigure(p *schema.Provider) schema.ConfigureContextFunc {

meta, err := config.Meta()
if err != nil {
return nil, wrapErrors([]error{err})
return nil, diag.FromErr(err)
}

return meta, nil
Expand Down
2 changes: 1 addition & 1 deletion github/provider_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ data "github_ip_ranges" "test" {}

resource.Test(t, resource.TestCase{
PreCheck: func() {
skipUnlessMode(t, enterprise)
skipUnlessEnterprise(t)
if testAccConf.baseURL.Host != "api.github.com" {
t.Skip("Skipping as test mode is not GHES")
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ package github
// t.Run(d.testName, func(t *testing.T) {
// t.Parallel()

// got, err := resourceGithubActionsEnvironmentSecretStateUpgradeV0(context.Background(), d.rawState, nil)
// got, err := resourceGithubActionsEnvironmentSecretStateUpgradeV0(t.Context(), d.rawState, nil)
// if (err != nil) != d.shouldError {
// t.Fatalf("unexpected error state")
// }
Expand Down
5 changes: 2 additions & 3 deletions github/resource_github_actions_environment_secret_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package github

import (
"context"
"encoding/base64"
"fmt"
"net/url"
Expand Down Expand Up @@ -342,7 +341,7 @@ resource "github_actions_environment_secret" "test" {
}
client := meta.v3client
owner := meta.name
ctx := context.Background()
ctx := t.Context()

escapedEnvName := url.PathEscape(envName)

Expand Down Expand Up @@ -438,7 +437,7 @@ resource "github_actions_environment_secret" "test" {
}
client := meta.v3client
owner := meta.name
ctx := context.Background()
ctx := t.Context()

escapedEnvName := url.PathEscape(envName)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ package github
// t.Run(d.testName, func(t *testing.T) {
// t.Parallel()

// got, err := resourceGithubActionsEnvironmentVariableStateUpgradeV0(context.Background(), d.rawState, nil)
// got, err := resourceGithubActionsEnvironmentVariableStateUpgradeV0(t.Context(), d.rawState, nil)
// if (err != nil) != d.shouldError {
// t.Fatalf("unexpected error state")
// }
Expand Down
5 changes: 2 additions & 3 deletions github/resource_github_actions_environment_variable_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package github

import (
"context"
"fmt"
"net/url"
"regexp"
Expand Down Expand Up @@ -434,7 +433,7 @@ resource "github_actions_environment_variable" "test" {
}
client := meta.v3client
owner := meta.name
ctx := context.Background()
ctx := t.Context()

_, err = client.Actions.CreateEnvVariable(ctx, owner, repoName, url.PathEscape(envName), &github.ActionsVariable{
Name: varName,
Expand All @@ -453,7 +452,7 @@ resource "github_actions_environment_variable" "test" {
}
client := meta.v3client
owner := meta.name
ctx := context.Background()
ctx := t.Context()

_, err = client.Actions.DeleteEnvVariable(ctx, owner, repoName, url.PathEscape(envName), varName)
return err
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package github

import (
"context"
"reflect"
"testing"
)
Expand Down Expand Up @@ -62,7 +61,7 @@ func Test_resourceGithubActionsOrganizationSecretStateUpgradeV0(t *testing.T) {
t.Run(d.testName, func(t *testing.T) {
t.Parallel()

got, err := resourceGithubActionsOrganizationSecretStateUpgradeV0(context.Background(), d.rawState, nil)
got, err := resourceGithubActionsOrganizationSecretStateUpgradeV0(t.Context(), d.rawState, nil)
if (err != nil) != d.shouldError {
t.Fatalf("unexpected error state")
}
Expand Down
5 changes: 2 additions & 3 deletions github/resource_github_actions_organization_secret_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package github

import (
"context"
"encoding/base64"
"fmt"
"regexp"
Expand Down Expand Up @@ -455,7 +454,7 @@ resource "github_actions_organization_secret" "test" {
}
client := meta.v3client
owner := meta.name
ctx := context.Background()
ctx := t.Context()

keyID, _, err := getOrganizationPublicKeyDetails(ctx, meta)
if err != nil {
Expand Down Expand Up @@ -533,7 +532,7 @@ resource "github_actions_organization_secret" "test" {
}
client := meta.v3client
owner := meta.name
ctx := context.Background()
ctx := t.Context()

keyID, _, err := getOrganizationPublicKeyDetails(ctx, meta)
if err != nil {
Expand Down
5 changes: 2 additions & 3 deletions github/resource_github_actions_organization_variable_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package github

import (
"context"
"fmt"
"regexp"
"testing"
Expand Down Expand Up @@ -356,7 +355,7 @@ resource "github_actions_organization_variable" "test" {
}
client := meta.v3client
owner := meta.name
ctx := context.Background()
ctx := t.Context()

_, err = client.Actions.CreateOrgVariable(ctx, owner, &github.ActionsVariable{
Name: varName,
Expand All @@ -376,7 +375,7 @@ resource "github_actions_organization_variable" "test" {
}
client := meta.v3client
owner := meta.name
ctx := context.Background()
ctx := t.Context()

_, err = client.Actions.DeleteOrgVariable(ctx, owner, varName)
return err
Expand Down
Loading