aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/cli/internal/util/task_id.go
diff options
context:
space:
mode:
author简律纯 <hsiangnianian@outlook.com>2023-04-28 01:36:55 +0800
committer简律纯 <hsiangnianian@outlook.com>2023-04-28 01:36:55 +0800
commitfc8c5fdce62fb229202659408798a7b6c98f6e8b (patch)
tree7554f80e50de4af6fd255afa7c21bcdd58a7af34 /cli/internal/util/task_id.go
parentdd84b9d64fb98746a230cd24233ff50a562c39c9 (diff)
downloadHydroRoll-fc8c5fdce62fb229202659408798a7b6c98f6e8b.tar.gz
HydroRoll-fc8c5fdce62fb229202659408798a7b6c98f6e8b.zip
Diffstat (limited to 'cli/internal/util/task_id.go')
-rw-r--r--cli/internal/util/task_id.go66
1 files changed, 0 insertions, 66 deletions
diff --git a/cli/internal/util/task_id.go b/cli/internal/util/task_id.go
deleted file mode 100644
index e4415b6..0000000
--- a/cli/internal/util/task_id.go
+++ /dev/null
@@ -1,66 +0,0 @@
-package util
-
-import (
- "fmt"
- "strings"
-)
-
-const (
- // TaskDelimiter separates a package name from a task name in a task id
- TaskDelimiter = "#"
- // RootPkgName is the reserved name that specifies the root package
- RootPkgName = "//"
-)
-
-// GetTaskId returns a package-task identifier (e.g @feed/thing#build).
-func GetTaskId(pkgName interface{}, target string) string {
- if IsPackageTask(target) {
- return target
- }
- return fmt.Sprintf("%v%v%v", pkgName, TaskDelimiter, target)
-}
-
-// RootTaskID returns the task id for running the given task in the root package
-func RootTaskID(target string) string {
- return GetTaskId(RootPkgName, target)
-}
-
-// GetPackageTaskFromId returns a tuple of the package name and target task
-func GetPackageTaskFromId(taskId string) (packageName string, task string) {
- arr := strings.Split(taskId, TaskDelimiter)
- return arr[0], arr[1]
-}
-
-// RootTaskTaskName returns the task portion of a root task taskID
-func RootTaskTaskName(taskID string) string {
- return strings.TrimPrefix(taskID, RootPkgName+TaskDelimiter)
-}
-
-// IsPackageTask returns true if input is a package-specific task
-// whose name has a length greater than 0.
-//
-// Accepted: myapp#build
-// Rejected: #build, build
-func IsPackageTask(task string) bool {
- return strings.Index(task, TaskDelimiter) > 0
-}
-
-// IsTaskInPackage returns true if the task does not belong to a different package
-// note that this means unscoped tasks will always return true
-func IsTaskInPackage(task string, packageName string) bool {
- if !IsPackageTask(task) {
- return true
- }
- packageNameExpected, _ := GetPackageTaskFromId(task)
- return packageNameExpected == packageName
-}
-
-// StripPackageName removes the package portion of a taskID if it
-// is a package task. Non-package tasks are returned unmodified
-func StripPackageName(taskID string) string {
- if IsPackageTask(taskID) {
- _, task := GetPackageTaskFromId(taskID)
- return task
- }
- return taskID
-}