1
0
forked from x/icebergs

add git.tags

This commit is contained in:
shylinux 2021-10-19 11:40:43 +08:00
parent efb684a18b
commit 6c5fc886d3
6 changed files with 61 additions and 5 deletions

View File

@ -1,6 +1,7 @@
package ice
const (
TB = "\t"
SP = " "
PT = "."
NL = "\n"

View File

@ -178,6 +178,7 @@ func init() {
BINPACK: {Name: "binpack", Help: "打包:生成 src/binpack.go", Hand: func(m *ice.Message, arg ...string) {
_autogen_version(m)
m.Cmd(BINPACK, mdb.CREATE)
m.Cmd(cli.SYSTEM, "sh", "-c", `cat src/binpack.go|sed 's/package main/package ice/g' > usr/release/binpack.go`)
}},
ssh.SCRIPT: {Name: "script", Help: "脚本:生成 etc/miss.sh", Hand: func(m *ice.Message, arg ...string) {
_autogen_miss(m)

View File

@ -119,7 +119,7 @@ func init() {
"package": {Name: "package", Help: "依赖", Hand: func(m *ice.Message, arg ...string) {
web.PushStream(m)
p := kit.Path(ice.USR_PUBLISH)
m.Option(cli.CMD_DIR, kit.Path(os.Getenv("HOME")))
m.Option(cli.CMD_DIR, kit.Path(os.Getenv(cli.HOME)))
// m.Cmdy(cli.SYSTEM, "tar", "-zcvf", "go.tar.gz", "go/pkg")
// m.Cmdy(cli.SYSTEM, "mv", "go.tar.gz", p)
m.Cmdy(cli.SYSTEM, "tar", "-zcvf", "vim.tar.gz", ".vim/plugged")

View File

@ -49,6 +49,10 @@ func init() {
}
m.ProcessInner()
}},
BINPACK: {Name: "binpack", Help: "打包", Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(AUTOGEN, BINPACK)
m.ProcessInner()
}},
mdb.INPUTS: {Name: "inputs", Help: "补全", Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(AUTOGEN, mdb.INPUTS, arg)
}},

2
go.sum
View File

@ -1,6 +1,4 @@
github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc=
github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e h1:MRM5ITcdelLK2j1vwZ3Je0FKVCfqOLp5zO6trqMLYs0=
github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e/go.mod h1:XV66xRDqSt+GTGFMVlhk3ULuV0y9ZmzeVGR4mloJI3M=
shylinux.com/x/toolkits v0.3.6 h1:vScxphySLIULkRps0i22yMW7b+sd5MbCBaZRfUmzTu0=
shylinux.com/x/toolkits v0.3.6/go.mod h1:8LbYHe7oxBIqb6s4MSOD+4d28QvPdvkyCVtwB/JW7AA=

View File

@ -8,6 +8,7 @@ import (
"shylinux.com/x/icebergs/base/cli"
"shylinux.com/x/icebergs/base/ctx"
"shylinux.com/x/icebergs/base/mdb"
"shylinux.com/x/icebergs/base/nfs"
kit "shylinux.com/x/toolkits"
)
@ -69,7 +70,7 @@ func _status_list(m *ice.Message) (files, adds, dels int, last time.Time) {
list := []string{}
switch vs[0] {
case "##":
m.Push(TAGS, tags)
m.Push(TAGS, strings.TrimSpace(tags))
if tags == ice.ErrWarn {
list = append(list, TAG)
}
@ -129,6 +130,57 @@ func init() {
defer m.Toast(ice.SUCCESS, MAKE, "3s")
m.Cmdy(cli.SYSTEM, MAKE)
}},
TAGS: {Name: "tags", Help: "标签", Hand: func(m *ice.Message, arg ...string) {
m.ProcessHold()
vs := map[string]string{}
m.Cmd(STATUS).Table(func(index int, value map[string]string, head []string) {
if value["type"] == "##" {
if value["name"] == "release" {
value["name"] = "ice"
}
vs[value["name"]] = strings.Split(value["tags"], "-")[0]
}
})
m.GoToast(TAGS, func(toast func(string, int, int)) {
count, total := 0, len(vs)
toast(cli.BEGIN, count, total)
for k := range vs {
count++
toast(k, count, total)
change := false
m.Option(nfs.DIR_ROOT, _repos_path(k))
mod := m.Cmdx(nfs.CAT, ice.GO_MOD, func(text string, line int) string {
ls := kit.Split(text)
if len(ls) < 2 || ls[1] == "=>" {
return text
}
if v, ok := vs[kit.Slice(strings.Split(ls[0], "/"), -1)[0]]; ok {
text = ice.TB + ls[0] + ice.SP + v
change = true
}
return text
})
if change {
m.Cmd(nfs.SAVE, ice.GO_SUM, "")
m.Cmd(nfs.SAVE, ice.GO_MOD, mod)
m.Option(cli.CMD_DIR, _repos_path(k))
if k == ice.CONTEXTS {
continue
}
if k == ice.ICEBERGS {
m.Cmd(cli.SYSTEM, "go", "build")
continue
}
m.Cmd(cli.SYSTEM, cli.MAKE)
}
}
toast(ice.SUCCESS, count, total)
})
}},
PUSH: {Name: "push", Help: "上传", Hand: func(m *ice.Message, arg ...string) {
if m.Option(kit.MDB_NAME) == "" {
_status_each(m, PUSH, cli.SYSTEM, GIT, PUSH)
@ -187,7 +239,7 @@ func init() {
}},
}, Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
if len(arg) == 0 {
m.Action(PULL, MAKE, PUSH)
m.Action(PULL, MAKE, PUSH, TAGS)
files, adds, dels, last := _status_list(m)
m.Status("files", files, "adds", adds, "dels", dels, "last", last.Format(ice.MOD_TIME))