...

Source file src/edge-infra.dev/pkg/f8n/devinfra/jack/plugin/enforce_release_label/handler.go

Documentation: edge-infra.dev/pkg/f8n/devinfra/jack/plugin/enforce_release_label

     1  package enforcereleaselabel
     2  
     3  import (
     4  	"github.com/google/go-github/v47/github"
     5  
     6  	"edge-infra.dev/pkg/f8n/devinfra/jack/constants"
     7  	"edge-infra.dev/pkg/f8n/devinfra/jack/plugin"
     8  )
     9  
    10  func init() {
    11  	plugin.RegisterPullRequestHandler(constants.PluginEnforceReleaseLabel, handlePR)
    12  }
    13  
    14  func handlePR(hp plugin.HandlerParams, pre github.PullRequestEvent) {
    15  	hp.Log.WithName(constants.PluginEnforceReleaseLabel)
    16  
    17  	action := pre.GetAction()
    18  	switch action {
    19  	case "opened":
    20  		if err := openingReleaseLabel(hp, pre); err != nil {
    21  			hp.Log.Error(err, "Issue: Failed to add release label to new PR")
    22  			return
    23  		}
    24  	case "labeled":
    25  		if err := addedManualLabel(hp, pre); err != nil {
    26  			hp.Log.Error(err, "Issue: Failed to add release label to PR")
    27  			return
    28  		}
    29  	case "unlabeled":
    30  		if err := checkRemoveLabel(hp, pre); err != nil {
    31  			hp.Log.Error(err, "Issue: Failed to remove release label on PR")
    32  			return
    33  		}
    34  	}
    35  }
    36  

View as plain text