added base logic for search pj and filtered files of branches
This commit is contained in:
parent
81ef860c2c
commit
4fef222482
@ -1,5 +1,55 @@
|
||||
package main
|
||||
|
||||
func main() {
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/xanzy/go-gitlab"
|
||||
"log"
|
||||
"os"
|
||||
)
|
||||
|
||||
const (
|
||||
gitlabToken string = "glpat-soV6sDQnNdNTFVxv7u44"
|
||||
gitlabUrl string = "https://penahub.gitlab.yandexcloud.net/api/v4"
|
||||
)
|
||||
|
||||
func main() {
|
||||
git, err := gitlab.NewClient(gitlabToken, gitlab.WithBaseURL(gitlabUrl))
|
||||
if err != nil {
|
||||
log.Fatalf("failed create client: %v", err)
|
||||
}
|
||||
|
||||
projects, _, err := git.Projects.ListProjects(&gitlab.ListProjectsOptions{})
|
||||
if err != nil {
|
||||
log.Fatalf("failed getting projects: %v", err)
|
||||
}
|
||||
|
||||
resultFile, err := os.Create("report.txt")
|
||||
if err != nil {
|
||||
log.Fatalf("failed create report file: %v", err)
|
||||
}
|
||||
|
||||
defer resultFile.Close()
|
||||
|
||||
for _, pj := range projects {
|
||||
changes, err := getChangelog(git, pj.ID, pj.Name)
|
||||
if err != nil {
|
||||
log.Printf("Error getting changelogs for %s: %v", pj.Name, err)
|
||||
continue
|
||||
}
|
||||
|
||||
if len(changes) > 0 {
|
||||
fmt.Fprintf(resultFile, "Repository: %s\n", pj.Name)
|
||||
for _, change := range changes {
|
||||
fmt.Fprintln(resultFile, change)
|
||||
}
|
||||
fmt.Fprintln(resultFile)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func getChangelog(git *gitlab.Client, pjID int, pjName string) ([]string, error) {
|
||||
fmt.Println(git.RepositoryFiles.GetFile(pjID, "cmd/main.go", &gitlab.GetFileOptions{Ref: gitlab.String("main")}))
|
||||
fmt.Println(pjName)
|
||||
|
||||
return []string{}, nil
|
||||
}
|
||||
|
0
changelog_search/report.txt
Normal file
0
changelog_search/report.txt
Normal file
Loading…
Reference in New Issue
Block a user