Can reverse sha-ed job type

This commit is contained in:
nemunaire 2021-07-31 17:35:29 +02:00
commit 4e982b39f9
3 changed files with 64 additions and 21 deletions

View file

@ -3,7 +3,10 @@ package engine
import (
"crypto/sha256"
"fmt"
"log"
"strings"
"github.com/nemunaire/minifaas/jobs"
)
const CTR_NAME_PREFIX = "minifaas"
@ -13,7 +16,7 @@ func GenContainerPrefix(jobtype string) string {
}
func ParseContainerName(name string) (jobtype, id string, err error) {
if !strings.HasPrefix(name, "/"+CTR_NAME_PREFIX+"-") {
if !strings.HasPrefix(strings.TrimPrefix(name, "/"), CTR_NAME_PREFIX+"-") {
return "", "", fmt.Errorf("This is not a %s job: starting with %q", CTR_NAME_PREFIX, name)
}
@ -22,7 +25,14 @@ func ParseContainerName(name string) (jobtype, id string, err error) {
return "", "", fmt.Errorf("This is not a %s job: %q didn't has at least 3 args", CTR_NAME_PREFIX, name)
}
return tmp[1], strings.Join(tmp[2:], "-"), nil
jobtype = jobs.GetJobType(tmp[1])
if jobtype == "" {
return "", "", fmt.Errorf("This is not a %s job: unknown job type %q", CTR_NAME_PREFIX, tmp[1])
}
id = strings.Join(tmp[2:], "-")
return
}
func FilterRunningContainers(jobtype string, ctrs map[string]string) (ret []string) {
@ -40,7 +50,10 @@ func FilterRunningContainers(jobtype string, ctrs map[string]string) (ret []stri
func CountRunningContainers(jobtype string, ctrs map[string]string) (n int) {
prefix := GenContainerPrefix(jobtype)
log.Println(ctrs)
for cname, _ := range ctrs {
log.Println(strings.TrimPrefix(cname, "/"), prefix)
if jobtype == "" || strings.HasPrefix(strings.TrimPrefix(cname, "/"), prefix) {
n += 1
}