Skip to content

Commit 5de35cc

Browse files
authored
fix: crash when using provider headers (#178)
* fix: crash when using provider headers * fix(test): flaky TestAccArgoCDCluster_uniqueByServerTrimmed
1 parent 79342b9 commit 5de35cc

File tree

3 files changed

+27
-1
lines changed

3 files changed

+27
-1
lines changed

argocd/provider.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,12 @@ func initApiClient(d *schema.ResourceData) (
221221
opts.PortForwardNamespace = v.(string)
222222
}
223223
if v, ok := d.GetOk("headers"); ok {
224-
opts.Headers = v.([]string)
224+
_headers := v.(*schema.Set).List()
225+
var headers = make([]string, len(_headers))
226+
for i, _header := range _headers {
227+
headers[i] = _header.(string)
228+
}
229+
opts.Headers = headers
225230
}
226231
if _, ok := d.GetOk("kubernetes"); ok {
227232
opts.KubeOverrides = &clientcmd.ConfigOverrides{}

argocd/resource_argocd_application_test.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -618,6 +618,25 @@ func TestAccArgoCDApplication_Info(t *testing.T) {
618618
}})
619619
}
620620

621+
func TestProvider_headers(t *testing.T) {
622+
name := acctest.RandomWithPrefix("test-acc")
623+
resource.Test(t, resource.TestCase{
624+
PreCheck: func() { testAccPreCheck(t) },
625+
ProviderFactories: testAccProviders,
626+
Steps: []resource.TestStep{
627+
{
628+
Config: fmt.Sprintf("%s %s", `
629+
provider "argocd" {
630+
headers = [
631+
"Hello: HiThere",
632+
]
633+
}`, testAccArgoCDApplicationSimple(name),
634+
),
635+
},
636+
},
637+
})
638+
}
639+
621640
func testAccArgoCDApplicationSimple(name string) string {
622641
return fmt.Sprintf(`
623642
resource "argocd_application" "simple" {

argocd/resource_argocd_cluster_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -506,6 +506,7 @@ resource "argocd_cluster" "cluster_two" {
506506
func testAccArgoCDClusterTwiceWithSameServerNoNamesTrimmed(server, server2 string) string {
507507
return fmt.Sprintf(`
508508
resource "argocd_cluster" "cluster_one" {
509+
name = "server"
509510
server = "%s"
510511
config {
511512
# Uses Kind's bootstrap token whose ttl is 24 hours after cluster bootstrap.
@@ -516,6 +517,7 @@ resource "argocd_cluster" "cluster_one" {
516517
}
517518
}
518519
resource "argocd_cluster" "cluster_two" {
520+
name = "server"
519521
server = "%s"
520522
config {
521523
# Uses Kind's bootstrap token whose ttl is 24 hours after cluster bootstrap.

0 commit comments

Comments
 (0)