Merge pull request 'feat: add --assignee flag to pr create command' (#14) from feat/pr_assignees into main
Reviewed-on: https://codeberg.org/romaintb/fgj/pulls/14
This commit is contained in:
commit
daa51159ec
1 changed files with 21 additions and 4 deletions
25
cmd/pr.go
25
cmd/pr.go
|
|
@ -68,6 +68,7 @@ func init() {
|
|||
prCreateCmd.Flags().StringP("body", "b", "", "Body for the pull request")
|
||||
prCreateCmd.Flags().StringP("head", "H", "", "Head branch")
|
||||
prCreateCmd.Flags().StringP("base", "B", "", "Base branch (default: main)")
|
||||
prCreateCmd.Flags().StringSliceP("assignee", "a", []string{}, "Assign people by their login. Use \"@me\" to self-assign.")
|
||||
|
||||
prMergeCmd.Flags().StringP("repo", "R", "", "Repository in owner/name format")
|
||||
prMergeCmd.Flags().String("merge-method", "merge", "Merge method: merge, rebase, squash")
|
||||
|
|
@ -173,6 +174,7 @@ func runPRCreate(cmd *cobra.Command, args []string) error {
|
|||
body, _ := cmd.Flags().GetString("body")
|
||||
head, _ := cmd.Flags().GetString("head")
|
||||
base, _ := cmd.Flags().GetString("base")
|
||||
assignees, _ := cmd.Flags().GetStringSlice("assignee")
|
||||
|
||||
if base == "" {
|
||||
base = "main"
|
||||
|
|
@ -201,11 +203,26 @@ func runPRCreate(cmd *cobra.Command, args []string) error {
|
|||
return err
|
||||
}
|
||||
|
||||
// Resolve @me in assignees
|
||||
resolvedAssignees := make([]string, 0, len(assignees))
|
||||
for _, assignee := range assignees {
|
||||
if assignee == "@me" {
|
||||
user, _, err := client.GetMyUserInfo()
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to get current user info: %w", err)
|
||||
}
|
||||
resolvedAssignees = append(resolvedAssignees, user.UserName)
|
||||
} else {
|
||||
resolvedAssignees = append(resolvedAssignees, assignee)
|
||||
}
|
||||
}
|
||||
|
||||
pr, _, err := client.CreatePullRequest(owner, name, gitea.CreatePullRequestOption{
|
||||
Title: title,
|
||||
Body: body,
|
||||
Head: head,
|
||||
Base: base,
|
||||
Title: title,
|
||||
Body: body,
|
||||
Head: head,
|
||||
Base: base,
|
||||
Assignees: resolvedAssignees,
|
||||
})
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to create pull request: %w", err)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue