|
1 | 1 | package gitlab
|
2 | 2 |
|
3 | 3 | import (
|
| 4 | + "context" |
4 | 5 | "fmt"
|
5 | 6 | "strconv"
|
6 | 7 | "strings"
|
7 | 8 | "time"
|
8 | 9 |
|
| 10 | + "github.com/hashicorp/terraform-plugin-sdk/v2/diag" |
9 | 11 | "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
10 | 12 | "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation"
|
11 | 13 | gitlab "github.com/xanzy/go-gitlab"
|
12 | 14 | )
|
13 | 15 |
|
14 | 16 | func dataSourceGitlabUsers() *schema.Resource {
|
15 | 17 | return &schema.Resource{
|
16 |
| - Read: dataSourceGitlabUsersRead, |
| 18 | + ReadContext: dataSourceGitlabUsersRead, |
17 | 19 |
|
18 | 20 | Schema: map[string]*schema.Schema{
|
19 | 21 | "order_by": {
|
@@ -173,21 +175,21 @@ func dataSourceGitlabUsers() *schema.Resource {
|
173 | 175 | }
|
174 | 176 | }
|
175 | 177 |
|
176 |
| -func dataSourceGitlabUsersRead(d *schema.ResourceData, meta interface{}) error { |
| 178 | +func dataSourceGitlabUsersRead(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { |
177 | 179 | client := meta.(*gitlab.Client)
|
178 | 180 |
|
179 | 181 | listUsersOptions, id, err := expandGitlabUsersOptions(d)
|
180 | 182 | if err != nil {
|
181 |
| - return err |
| 183 | + return diag.FromErr(err) |
182 | 184 | }
|
183 | 185 | page := 1
|
184 | 186 | userslen := 0
|
185 | 187 | var users []*gitlab.User
|
186 | 188 | for page == 1 || userslen != 0 {
|
187 | 189 | listUsersOptions.Page = page
|
188 |
| - paginatedUsers, _, err := client.Users.ListUsers(listUsersOptions) |
| 190 | + paginatedUsers, _, err := client.Users.ListUsers(listUsersOptions, gitlab.WithContext(ctx)) |
189 | 191 | if err != nil {
|
190 |
| - return err |
| 192 | + return diag.FromErr(err) |
191 | 193 | }
|
192 | 194 | users = append(users, paginatedUsers...)
|
193 | 195 | userslen = len(paginatedUsers)
|
|
0 commit comments