From f10a716f4ff37e9d592163979121ba6a9cc35e0c Mon Sep 17 00:00:00 2001 From: sawp-d <70409268+sawp-d@users.noreply.github.com> Date: Wed, 15 Jun 2022 13:18:30 -0700 Subject: [PATCH 1/5] Add check for job.Filter before validation --- .../provider/resource_cloudflare_logpush_job.go | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/internal/provider/resource_cloudflare_logpush_job.go b/internal/provider/resource_cloudflare_logpush_job.go index ba474d0f4d..c9b257221c 100644 --- a/internal/provider/resource_cloudflare_logpush_job.go +++ b/internal/provider/resource_cloudflare_logpush_job.go @@ -117,14 +117,16 @@ func resourceCloudflareLogpushJobRead(ctx context.Context, d *schema.ResourceDat d.SetId("") return nil } - - if job.Filter.Where.Validate() == nil { - filterstr, err := json.Marshal(job.Filter) - if err != nil { - return diag.FromErr(err) + + if job.Filter != nil { + if job.Filter.Where.Validate() == nil { + filterstr, err := json.Marshal(job.Filter) + if err != nil { + return diag.FromErr(err) + } + + d.Set("filter", string(filterstr)) } - - d.Set("filter", string(filterstr)) } d.Set("name", job.Name) From 327dbe5d42d70dc7fc148bf0cc49f2965b721de7 Mon Sep 17 00:00:00 2001 From: sawp-d <70409268+sawp-d@users.noreply.github.com> Date: Wed, 15 Jun 2022 13:54:03 -0700 Subject: [PATCH 2/5] Create 1704.txt in changelog --- .changelog/1704.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/1704.txt diff --git a/.changelog/1704.txt b/.changelog/1704.txt new file mode 100644 index 0000000000..7cbb19e7d5 --- /dev/null +++ b/.changelog/1704.txt @@ -0,0 +1,3 @@ +```release-note:bug +resource/cloudflare_logpush_job: Fix null 'filter' attribute throwing "error parsing logpush job from resource: unexpected end of JSON input" +``` From af82cc506d7270ebc802b03c30fbeb0605705b3e Mon Sep 17 00:00:00 2001 From: sawp-d <70409268+sawp-d@users.noreply.github.com> Date: Thu, 16 Jun 2022 16:16:48 -0700 Subject: [PATCH 3/5] Get filter from resource data to check for nil --- .../provider/resource_cloudflare_logpush_job.go | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/internal/provider/resource_cloudflare_logpush_job.go b/internal/provider/resource_cloudflare_logpush_job.go index c9b257221c..270ea32a66 100644 --- a/internal/provider/resource_cloudflare_logpush_job.go +++ b/internal/provider/resource_cloudflare_logpush_job.go @@ -118,15 +118,13 @@ func resourceCloudflareLogpushJobRead(ctx context.Context, d *schema.ResourceDat return nil } - if job.Filter != nil { - if job.Filter.Where.Validate() == nil { - filterstr, err := json.Marshal(job.Filter) - if err != nil { - return diag.FromErr(err) - } - - d.Set("filter", string(filterstr)) + if job.Filter.Where.Validate() == nil && d.Get("filter") != nil { + filterstr, err := json.Marshal(job.Filter) + if err != nil { + return diag.FromErr(err) } + + d.Set("filter", string(filterstr)) } d.Set("name", job.Name) From dcb82758c9b7829a2ef2c33bf07465274ad0a12f Mon Sep 17 00:00:00 2001 From: sawp-d <70409268+sawp-d@users.noreply.github.com> Date: Thu, 16 Jun 2022 16:17:44 -0700 Subject: [PATCH 4/5] Update .changelog/1704.txt Co-authored-by: Jacob Bednarz --- .changelog/1704.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changelog/1704.txt b/.changelog/1704.txt index 7cbb19e7d5..0fb847623f 100644 --- a/.changelog/1704.txt +++ b/.changelog/1704.txt @@ -1,3 +1,3 @@ ```release-note:bug -resource/cloudflare_logpush_job: Fix null 'filter' attribute throwing "error parsing logpush job from resource: unexpected end of JSON input" +resource/cloudflare_logpush_job: fix null `filter` attribute throwing parsing error ``` From 352eeb0b57b5d5e77f56f35e8adc471bb9b4d3cd Mon Sep 17 00:00:00 2001 From: sawp-d <70409268+sawp-d@users.noreply.github.com> Date: Thu, 16 Jun 2022 16:34:50 -0700 Subject: [PATCH 5/5] Update after running gofmt --- internal/provider/resource_cloudflare_logpush_job.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/provider/resource_cloudflare_logpush_job.go b/internal/provider/resource_cloudflare_logpush_job.go index 270ea32a66..2971cfc99a 100644 --- a/internal/provider/resource_cloudflare_logpush_job.go +++ b/internal/provider/resource_cloudflare_logpush_job.go @@ -117,7 +117,7 @@ func resourceCloudflareLogpushJobRead(ctx context.Context, d *schema.ResourceDat d.SetId("") return nil } - + if job.Filter.Where.Validate() == nil && d.Get("filter") != nil { filterstr, err := json.Marshal(job.Filter) if err != nil {