Skip to content

[BUG]: cannot unmarshal object into Go struct field Protection.lock_branch of type bool after upgrade to v5.13.0  #1476

@TheQueenIsDead

Description

@TheQueenIsDead

Version

$ terraform version
Terraform v1.3.7
on linux_amd64
+ provider registry.terraform.io/integrations/github v5.13.0

Expected Behaviour

With Terraform config that could successfully execute a plan using module version v5.12.0.
I expect to be able to successfully execute a plan when upgrading to v5.13.0.

Actual Behaviour

I receive an error unmarshalling an existing branch protection

│ Error: json: cannot unmarshal object into Go struct field Protection.lock_branch of type bool
│ 
│   with module.repository["<repo_name>"].github_branch_protection_v3.branch_protection[0],
│   on .terraform/modules/repository/main.tf line 240, in resource "github_branch_protection_v3" "branch_protection":240: resource "github_branch_protection_v3" "branch_protection" {
│ 

Diagnosis

As alluded to in this comment, the module has recently updated go-github from 48.1.0 to 48.2.0 (#1425).

I'm assuming that the SDK adding support for the lock_branch property from the API response (added here), is causing the unmarshalling to fail, and this could perhaps be fixed by adding a lock_branch property to the branch protection state

Metadata

Metadata

Assignees

No one assigned

    Labels

    Status: Up for grabsIssues that are ready to be worked on by anyoneType: BugSomething isn't working as documented

    Type

    No type

    Projects

    Status

    ✅ Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions