weideguo / solvestack Goto Github PK
View Code? Open in Web Editor NEWSimple command deliver server, base on SSH. 基于SSH实现的命令分发服务
License: MIT License
Simple command deliver server, base on SSH. 基于SSH实现的命令分发服务
License: MIT License
在点击运行时,对执行对象多层级的字段值进行校验
同时执行多个job,且job对相同主机执行,会造成之间互相影响,表现为命令被他job的阻塞。
未实现对帐号权限的控制,所有的帐号都具有完全的权限。
运行任务时如果终止任务,当前正在执行的或者已经加入执行队列的命令,会继续执行,因而真正停止是在此之后。
当执行任务发生失败,继续执行后显示的日志只是当前的日志,先前执行的日志查看不了。
centos 普通用户往.bash_profile
设置环境变量在分发命令时不生效,需要往.bashrc
写才能生效。
如设置PATH参数值,往.bash_profile
文件设置,则依旧是显示没有找到执行文件,形如分发执行 which mysql
。
如执行echo @
,则导致命令被卡住。
1、存在多个字段,但只需要设置一个字段的值即可点击下一步
按钮。
2、进入参数设置
tab后切回执行对象
tab,清空所有字段可以点击下一步
按钮。
1、文件下载时需要浏览器全部加载数据然后再存为文件,对于大文件会导致内存使用过高。
2、后端服务不支持断点续传。
global.x=`echo 1111`
global.x=Y`echo {{global.x}}`X
如上操作,第二行渲染异常
PermanentToken、ApiInvokeRule 通过在数据库中对这两个表的增删改查实现
原始任务断点运行,出现失败,继续运行则不能按照断点运行,而是按照普通任务执行,即不能执行一行后等待确认再执行下一行。
在比如对数据库进行迁移的需求,需要将两个执行对象(对应两个数据库实例/集群)构造成一个执行对象。
因此增加在执行时可以临时构造执行对象的功能,使得操作更加弹性、直观。
提供一个字段permanent_token
,可以直接调用指定url,而不用常规的账号与密码认证,以方便外部系统调用。
docker-compose up -d
启动容器,或者重启solve所在的容器,solve进程未能启动
现在的处理方式是进入容器,手动启动进程
windows使用某些编辑器(notepad++)编辑playbook,当playbook最后一行末尾没有空格时,会导致页面显示值比实际值少1。
web界面已经没有显示存在SSH连接,但在目标服务器上依旧看到SSH连接存在,而且不会被释放
global.a=`echo " -e"`
形如这样的语句会导致赋值为空,原因是在实际执行时会转换成echo `echo " -e"`
,而-e
为echo
命令的参数,因此返回值为空。其他echo
的参数也可能出类似情况。
playbook的语法是shell扩展的,直接使用shell的高亮有些特性没有体现,参考prismjs/components/prism-bash.js
这个文件构建自定义的高亮扩展。
在执行任务时,如果快速点击执行
按钮,点击过快web页面未来得及转换,则可能出现工单被重复提交。
已有的直接双击删除容易误操作
当session参数全为大写,session参数设置
对话框中参数名被输入框覆盖。
形如mysqld --initialize
的命令可能会使用标准错误输出,导致前端显示任务失败。
在延迟比较大场景,因为请求请求耗时较高,没有加载动画显得操作很卡顿。
在执行任务后跳转到工单详情页,点击刷新按钮,可能出现告警提示。
不影响实际使用,再次点刷新即可。
redis-cli -a 'XXXXXX' set a 1 & &
如分发执行这个,没有报错,但命令没有实际执行
前端选择不了false
即使不选false
也不能走到下一步
有些命令会有交互界面,参考expect
进行交互支持。
1.执行出现失败
2.更改执行对象
3.继续运行失败的任务,所使用的执行对象的信息不是上一步更改后的。
问题:
当运行任务出现失败时,对子项点击继续运行,出现弹出框,设置session且点击保存,但关闭弹出框,再次点击继续运行则出现的弹出框session参数值没有变化。
原因:
如果设置session参数,则由返回值确定继续运行任务的id,执行时才能将任务与session参数绑定。
因此在保存session后不应该关闭弹出框,而是需要继续执行才能绑定。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.