From 4304c9443ad9248f63dd6d8c512d8d6f32f90d37 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Mon, 8 Apr 2024 10:05:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A2=9E=E5=8A=A0=E6=9D=83=E9=99=90?= =?UTF-8?q?=E7=9B=B8=E5=85=B3helper=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin-aliyun/src/access/aliyun-access.ts | 1 + packages/plugins/plugin-host/src/lib/ssh.ts | 7 +++---- .../src/plugin/upload-to-host/index.ts | 19 +++++++++---------- 3 files changed, 13 insertions(+), 14 deletions(-) diff --git a/packages/plugins/plugin-aliyun/src/access/aliyun-access.ts b/packages/plugins/plugin-aliyun/src/access/aliyun-access.ts index 66d9ea726..f7bee9e61 100644 --- a/packages/plugins/plugin-aliyun/src/access/aliyun-access.ts +++ b/packages/plugins/plugin-aliyun/src/access/aliyun-access.ts @@ -11,6 +11,7 @@ export class AliyunAccess { component: { placeholder: "accessKeyId", }, + helper:"注意:证书申请,需要dns解析权限;其他阿里云插件,也需要对应的权限,比如证书上传需要证书管理权限", required: true, }) accessKeyId = ""; diff --git a/packages/plugins/plugin-host/src/lib/ssh.ts b/packages/plugins/plugin-host/src/lib/ssh.ts index 2dfc518e5..ed8455d79 100644 --- a/packages/plugins/plugin-host/src/lib/ssh.ts +++ b/packages/plugins/plugin-host/src/lib/ssh.ts @@ -19,8 +19,8 @@ export class SshClient { } * @param options */ - uploadFiles(options: { connectConf: any; transports: any; sudo: boolean }) { - const { connectConf, transports, sudo } = options; + uploadFiles(options: { connectConf: any; transports: any; }) { + const { connectConf, transports } = options; const conn = new ssh2.Client(); return new Promise((resolve, reject) => { @@ -35,8 +35,7 @@ export class SshClient { try { for (const transport of transports) { this.logger.info("上传文件:", JSON.stringify(transport)); - const sudoCmd = sudo ? "sudo" : ""; - await this.exec({ connectConf, script: `${sudoCmd} mkdir -p ${path.dirname(transport.remotePath)} ` }); + await this.exec({ connectConf, script: `mkdir -p ${path.dirname(transport.remotePath)} ` }); await this.fastPut({ sftp, ...transport }); } resolve({}); diff --git a/packages/plugins/plugin-host/src/plugin/upload-to-host/index.ts b/packages/plugins/plugin-host/src/plugin/upload-to-host/index.ts index 851cb6bdf..48b3c24c2 100644 --- a/packages/plugins/plugin-host/src/plugin/upload-to-host/index.ts +++ b/packages/plugins/plugin-host/src/plugin/upload-to-host/index.ts @@ -15,10 +15,18 @@ import * as fs from "fs"; export class UploadCertToHostPlugin extends AbstractTaskPlugin { @TaskInput({ title: "证书保存路径", + helper: "需要有写入权限,路径要包含证书文件名", + component:{ + placeholder:"/root/deploy/nginx/cert.crt", + } }) crtPath!: string; @TaskInput({ title: "私钥保存路径", + helper: "需要有写入权限,路径要包含证书文件名", + component:{ + placeholder:"/root/deploy/nginx/cert.crt", + } }) keyPath!: string; @TaskInput({ @@ -40,14 +48,6 @@ export class UploadCertToHostPlugin extends AbstractTaskPlugin { rules: [{ required: true, message: "此项必填" }], }) accessId!: string; - @TaskInput({ - title: "是否sudo", - component: { - name: "a-checkbox", - vModel: "checked", - }, - }) - sudo!: boolean; @TaskOutput({ title: "证书保存路径", @@ -67,7 +67,7 @@ export class UploadCertToHostPlugin extends AbstractTaskPlugin { this.logger = this.ctx.logger; } async execute(): Promise { - const { crtPath, keyPath, cert, accessId, sudo } = this; + const { crtPath, keyPath, cert, accessId } = this; const certReader = new CertReader(cert); const connectConf = await this.accessService.getById(accessId); const sshClient = new SshClient(this.logger); @@ -87,7 +87,6 @@ export class UploadCertToHostPlugin extends AbstractTaskPlugin { remotePath: keyPath, }, ], - sudo, }); this.logger.info("证书上传成功:crtPath=", crtPath, ",keyPath=", keyPath);