jirashell/config.go

84 lines
1.4 KiB
Go

package main
import (
jira "github.com/andygrunwald/go-jira/v2/cloud"
"github.com/spf13/viper"
)
func SetProject(project *jira.Project) {
viper.Set("project.valid", true)
viper.Set("project.id", project.ID)
viper.Set("project.key", project.Key)
UnsetBoard()
}
func UnsetProject() {
viper.Set("project.valid", false)
UnsetBoard()
}
func GetProjectId() string {
return viper.GetString("project.id")
}
func HasProject() bool {
return viper.GetBool("project.valid")
}
func SetBoard(id int, name string) {
viper.Set("board.valid", true)
viper.Set("board.id", id)
viper.Set("board.name", name)
UnsetSprint()
}
func UnsetBoard() {
viper.Set("board.valid", false)
UnsetSprint()
}
func GetBoardId() int {
return viper.GetInt("board.id")
}
func HasBoard() bool {
return viper.GetBool("board.valid")
}
func SetSprint(sprint *jira.Sprint) {
viper.Set("sprint.valid", true)
viper.Set("sprint.id", sprint.ID)
viper.Set("sprint.name", sprint.Name)
UnsetIssue()
}
func UnsetSprint() {
viper.Set("sprint.valid", false)
UnsetIssue()
}
func GetSprintId() int {
return viper.GetInt("sprint.id")
}
func HasSprint() bool {
return viper.GetBool("sprint.valid")
}
func SetIssue(key string) {
viper.Set("issue.valid", true)
viper.Set("issue.id", key)
}
func UnsetIssue() {
viper.Set("issue.valid", false)
}
func HasIssue() bool {
return viper.GetBool("issue.valid")
}
func GetIssueKey() string {
return viper.GetString("issue.id")
}