chore: working releasable commits

This commit is contained in:
Julian Tölle 2024-07-12 14:51:24 +02:00
parent 97c407f939
commit 74ea8fba17
11 changed files with 1416 additions and 0 deletions

75
cmd/rp/cmd/run.go Normal file
View file

@ -0,0 +1,75 @@
/*
Copyright © 2024 Julian Tölle
*/
package cmd
import (
"fmt"
"log"
"strings"
"github.com/go-git/go-git/v5"
"github.com/spf13/cobra"
rp "github.com/apricote/releaser-pleaser"
)
// runCmd represents the run command
var runCmd = &cobra.Command{
Use: "run",
RunE: run,
}
var (
flagForge string
flagRepo string
)
func init() {
rootCmd.AddCommand(runCmd)
// Here you will define your flags and configuration settings.
runCmd.PersistentFlags().StringVar(&flagForge, "forge", "", "")
runCmd.PersistentFlags().StringVar(&flagRepo, "repo", "", "")
}
func run(cmd *cobra.Command, args []string) error {
var f rp.Forge
forgeOptions := rp.ForgeOptions{
Repository: flagRepo,
}
switch flagForge {
case "gitlab":
f = rp.NewGitLab(forgeOptions)
case "github":
f = rp.NewGitHub(forgeOptions)
}
log.Println("Repo URL: " + f.RepoURL())
//repo, err := git.Clone(memory.NewStorage(), nil, &git.CloneOptions{
// URL: .RepoURL(),
// SingleBranch: true,
// Depth: CommitSearchDepth,
//})
repo, err := git.PlainOpen("~/git/listory")
if err != nil {
return err
}
commits, previousTag, err := rp.ReleasableCommits(repo)
if err != nil {
return err
}
for _, commit := range commits {
title, _, _ := strings.Cut(commit.Message, "\n")
fmt.Printf("%s %s\n", commit.Hash, title)
}
fmt.Printf("Previous Tag: %s\n", previousTag.Name)
return nil
}