gitextract_da93zxoy/ ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ └── bug-report.md │ └── workflows/ │ └── github_to_gitee.yml ├── .gitignore ├── LICENSE ├── README.md ├── docs/ │ ├── FQA.md │ ├── docker/ │ │ ├── Dockerfile │ │ ├── docker-compose.yml │ │ ├── entrypoint.sh │ │ ├── init_spug │ │ ├── nginx.conf │ │ ├── redis.conf │ │ ├── spug.ini │ │ └── ssh_config │ └── install.sh ├── spug_api/ │ ├── .gitignore │ ├── apps/ │ │ ├── account/ │ │ │ ├── __init__.py │ │ │ ├── history.py │ │ │ ├── management/ │ │ │ │ └── commands/ │ │ │ │ ├── set.py │ │ │ │ ├── update.py │ │ │ │ ├── updatedb.py │ │ │ │ └── user.py │ │ │ ├── models.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ ├── alarm/ │ │ │ ├── __init__.py │ │ │ ├── models.py │ │ │ ├── urls.py │ │ │ └── views.py │ │ ├── apis/ │ │ │ ├── __init__.py │ │ │ ├── config.py │ │ │ ├── deploy.py │ │ │ └── urls.py │ │ ├── app/ │ │ │ ├── __init__.py │ │ │ ├── models.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ ├── config/ │ │ │ ├── __init__.py │ │ │ ├── models.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ ├── deploy/ │ │ │ ├── __init__.py │ │ │ ├── helper.py │ │ │ ├── models.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ ├── exec/ │ │ │ ├── __init__.py │ │ │ ├── executors.py │ │ │ ├── management/ │ │ │ │ └── commands/ │ │ │ │ └── runworker.py │ │ │ ├── models.py │ │ │ ├── transfer.py │ │ │ ├── urls.py │ │ │ └── views.py │ │ ├── file/ │ │ │ ├── __init__.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ ├── home/ │ │ │ ├── __init__.py │ │ │ ├── models.py │ │ │ ├── navigation.py │ │ │ ├── notice.py │ │ │ ├── urls.py │ │ │ └── views.py │ │ ├── host/ │ │ │ ├── __init__.py │ │ │ ├── add.py │ │ │ ├── extend.py │ │ │ ├── group.py │ │ │ ├── models.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ ├── monitor/ │ │ │ ├── __init__.py │ │ │ ├── executors.py │ │ │ ├── management/ │ │ │ │ └── commands/ │ │ │ │ └── runmonitor.py │ │ │ ├── models.py │ │ │ ├── scheduler.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ ├── notify/ │ │ │ ├── __init__.py │ │ │ ├── models.py │ │ │ ├── urls.py │ │ │ └── views.py │ │ ├── repository/ │ │ │ ├── __init__.py │ │ │ ├── models.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ ├── schedule/ │ │ │ ├── __init__.py │ │ │ ├── builtin.py │ │ │ ├── executors.py │ │ │ ├── management/ │ │ │ │ └── commands/ │ │ │ │ └── runscheduler.py │ │ │ ├── models.py │ │ │ ├── scheduler.py │ │ │ ├── urls.py │ │ │ ├── utils.py │ │ │ └── views.py │ │ └── setting/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ ├── user.py │ │ ├── utils.py │ │ └── views.py │ ├── consumer/ │ │ ├── __init__.py │ │ ├── consumers.py │ │ ├── routing.py │ │ └── utils.py │ ├── libs/ │ │ ├── __init__.py │ │ ├── channel.py │ │ ├── decorators.py │ │ ├── gitlib.py │ │ ├── helper.py │ │ ├── ldap.py │ │ ├── mail.py │ │ ├── middleware.py │ │ ├── mixins.py │ │ ├── parser.py │ │ ├── push.py │ │ ├── spug.py │ │ ├── ssh.py │ │ ├── utils.py │ │ └── validators.py │ ├── logs/ │ │ └── .gitkeep │ ├── manage.py │ ├── repos/ │ │ ├── .gitkeep │ │ └── build/ │ │ └── .gitkeep │ ├── requirements.txt │ ├── spug/ │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── routing.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ ├── storage/ │ │ └── transfer/ │ │ └── .gitkeep │ └── tools/ │ ├── migrate.py │ ├── start-api.sh │ ├── start-monitor.sh │ ├── start-scheduler.sh │ ├── start-worker.sh │ ├── start-ws.sh │ └── supervisor-spug.ini └── spug_web/ ├── .gitignore ├── README.md ├── config-overrides.js ├── jsconfig.json ├── package.json ├── public/ │ ├── index.html │ ├── manifest.json │ ├── resource/ │ │ └── 主机导入模板.xlsx │ └── robots.txt └── src/ ├── App.js ├── components/ │ ├── ACEditor.js │ ├── Action.js │ ├── AppSelector.js │ ├── AuthButton.js │ ├── AuthCard.js │ ├── AuthDiv.js │ ├── AuthFragment.js │ ├── Breadcrumb.js │ ├── Link.js │ ├── LinkButton.js │ ├── NotFound.js │ ├── SearchForm.js │ ├── StatisticsCard.js │ ├── TableCard.js │ ├── index.js │ └── index.module.less ├── gStore.js ├── index.js ├── index.less ├── layout/ │ ├── Footer.js │ ├── Header.js │ ├── Notification.js │ ├── Sider.js │ ├── index.js │ └── layout.module.less ├── libs/ │ ├── functools.js │ ├── history.js │ ├── http.js │ ├── index.js │ ├── libs.module.css │ └── router.js ├── pages/ │ ├── alarm/ │ │ ├── alarm/ │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ └── store.js │ │ ├── contact/ │ │ │ ├── Form.js │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ └── store.js │ │ └── group/ │ │ ├── Form.js │ │ ├── Table.js │ │ ├── index.js │ │ └── store.js │ ├── config/ │ │ ├── app/ │ │ │ ├── Form.js │ │ │ ├── Rel.js │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ └── store.js │ │ ├── environment/ │ │ │ ├── Form.js │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ └── store.js │ │ ├── service/ │ │ │ ├── Form.js │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ └── store.js │ │ └── setting/ │ │ ├── DiffConfig.js │ │ ├── Form.js │ │ ├── JSONView.js │ │ ├── Record.js │ │ ├── TableView.js │ │ ├── TextView.js │ │ ├── index.js │ │ ├── index.module.css │ │ └── store.js │ ├── dashboard/ │ │ ├── AlarmTrend.js │ │ ├── RequestTop.js │ │ ├── StatisticCard.js │ │ ├── index.js │ │ └── index.module.css │ ├── deploy/ │ │ ├── app/ │ │ │ ├── AddSelect.js │ │ │ ├── AutoDeploy.js │ │ │ ├── CloneConfirm.js │ │ │ ├── Ext1Form.js │ │ │ ├── Ext1Setup1.js │ │ │ ├── Ext1Setup2.js │ │ │ ├── Ext1Setup3.js │ │ │ ├── Ext2Form.js │ │ │ ├── Ext2Setup1.js │ │ │ ├── Ext2Setup2.js │ │ │ ├── Form.js │ │ │ ├── Repo.js │ │ │ ├── Table.js │ │ │ ├── Tips.js │ │ │ ├── index.js │ │ │ ├── index.module.css │ │ │ └── store.js │ │ ├── repository/ │ │ │ ├── Console.js │ │ │ ├── Detail.js │ │ │ ├── Form.js │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ ├── index.module.less │ │ │ └── store.js │ │ └── request/ │ │ ├── Approve.js │ │ ├── BatchDelete.js │ │ ├── Ext1Console.js │ │ ├── Ext1Form.js │ │ ├── Ext2Console.js │ │ ├── Ext2Form.js │ │ ├── HostSelector.js │ │ ├── OutView.js │ │ ├── Rollback.js │ │ ├── Table.js │ │ ├── index.js │ │ ├── index.module.less │ │ └── store.js │ ├── exec/ │ │ ├── task/ │ │ │ ├── Output.js │ │ │ ├── Parameter.js │ │ │ ├── TemplateSelector.js │ │ │ ├── index.js │ │ │ ├── index.module.less │ │ │ └── store.js │ │ ├── template/ │ │ │ ├── Form.js │ │ │ ├── Parameter.js │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ └── store.js │ │ └── transfer/ │ │ ├── Output.js │ │ ├── index.js │ │ ├── index.module.less │ │ └── store.js │ ├── home/ │ │ ├── Nav.js │ │ ├── NavForm.js │ │ ├── Notice.js │ │ ├── Todo.js │ │ ├── index.js │ │ └── index.module.less │ ├── host/ │ │ ├── BatchSync.js │ │ ├── CloudImport.js │ │ ├── Detail.js │ │ ├── Form.js │ │ ├── Group.js │ │ ├── IPAddress.js │ │ ├── Import.js │ │ ├── Selector.js │ │ ├── Sync.js │ │ ├── Table.js │ │ ├── icons/ │ │ │ └── index.js │ │ ├── index.js │ │ ├── index.module.less │ │ ├── selector.module.less │ │ ├── store.js │ │ └── store2.js │ ├── login/ │ │ ├── index.js │ │ └── login.module.css │ ├── monitor/ │ │ ├── Form.js │ │ ├── MonitorCard.js │ │ ├── Step1.js │ │ ├── Step2.js │ │ ├── Table.js │ │ ├── index.js │ │ ├── index.module.less │ │ └── store.js │ ├── schedule/ │ │ ├── Form.js │ │ ├── Info.js │ │ ├── Record.js │ │ ├── Step1.js │ │ ├── Step2.js │ │ ├── Step3.js │ │ ├── Table.js │ │ ├── index.js │ │ ├── index.module.css │ │ └── store.js │ ├── ssh/ │ │ ├── FileManager.js │ │ ├── Setting.js │ │ ├── Terminal.js │ │ ├── index.js │ │ ├── index.module.less │ │ ├── setting.module.less │ │ └── themes.js │ ├── system/ │ │ ├── account/ │ │ │ ├── Form.js │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ └── store.js │ │ ├── login/ │ │ │ ├── Table.js │ │ │ ├── index.js │ │ │ └── store.js │ │ ├── role/ │ │ │ ├── DeployPerm.js │ │ │ ├── Form.js │ │ │ ├── HostPerm.js │ │ │ ├── PagePerm.js │ │ │ ├── RoleUsers.js │ │ │ ├── Table.js │ │ │ ├── codes.js │ │ │ ├── index.js │ │ │ ├── index.module.css │ │ │ └── store.js │ │ └── setting/ │ │ ├── About.js │ │ ├── AlarmSetting.js │ │ ├── KeySetting.js │ │ ├── LDAPSetting.js │ │ ├── OpenService.js │ │ ├── PushSetting.js │ │ ├── SecuritySetting.js │ │ ├── index.js │ │ ├── index.module.css │ │ └── store.js │ └── welcome/ │ ├── index/ │ │ └── index.js │ └── info/ │ ├── Basic.js │ ├── Reset.js │ ├── index.js │ ├── index.module.css │ └── store.js ├── routes.js ├── serviceWorker.js └── setupProxy.js