mirror of
https://shylinux.com/x/icebergs
synced 2025-04-26 01:24:05 +08:00
opt some
This commit is contained in:
parent
38d74bc01f
commit
906183a522
@ -462,6 +462,10 @@ func init() {
|
||||
AdminCmd(m, SPACE).Table(func(value ice.Maps) {
|
||||
kit.If(kit.IsIn(value[mdb.TYPE], WORKER, SERVER), func() { m.Push(arg[0], value[mdb.NAME]) })
|
||||
})
|
||||
case SERVER:
|
||||
AdminCmd(m, SPACE).Table(func(value ice.Maps) {
|
||||
kit.If(kit.IsIn(value[mdb.TYPE], SERVER), func() { m.Push(arg[0], value[mdb.NAME]) })
|
||||
})
|
||||
case ORIGIN:
|
||||
m.SetAppend().Push(arg[0], SpideOrigin(m, ice.DEV))
|
||||
m.Copy(m.Cmd(SPIDE, kit.Dict(ice.MSG_FIELDS, CLIENT_ORIGIN)).CutTo(CLIENT_ORIGIN, arg[0]).Sort(arg[0]))
|
||||
|
@ -123,20 +123,20 @@ func init() {
|
||||
m.RenderResult(kit.Format(`<meta name="go-import" content="%s">`, kit.Format(`%s git %s`, strings.TrimSuffix(strings.Split(p, "://")[1], nfs.PT+GIT), p)))
|
||||
return
|
||||
}
|
||||
switch repos, service := _service_param(m, arg...); service {
|
||||
repos, service := _service_param(m, arg...)
|
||||
right := func(msg *ice.Message) bool {
|
||||
return msg.Append(mdb.TYPE) == STATUS || (msg.Append(mdb.TYPE) == web.SERVER && msg.Append(mdb.TEXT) == path.Base(repos)) || (msg.Append(mdb.TYPE) == nfs.REPOS && msg.Append(mdb.TEXT) == path.Base(repos))
|
||||
}
|
||||
switch service {
|
||||
case RECEIVE_PACK:
|
||||
if !web.BasicCheck(m, "git server", func(msg *ice.Message) bool {
|
||||
return msg.Append(mdb.TYPE) == STATUS || (msg.Append(mdb.TYPE) == web.SERVER && msg.Append(mdb.TEXT) == path.Base(repos))
|
||||
}) {
|
||||
if !web.BasicCheck(m, "git server", right) {
|
||||
return
|
||||
} else if !nfs.Exists(m, repos) {
|
||||
m.Cmd(Prefix(SERVICE), mdb.CREATE, mdb.NAME, path.Base(repos))
|
||||
}
|
||||
case UPLOAD_PACK:
|
||||
if mdb.Conf(m, Prefix(SERVICE), kit.Keym(aaa.AUTH)) == aaa.PRIVATE {
|
||||
if !web.BasicCheck(m, "git server", func(msg *ice.Message) bool {
|
||||
return msg.Append(mdb.TYPE) == STATUS || msg.Append(mdb.TYPE) == web.SERVER && msg.Append(mdb.TEXT) == path.Base(repos)
|
||||
}) {
|
||||
if !web.BasicCheck(m, "git server", right) {
|
||||
return
|
||||
}
|
||||
}
|
||||
@ -158,6 +158,15 @@ func init() {
|
||||
ice.CTX_INIT: {Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Cmd(nfs.DIR, ice.USR_LOCAL_REPOS, func(value ice.Maps) { _repos_insert(m, value[nfs.PATH]) })
|
||||
}},
|
||||
aaa.AUTH: {Name: "auth scope=private,public", Hand: func(m *ice.Message, arg ...string) {
|
||||
mdb.Config(m, aaa.AUTH, m.Option("scope"))
|
||||
}},
|
||||
"settoken": {Name: "settoken server*", Hand: func(m *ice.Message, arg ...string) {
|
||||
token := m.Cmdx(web.TOKEN, mdb.CREATE, mdb.TYPE, nfs.REPOS, mdb.NAME, m.Option(web.SERVER), mdb.TEXT, m.Option(nfs.REPOS))
|
||||
m.Cmd(web.SPACE, m.Option(web.SERVER), web.CODE_GIT_STATUS, web.DEV_CREATE_TOKEN, kit.Dict(
|
||||
ice.MSG_USERNAME, m.Option(web.SERVER), web.TOKEN, token, web.ORIGIN, m.Option(ice.MSG_USERHOST),
|
||||
))
|
||||
}},
|
||||
CLONE: {Name: "clone name*=demo origin", Hand: func(m *ice.Message, arg ...string) {
|
||||
git.PlainClone(_service_path(m, m.Option(mdb.NAME)), true, &git.CloneOptions{URL: m.Option(ORIGIN), Auth: _repos_auth(m, m.Option(ORIGIN))})
|
||||
_repos_insert(m, _service_path(m, m.Option(mdb.NAME)))
|
||||
@ -195,6 +204,7 @@ func init() {
|
||||
}).Sort(REPOS)
|
||||
kit.If(!m.IsCliUA(), func() { m.Cmdy(web.CODE_PUBLISH, ice.CONTEXTS, ice.DEV) })
|
||||
kit.If(mdb.Config(m, aaa.AUTH) == aaa.PRIVATE, func() { m.StatusTimeCount(aaa.AUTH, aaa.PRIVATE) })
|
||||
m.PushAction("settoken", mdb.REMOVE).Action(mdb.CREATE, aaa.AUTH)
|
||||
} else if repos := _repos_open(m, arg[0]); len(arg) == 1 {
|
||||
defer m.PushScript(kit.Format("git clone %s", _service_link(m, arg[0])))
|
||||
_repos_branch(m, repos)
|
||||
|
@ -68,6 +68,7 @@ func init() {
|
||||
msg := mdb.HashSelect(m.Spawn(), m.Option(ACCESS))
|
||||
if msg.Append(TOKENS) == "" || m.Time() > msg.Append(EXPIRES) {
|
||||
res := m.Cmd(web.SPIDE, WX, http.MethodGet, TOKEN_CREDENTIAL, msg.AppendSimple(APPID, SECRET))
|
||||
m.Debug("what %v", res.FormatMeta())
|
||||
mdb.HashModify(m, m.OptionSimple(ACCESS), EXPIRES, m.Time(kit.Format("%vs", res.Append(oauth.EXPIRES_IN))), TOKENS, res.Append(oauth.ACCESS_TOKEN))
|
||||
msg = mdb.HashSelect(m.Spawn(), m.Option(ACCESS))
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user