Compare commits
10 Commits
1162650a73
...
v0.13.0
Author | SHA1 | Date | |
---|---|---|---|
bc28fe186f | |||
19062e27f0 | |||
322ad2d3c4 | |||
9e34636c29 | |||
b4b13dc3ca | |||
e5a6132b9d | |||
d71cbbd0b6 | |||
0a85957c50 | |||
f87515a453 | |||
0e8aa2bf9b |
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@ -28,7 +28,7 @@ jobs:
|
|||||||
go-version: 1.18
|
go-version: 1.18
|
||||||
- name: Import GPG key
|
- name: Import GPG key
|
||||||
id: import_gpg
|
id: import_gpg
|
||||||
uses: crazy-max/ghaction-import-gpg@v5.2.0
|
uses: crazy-max/ghaction-import-gpg@v5.3.0
|
||||||
with:
|
with:
|
||||||
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
|
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||||
passphrase: ${{ secrets.PASSPHRASE }}
|
passphrase: ${{ secrets.PASSPHRASE }}
|
||||||
|
10
Makefile
10
Makefile
@ -1,9 +1,11 @@
|
|||||||
TEST?=./gitea
|
TEST?=./gitea
|
||||||
GOFMT_FILES?=$$(find . -name '*.go' |grep -v vendor)
|
GOFMT_FILES?=$$(find . -name '*.go' |grep -v vendor)
|
||||||
|
ARCH?=$$(uname -m)
|
||||||
|
KERNEL?=$$(uname -s | tr '[:upper:]' '[:lower:]')
|
||||||
|
|
||||||
GOFMT ?= gofmt -s
|
GOFMT ?= gofmt -s
|
||||||
|
|
||||||
VERSION = 0.12.2
|
VERSION = 0.13.0
|
||||||
|
|
||||||
test: fmt-check
|
test: fmt-check
|
||||||
go test -i $(TEST) || exit 1
|
go test -i $(TEST) || exit 1
|
||||||
@ -34,8 +36,8 @@ build:
|
|||||||
go build -ldflags="-X 'main.Version=${VERSION}'" -o terraform-provider-gitea_${VERSION}
|
go build -ldflags="-X 'main.Version=${VERSION}'" -o terraform-provider-gitea_${VERSION}
|
||||||
install: build
|
install: build
|
||||||
@echo installing to
|
@echo installing to
|
||||||
@echo ~/.terraform.d/plugins/terraform.local/lerentis/gitea/${VERSION}/linux_amd64/terraform-provider-gitea_${VERSION}
|
@echo ~/.terraform.d/plugins/terraform.local/lerentis/gitea/${VERSION}/${KERNEL}_${ARCH}/terraform-provider-gitea_${VERSION}
|
||||||
@mkdir -p ~/.terraform.d/plugins/terraform.local/lerentis/gitea/${VERSION}/linux_amd64
|
@mkdir -p ~/.terraform.d/plugins/terraform.local/lerentis/gitea/${VERSION}/${KERNEL}_${ARCH}
|
||||||
@mv terraform-provider-gitea_${VERSION} ~/.terraform.d/plugins/terraform.local/lerentis/gitea/${VERSION}/linux_amd64/terraform-provider-gitea_${VERSION}
|
@mv terraform-provider-gitea_${VERSION} ~/.terraform.d/plugins/terraform.local/lerentis/gitea/${VERSION}/${KERNEL}_${ARCH}/terraform-provider-gitea_${VERSION}
|
||||||
doc:
|
doc:
|
||||||
tfplugindocs
|
tfplugindocs
|
||||||
|
@ -17,7 +17,7 @@ terraform {
|
|||||||
required_providers {
|
required_providers {
|
||||||
gitea = {
|
gitea = {
|
||||||
source = "Lerentis/gitea"
|
source = "Lerentis/gitea"
|
||||||
version = "0.12.2"
|
version = "0.13.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,7 @@ terraform {
|
|||||||
required_providers {
|
required_providers {
|
||||||
gitea = {
|
gitea = {
|
||||||
source = "Lerentis/gitea"
|
source = "Lerentis/gitea"
|
||||||
version = "0.12.2"
|
version = "0.13.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,7 @@ description: |-
|
|||||||
Per default this repository will be initializiled with the provided configuration (gitignore, License etc.).
|
Per default this repository will be initializiled with the provided configuration (gitignore, License etc.).
|
||||||
If the username property is set to a organisation name, the provider will try to look if this organisation exists and create the repository under the organisation scope.
|
If the username property is set to a organisation name, the provider will try to look if this organisation exists and create the repository under the organisation scope.
|
||||||
Repository migrations have some properties that are not available to regular repositories. These are all prefixed with migration_.
|
Repository migrations have some properties that are not available to regular repositories. These are all prefixed with migration_.
|
||||||
|
Codeberg.org does currently not allow mirrors to be created. See FAQ Section of CodeBerg for more information: https://docs.codeberg.org/getting-started/faq/#why-am-i-not-allowed-to-set-up-an-automatic-mirror
|
||||||
---
|
---
|
||||||
|
|
||||||
# gitea_repository (Resource)
|
# gitea_repository (Resource)
|
||||||
@ -17,6 +18,7 @@ Per default this repository will be initializiled with the provided configuratio
|
|||||||
If the `username` property is set to a organisation name, the provider will try to look if this organisation exists and create the repository under the organisation scope.
|
If the `username` property is set to a organisation name, the provider will try to look if this organisation exists and create the repository under the organisation scope.
|
||||||
|
|
||||||
Repository migrations have some properties that are not available to regular repositories. These are all prefixed with `migration_`.
|
Repository migrations have some properties that are not available to regular repositories. These are all prefixed with `migration_`.
|
||||||
|
Codeberg.org does currently not allow mirrors to be created. See FAQ Section of CodeBerg for more information: https://docs.codeberg.org/getting-started/faq/#why-am-i-not-allowed-to-set-up-an-automatic-mirror
|
||||||
|
|
||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
|
@ -34,6 +34,26 @@ resource "gitea_team" "test_team" {
|
|||||||
permission = "write"
|
permission = "write"
|
||||||
members = [gitea_user.test.username]
|
members = [gitea_user.test.username]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
resource "gitea_repository" "test" {
|
||||||
|
username = gitea_org.test_org.name
|
||||||
|
name = "test"
|
||||||
|
private = true
|
||||||
|
issue_labels = "Default"
|
||||||
|
license = "MIT"
|
||||||
|
gitignores = "Go"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "gitea_team" "test_team_restricted" {
|
||||||
|
name = "Restricted Devs"
|
||||||
|
organisation = gitea_org.test_org.name
|
||||||
|
description = "Restricted Devs of Test Org"
|
||||||
|
permission = "write"
|
||||||
|
members = [gitea_user.test.username]
|
||||||
|
include_all_repositories = false
|
||||||
|
repositories = [gitea_repository.test.name]
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
<!-- schema generated by tfplugindocs -->
|
<!-- schema generated by tfplugindocs -->
|
||||||
@ -52,6 +72,7 @@ resource "gitea_team" "test_team" {
|
|||||||
- `members` (List of String) List of Users that should be part of this team
|
- `members` (List of String) List of Users that should be part of this team
|
||||||
- `permission` (String) Permissions associated with this Team
|
- `permission` (String) Permissions associated with this Team
|
||||||
Can be `none`, `read`, `write`, `admin` or `owner`
|
Can be `none`, `read`, `write`, `admin` or `owner`
|
||||||
|
- `repositories` (List of String) List of Repositories that should be part of this team
|
||||||
- `units` (String) List of types of Repositories that should be allowed to be created from Team members.
|
- `units` (String) List of types of Repositories that should be allowed to be created from Team members.
|
||||||
Can be `repo.code`, `repo.issues`, `repo.ext_issues`, `repo.wiki`, `repo.pulls`, `repo.releases`, `repo.projects` and/or `repo.ext_wiki`
|
Can be `repo.code`, `repo.issues`, `repo.ext_issues`, `repo.wiki`, `repo.pulls`, `repo.releases`, `repo.projects` and/or `repo.ext_wiki`
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@ terraform {
|
|||||||
required_providers {
|
required_providers {
|
||||||
gitea = {
|
gitea = {
|
||||||
source = "terraform.local/lerentis/gitea"
|
source = "terraform.local/lerentis/gitea"
|
||||||
version = "0.12.2"
|
version = "0.13.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,7 @@ terraform {
|
|||||||
required_providers {
|
required_providers {
|
||||||
gitea = {
|
gitea = {
|
||||||
source = "Lerentis/gitea"
|
source = "Lerentis/gitea"
|
||||||
version = "0.12.2"
|
version = "0.13.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,3 +19,23 @@ resource "gitea_team" "test_team" {
|
|||||||
permission = "write"
|
permission = "write"
|
||||||
members = [gitea_user.test.username]
|
members = [gitea_user.test.username]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
resource "gitea_repository" "test" {
|
||||||
|
username = gitea_org.test_org.name
|
||||||
|
name = "test"
|
||||||
|
private = true
|
||||||
|
issue_labels = "Default"
|
||||||
|
license = "MIT"
|
||||||
|
gitignores = "Go"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "gitea_team" "test_team_restricted" {
|
||||||
|
name = "Restricted Devs"
|
||||||
|
organisation = gitea_org.test_org.name
|
||||||
|
description = "Restricted Devs of Test Org"
|
||||||
|
permission = "write"
|
||||||
|
members = [gitea_user.test.username]
|
||||||
|
include_all_repositories = false
|
||||||
|
repositories = [gitea_repository.test.name]
|
||||||
|
}
|
||||||
|
@ -1,11 +1,14 @@
|
|||||||
package gitea
|
package gitea
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"context"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
"strings"
|
||||||
|
|
||||||
"code.gitea.io/sdk/gitea"
|
"code.gitea.io/sdk/gitea"
|
||||||
|
"github.com/hashicorp/terraform-plugin-log/tflog"
|
||||||
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -108,15 +111,21 @@ func resourceRepoCreate(d *schema.ResourceData, meta interface{}) (err error) {
|
|||||||
|
|
||||||
var repo *gitea.Repository
|
var repo *gitea.Repository
|
||||||
var resp *gitea.Response
|
var resp *gitea.Response
|
||||||
var orgRepo bool
|
var orgRepo, hasAdmin bool
|
||||||
|
|
||||||
_, resp, err = client.GetOrg(d.Get(repoOwner).(string))
|
_, resp, err = client.GetOrg(d.Get(repoOwner).(string))
|
||||||
|
|
||||||
if resp.StatusCode == 404 {
|
if resp.StatusCode == 404 {
|
||||||
_, err := searchUserByName(client, d.Get(repoOwner).(string))
|
_, err := searchUserByName(client, d.Get(repoOwner).(string))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
if strings.Contains(err.Error(), "could not be found") {
|
||||||
return errors.New(fmt.Sprintf("Creation of repository cound not proceed as owner %s is not present in gitea", d.Get(repoOwner).(string)))
|
return errors.New(fmt.Sprintf("Creation of repository cound not proceed as owner %s is not present in gitea", d.Get(repoOwner).(string)))
|
||||||
}
|
}
|
||||||
|
tflog.Warn(context.Background(), "Error query for users. Assuming missing permissions and proceding with user permissions")
|
||||||
|
hasAdmin = false
|
||||||
|
} else {
|
||||||
|
hasAdmin = true
|
||||||
|
}
|
||||||
orgRepo = false
|
orgRepo = false
|
||||||
} else {
|
} else {
|
||||||
orgRepo = true
|
orgRepo = true
|
||||||
@ -180,7 +189,11 @@ func resourceRepoCreate(d *schema.ResourceData, meta interface{}) (err error) {
|
|||||||
if orgRepo {
|
if orgRepo {
|
||||||
repo, _, err = client.CreateOrgRepo(d.Get(repoOwner).(string), opts)
|
repo, _, err = client.CreateOrgRepo(d.Get(repoOwner).(string), opts)
|
||||||
} else {
|
} else {
|
||||||
|
if hasAdmin {
|
||||||
repo, _, err = client.AdminCreateRepo(d.Get(repoOwner).(string), opts)
|
repo, _, err = client.AdminCreateRepo(d.Get(repoOwner).(string), opts)
|
||||||
|
} else {
|
||||||
|
repo, _, err = client.CreateRepo(opts)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -580,6 +593,8 @@ func resourceGiteaRepository() *schema.Resource {
|
|||||||
"Per default this repository will be initializiled with the provided configuration (gitignore, License etc.).\n" +
|
"Per default this repository will be initializiled with the provided configuration (gitignore, License etc.).\n" +
|
||||||
"If the `username` property is set to a organisation name, the provider will try to look if this organisation exists " +
|
"If the `username` property is set to a organisation name, the provider will try to look if this organisation exists " +
|
||||||
"and create the repository under the organisation scope.\n\n" +
|
"and create the repository under the organisation scope.\n\n" +
|
||||||
"Repository migrations have some properties that are not available to regular repositories. These are all prefixed with `migration_`.",
|
"Repository migrations have some properties that are not available to regular repositories. These are all prefixed with `migration_`.\n" +
|
||||||
|
"Codeberg.org does currently not allow mirrors to be created. See FAQ Section of CodeBerg for more information: " +
|
||||||
|
"https://docs.codeberg.org/getting-started/faq/#why-am-i-not-allowed-to-set-up-an-automatic-mirror",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package gitea
|
package gitea
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
@ -18,6 +19,7 @@ const (
|
|||||||
TeamIncludeAllReposFlag string = "include_all_repositories"
|
TeamIncludeAllReposFlag string = "include_all_repositories"
|
||||||
TeamUnits string = "units"
|
TeamUnits string = "units"
|
||||||
TeamMembers string = "members"
|
TeamMembers string = "members"
|
||||||
|
TeamRepositories string = "repositories"
|
||||||
)
|
)
|
||||||
|
|
||||||
func resourceTeamRead(d *schema.ResourceData, meta interface{}) (err error) {
|
func resourceTeamRead(d *schema.ResourceData, meta interface{}) (err error) {
|
||||||
@ -75,12 +77,14 @@ func resourceTeamCreate(d *schema.ResourceData, meta interface{}) (err error) {
|
|||||||
units = append(units, gitea.RepoUnitProjects)
|
units = append(units, gitea.RepoUnitProjects)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
includeAllRepos := d.Get(TeamIncludeAllReposFlag).(bool)
|
||||||
|
|
||||||
opts := gitea.CreateTeamOption{
|
opts := gitea.CreateTeamOption{
|
||||||
Name: d.Get(TeamName).(string),
|
Name: d.Get(TeamName).(string),
|
||||||
Description: d.Get(TeamDescription).(string),
|
Description: d.Get(TeamDescription).(string),
|
||||||
Permission: gitea.AccessMode(d.Get(TeamPermissions).(string)),
|
Permission: gitea.AccessMode(d.Get(TeamPermissions).(string)),
|
||||||
CanCreateOrgRepo: d.Get(TeamCreateRepoFlag).(bool),
|
CanCreateOrgRepo: d.Get(TeamCreateRepoFlag).(bool),
|
||||||
IncludesAllRepositories: d.Get(TeamIncludeAllReposFlag).(bool),
|
IncludesAllRepositories: includeAllRepos,
|
||||||
Units: units,
|
Units: units,
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -101,6 +105,13 @@ func resourceTeamCreate(d *schema.ResourceData, meta interface{}) (err error) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if !includeAllRepos {
|
||||||
|
err = setTeamRepositories(team, d, meta, false)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
err = setTeamResourceData(team, d)
|
err = setTeamResourceData(team, d)
|
||||||
|
|
||||||
return
|
return
|
||||||
@ -181,6 +192,13 @@ func resourceTeamUpdate(d *schema.ResourceData, meta interface{}) (err error) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if !includeAllRepos {
|
||||||
|
err = setTeamRepositories(team, d, meta, true)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
team, _, _ = client.GetTeam(id)
|
team, _, _ = client.GetTeam(id)
|
||||||
|
|
||||||
err = setTeamResourceData(team, d)
|
err = setTeamResourceData(team, d)
|
||||||
@ -218,6 +236,7 @@ func setTeamResourceData(team *gitea.Team, d *schema.ResourceData) (err error) {
|
|||||||
d.Set(TeamUnits, d.Get(TeamUnits).(string))
|
d.Set(TeamUnits, d.Get(TeamUnits).(string))
|
||||||
d.Set(TeamOrg, d.Get(TeamOrg).(string))
|
d.Set(TeamOrg, d.Get(TeamOrg).(string))
|
||||||
d.Set(TeamMembers, d.Get(TeamMembers))
|
d.Set(TeamMembers, d.Get(TeamMembers))
|
||||||
|
d.Set(TeamRepositories, d.Get(TeamRepositories))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -290,7 +309,75 @@ func resourceGiteaTeam() *schema.Resource {
|
|||||||
Computed: true,
|
Computed: true,
|
||||||
Description: "List of Users that should be part of this team",
|
Description: "List of Users that should be part of this team",
|
||||||
},
|
},
|
||||||
|
"repositories": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Elem: &schema.Schema{
|
||||||
|
Type: schema.TypeString,
|
||||||
|
},
|
||||||
|
Optional: true,
|
||||||
|
Required: false,
|
||||||
|
Computed: true,
|
||||||
|
Description: "List of Repositories that should be part of this team",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
Description: "`gitea_team` manages Team that are part of an organisation.",
|
Description: "`gitea_team` manages Team that are part of an organisation.",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func setTeamRepositories(team *gitea.Team, d *schema.ResourceData, meta interface{}, update bool) (err error) {
|
||||||
|
client := meta.(*gitea.Client)
|
||||||
|
|
||||||
|
org := d.Get(TeamOrg).(string)
|
||||||
|
|
||||||
|
repositories := make(map[string]bool)
|
||||||
|
for _, repo := range d.Get(TeamRepositories).([]interface{}) {
|
||||||
|
if repo != "" {
|
||||||
|
repositories[repo.(string)] = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if update {
|
||||||
|
page := 1
|
||||||
|
|
||||||
|
for {
|
||||||
|
var existingRepositories []*gitea.Repository
|
||||||
|
existingRepositories, _, err = client.ListTeamRepositories(team.ID, gitea.ListTeamRepositoriesOptions{
|
||||||
|
ListOptions: gitea.ListOptions{
|
||||||
|
Page: page,
|
||||||
|
PageSize: 50,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
return errors.New(fmt.Sprintf("[ERROR] Error listeng team repositories: %s", err))
|
||||||
|
}
|
||||||
|
if len(existingRepositories) == 0 {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, exr := range existingRepositories {
|
||||||
|
_, exists := repositories[exr.Name]
|
||||||
|
if exists {
|
||||||
|
repositories[exr.Name] = false
|
||||||
|
} else {
|
||||||
|
_, err = client.RemoveTeamRepository(team.ID, org, exr.Name)
|
||||||
|
if err != nil {
|
||||||
|
return errors.New(fmt.Sprintf("[ERROR] Error removing team repository %q: %s", exr.Name, err))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
page += 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for repo, flag := range repositories {
|
||||||
|
if flag {
|
||||||
|
_, err = client.AddTeamRepository(team.ID, org, repo)
|
||||||
|
if err != nil {
|
||||||
|
return errors.New(fmt.Sprintf("[ERROR] Error adding team repository %q: %s", repo, err))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
||||||
|
4
go.mod
4
go.mod
@ -5,7 +5,8 @@ go 1.18
|
|||||||
require (
|
require (
|
||||||
code.gitea.io/sdk/gitea v0.15.1
|
code.gitea.io/sdk/gitea v0.15.1
|
||||||
github.com/hashicorp/terraform-plugin-docs v0.14.1
|
github.com/hashicorp/terraform-plugin-docs v0.14.1
|
||||||
github.com/hashicorp/terraform-plugin-sdk/v2 v2.26.0
|
github.com/hashicorp/terraform-plugin-log v0.8.0
|
||||||
|
github.com/hashicorp/terraform-plugin-sdk/v2 v2.26.1
|
||||||
)
|
)
|
||||||
|
|
||||||
require (
|
require (
|
||||||
@ -35,7 +36,6 @@ require (
|
|||||||
github.com/hashicorp/terraform-exec v0.18.1 // indirect
|
github.com/hashicorp/terraform-exec v0.18.1 // indirect
|
||||||
github.com/hashicorp/terraform-json v0.16.0 // indirect
|
github.com/hashicorp/terraform-json v0.16.0 // indirect
|
||||||
github.com/hashicorp/terraform-plugin-go v0.14.3 // indirect
|
github.com/hashicorp/terraform-plugin-go v0.14.3 // indirect
|
||||||
github.com/hashicorp/terraform-plugin-log v0.8.0 // indirect
|
|
||||||
github.com/hashicorp/terraform-registry-address v0.1.0 // indirect
|
github.com/hashicorp/terraform-registry-address v0.1.0 // indirect
|
||||||
github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734 // indirect
|
github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734 // indirect
|
||||||
github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d // indirect
|
github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d // indirect
|
||||||
|
4
go.sum
4
go.sum
@ -124,8 +124,8 @@ github.com/hashicorp/terraform-plugin-go v0.14.3 h1:nlnJ1GXKdMwsC8g1Nh05tK2wsC3+
|
|||||||
github.com/hashicorp/terraform-plugin-go v0.14.3/go.mod h1:7ees7DMZ263q8wQ6E4RdIdR6nHHJtrdt4ogX5lPkX1A=
|
github.com/hashicorp/terraform-plugin-go v0.14.3/go.mod h1:7ees7DMZ263q8wQ6E4RdIdR6nHHJtrdt4ogX5lPkX1A=
|
||||||
github.com/hashicorp/terraform-plugin-log v0.8.0 h1:pX2VQ/TGKu+UU1rCay0OlzosNKe4Nz1pepLXj95oyy0=
|
github.com/hashicorp/terraform-plugin-log v0.8.0 h1:pX2VQ/TGKu+UU1rCay0OlzosNKe4Nz1pepLXj95oyy0=
|
||||||
github.com/hashicorp/terraform-plugin-log v0.8.0/go.mod h1:1myFrhVsBLeylQzYYEV17VVjtG8oYPRFdaZs7xdW2xs=
|
github.com/hashicorp/terraform-plugin-log v0.8.0/go.mod h1:1myFrhVsBLeylQzYYEV17VVjtG8oYPRFdaZs7xdW2xs=
|
||||||
github.com/hashicorp/terraform-plugin-sdk/v2 v2.26.0 h1:We3H/dXP7Q0YH4YsBY6DAVj+Ur6PDFC+Yt1btGhTeMs=
|
github.com/hashicorp/terraform-plugin-sdk/v2 v2.26.1 h1:G9WAfb8LHeCxu7Ae8nc1agZlQOSCUWsb610iAogBhCs=
|
||||||
github.com/hashicorp/terraform-plugin-sdk/v2 v2.26.0/go.mod h1:xcOSYlRVdPLmDUoqPhO9fiO/YCN/l6MGYeTzGt5jgkQ=
|
github.com/hashicorp/terraform-plugin-sdk/v2 v2.26.1/go.mod h1:xcOSYlRVdPLmDUoqPhO9fiO/YCN/l6MGYeTzGt5jgkQ=
|
||||||
github.com/hashicorp/terraform-registry-address v0.1.0 h1:W6JkV9wbum+m516rCl5/NjKxCyTVaaUBbzYcMzBDO3U=
|
github.com/hashicorp/terraform-registry-address v0.1.0 h1:W6JkV9wbum+m516rCl5/NjKxCyTVaaUBbzYcMzBDO3U=
|
||||||
github.com/hashicorp/terraform-registry-address v0.1.0/go.mod h1:EnyO2jYO6j29DTHbJcm00E5nQTFeTtyZH3H5ycydQ5A=
|
github.com/hashicorp/terraform-registry-address v0.1.0/go.mod h1:EnyO2jYO6j29DTHbJcm00E5nQTFeTtyZH3H5ycydQ5A=
|
||||||
github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734 h1:HKLsbzeOsfXmKNpr3GiT18XAblV0BjCbzL8KQAMZGa0=
|
github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734 h1:HKLsbzeOsfXmKNpr3GiT18XAblV0BjCbzL8KQAMZGa0=
|
||||||
|
18
vendor/github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource/aliases.go
generated
vendored
18
vendor/github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource/aliases.go
generated
vendored
@ -42,19 +42,19 @@ func PrefixedUniqueId(prefix string) string {
|
|||||||
|
|
||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
type NotFoundError retry.NotFoundError
|
type NotFoundError = retry.NotFoundError
|
||||||
|
|
||||||
// UnexpectedStateError is returned when Refresh returns a state that's neither in Target nor Pending
|
// UnexpectedStateError is returned when Refresh returns a state that's neither in Target nor Pending
|
||||||
//
|
//
|
||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
type UnexpectedStateError retry.UnexpectedStateError
|
type UnexpectedStateError = retry.UnexpectedStateError
|
||||||
|
|
||||||
// TimeoutError is returned when WaitForState times out
|
// TimeoutError is returned when WaitForState times out
|
||||||
//
|
//
|
||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
type TimeoutError retry.TimeoutError
|
type TimeoutError = retry.TimeoutError
|
||||||
|
|
||||||
// StateRefreshFunc is a function type used for StateChangeConf that is
|
// StateRefreshFunc is a function type used for StateChangeConf that is
|
||||||
// responsible for refreshing the item being watched for a state change.
|
// responsible for refreshing the item being watched for a state change.
|
||||||
@ -69,19 +69,19 @@ type TimeoutError retry.TimeoutError
|
|||||||
//
|
//
|
||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
type StateRefreshFunc retry.StateRefreshFunc
|
type StateRefreshFunc = retry.StateRefreshFunc
|
||||||
|
|
||||||
// StateChangeConf is the configuration struct used for `WaitForState`.
|
// StateChangeConf is the configuration struct used for `WaitForState`.
|
||||||
//
|
//
|
||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
type StateChangeConf retry.StateChangeConf
|
type StateChangeConf = retry.StateChangeConf
|
||||||
|
|
||||||
// RetryFunc is the function retried until it succeeds.
|
// RetryFunc is the function retried until it succeeds.
|
||||||
//
|
//
|
||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
type RetryFunc retry.RetryFunc
|
type RetryFunc = retry.RetryFunc
|
||||||
|
|
||||||
// RetryContext is a basic wrapper around StateChangeConf that will just retry
|
// RetryContext is a basic wrapper around StateChangeConf that will just retry
|
||||||
// a function until it no longer returns an error.
|
// a function until it no longer returns an error.
|
||||||
@ -92,7 +92,7 @@ type RetryFunc retry.RetryFunc
|
|||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
func RetryContext(ctx context.Context, timeout time.Duration, f RetryFunc) error {
|
func RetryContext(ctx context.Context, timeout time.Duration, f RetryFunc) error {
|
||||||
return retry.RetryContext(ctx, timeout, retry.RetryFunc(f))
|
return retry.RetryContext(ctx, timeout, f)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Retry is a basic wrapper around StateChangeConf that will just retry
|
// Retry is a basic wrapper around StateChangeConf that will just retry
|
||||||
@ -101,7 +101,7 @@ func RetryContext(ctx context.Context, timeout time.Duration, f RetryFunc) error
|
|||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
func Retry(timeout time.Duration, f RetryFunc) error {
|
func Retry(timeout time.Duration, f RetryFunc) error {
|
||||||
return retry.Retry(timeout, retry.RetryFunc(f))
|
return retry.Retry(timeout, f)
|
||||||
}
|
}
|
||||||
|
|
||||||
// RetryError is the required return type of RetryFunc. It forces client code
|
// RetryError is the required return type of RetryFunc. It forces client code
|
||||||
@ -109,7 +109,7 @@ func Retry(timeout time.Duration, f RetryFunc) error {
|
|||||||
//
|
//
|
||||||
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
|
||||||
// testing to terraform-plugin-testing.
|
// testing to terraform-plugin-testing.
|
||||||
type RetryError retry.RetryError
|
type RetryError = retry.RetryError
|
||||||
|
|
||||||
// RetryableError is a helper to create a RetryError that's retryable from a
|
// RetryableError is a helper to create a RetryError that's retryable from a
|
||||||
// given error. To prevent logic errors, will return an error when passed a
|
// given error. To prevent logic errors, will return an error when passed a
|
||||||
|
2
vendor/modules.txt
vendored
2
vendor/modules.txt
vendored
@ -141,7 +141,7 @@ github.com/hashicorp/terraform-plugin-log/internal/hclogutils
|
|||||||
github.com/hashicorp/terraform-plugin-log/internal/logging
|
github.com/hashicorp/terraform-plugin-log/internal/logging
|
||||||
github.com/hashicorp/terraform-plugin-log/tflog
|
github.com/hashicorp/terraform-plugin-log/tflog
|
||||||
github.com/hashicorp/terraform-plugin-log/tfsdklog
|
github.com/hashicorp/terraform-plugin-log/tfsdklog
|
||||||
# github.com/hashicorp/terraform-plugin-sdk/v2 v2.26.0
|
# github.com/hashicorp/terraform-plugin-sdk/v2 v2.26.1
|
||||||
## explicit; go 1.19
|
## explicit; go 1.19
|
||||||
github.com/hashicorp/terraform-plugin-sdk/v2/diag
|
github.com/hashicorp/terraform-plugin-sdk/v2/diag
|
||||||
github.com/hashicorp/terraform-plugin-sdk/v2/helper/id
|
github.com/hashicorp/terraform-plugin-sdk/v2/helper/id
|
||||||
|
Reference in New Issue
Block a user