mirror of
https://github.com/midoks/mdserver-web.git
synced 2026-10-10 06:39:25 +08:00
update
This commit is contained in:
@@ -20,8 +20,8 @@ function readme(){
|
||||
var html = '<p>开发文档:https://cloud.google.com/sdk/docs/</p>';
|
||||
html += '<p>* 注意:本插件通过Google <a class="btlink" target="_blank" href="https://cloud.google.com/sdk/docs/scripting-gcloud">JSON 格式</a>赋权免交互式</p>';
|
||||
html += '<p>* 注意:添加:gcloud auth activate-service-account --key-file [KEY_FILE] << y</p>';
|
||||
|
||||
html += '<p>* 注意:设置后,一般同步项目命令:gcloud app deploy << y</p>';
|
||||
html += '<p>* 注意:可以查看命令,把命令加入到脚本中...自动更新。</p>';
|
||||
$('.bt-w-main .soft-man-con').html(html);
|
||||
}
|
||||
</script>
|
||||
+41
-1
@@ -115,7 +115,7 @@ def projectListAsync():
|
||||
|
||||
file = getServerDir() + '/' + args['name'] + '.json'
|
||||
if not os.path.exists(file):
|
||||
return 'file not exists!'
|
||||
return 'not configured file!'
|
||||
|
||||
content = public.readFile(file)
|
||||
contentObj = json.loads(content)
|
||||
@@ -132,6 +132,42 @@ def projectListAsync():
|
||||
return 'ok'
|
||||
|
||||
|
||||
def projectListCmd():
|
||||
args = getArgs()
|
||||
if not 'name' in args:
|
||||
return 'missing name!'
|
||||
|
||||
file = getServerDir() + '/' + args['name'] + '.json'
|
||||
if not os.path.exists(file):
|
||||
return 'not configured file!'
|
||||
|
||||
content = public.readFile(file)
|
||||
contentObj = json.loads(content)
|
||||
asyncUser = contentObj['client_email']
|
||||
cmd = getServerDir() + '/google-cloud-sdk/bin/'
|
||||
projectDir = public.getWwwDir() + '/' + args['name']
|
||||
asyncCmd = 'cd ' + projectDir + ' && ' + cmd + 'gcloud app deploy << y'
|
||||
return asyncCmd
|
||||
|
||||
|
||||
def projectListUrl():
|
||||
args = getArgs()
|
||||
if not 'name' in args:
|
||||
return 'missing name!'
|
||||
|
||||
file = getServerDir() + '/' + args['name'] + '.json'
|
||||
if not os.path.exists(file):
|
||||
return 'not configured file!'
|
||||
|
||||
content = public.readFile(file)
|
||||
contentObj = json.loads(content)
|
||||
asyncUser = contentObj['client_email']
|
||||
plist = asyncUser.split('@')
|
||||
|
||||
url = 'https://' + plist[0] + '.appspot.com'
|
||||
return url
|
||||
|
||||
|
||||
def projectList():
|
||||
args = getArgs()
|
||||
|
||||
@@ -172,5 +208,9 @@ if __name__ == "__main__":
|
||||
print projectListDel()
|
||||
elif func == 'project_list_async':
|
||||
print projectListAsync()
|
||||
elif func == 'project_list_cmd':
|
||||
print projectListCmd()
|
||||
elif func == 'project_list_url':
|
||||
print projectListUrl()
|
||||
else:
|
||||
print 'error'
|
||||
|
||||
+31
-4
@@ -55,7 +55,8 @@ function projectList(page, search){
|
||||
'<td>'+ulist[i]['dir']+'</td><td>'+
|
||||
'<a class="btlink" onclick="gaeSetProject(\''+ulist[i]['name']+'\','+ulist[i]['isset']+')">'+setName+'</a> | ' +
|
||||
'<a class="btlink" onclick="gaeAsyncProject(\''+ulist[i]['name']+'\')">同步</a> | ' +
|
||||
'<a class="btlink" target="_blank" href="' + '' +'">查看命令</a>' +
|
||||
'<a class="btlink" target="_blank" onclick="gaeProjectCmd(\''+ulist[i]['name']+'\')">命令</a> | ' +
|
||||
'<a class="btlink" target="_blank" onclick="gaeProjectUrl(\''+ulist[i]['name']+'\')">访问</a>' +
|
||||
'</td></tr>';
|
||||
}
|
||||
|
||||
@@ -109,12 +110,38 @@ function gaeProjectDel(pname){
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function gaeAsyncProject(pname){
|
||||
console.log(pname);
|
||||
gaePost('project_list_async', {'name':pname}, function(data){
|
||||
console.log(data);
|
||||
// layer.msg('同步成功!',{icon:0,time:2000,shade: [0.3, '#000']});
|
||||
if (data.data !='ok'){
|
||||
layer.msg(data.data,{icon:0,time:2000,shade: [0.3, '#000']});
|
||||
} else {
|
||||
layer.msg('同步成功!',{icon:0,time:2000,shade: [0.3, '#000']});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function gaeProjectCmd(pname){
|
||||
gaePost('project_list_cmd', {'name':pname}, function(data){
|
||||
var data_str = data.data;
|
||||
if (data_str.indexOf('gcloud') !== -1){
|
||||
layer.msg(data.data,{icon:1,time:5000,shade: [0.3, '#000']});
|
||||
} else {
|
||||
layer.msg(data.data,{icon:0,time:5000,shade: [0.3, '#000']});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function gaeProjectUrl(pname){
|
||||
gaePost('project_list_url', {'name':pname}, function(data){
|
||||
var data_str = data.data;
|
||||
if (data_str.indexOf('appspot.com') !== -1){
|
||||
window.open(data.data);
|
||||
} else {
|
||||
layer.msg(data.data,{icon:0,time:5000,shade: [0.3, '#000']});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user