mirror of
https://github.com/usual2970/certimate.git
synced 2025-06-09 05:59:50 +00:00
fix: #298
This commit is contained in:
parent
e6726e4c02
commit
2fd57621d8
@ -105,6 +105,9 @@ func (d *LocalDeployer) Deploy(ctx context.Context) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
d.infos = append(d.infos, toStr("保存证书成功", nil))
|
d.infos = append(d.infos, toStr("保存证书成功", nil))
|
||||||
|
|
||||||
|
default:
|
||||||
|
return errors.New("unsupported format")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 执行命令
|
// 执行命令
|
||||||
|
@ -4,6 +4,7 @@ import (
|
|||||||
"bytes"
|
"bytes"
|
||||||
"context"
|
"context"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
@ -13,7 +14,6 @@ import (
|
|||||||
"golang.org/x/crypto/ssh"
|
"golang.org/x/crypto/ssh"
|
||||||
|
|
||||||
"github.com/usual2970/certimate/internal/domain"
|
"github.com/usual2970/certimate/internal/domain"
|
||||||
"github.com/usual2970/certimate/internal/pkg/utils/fs"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type SSHDeployer struct {
|
type SSHDeployer struct {
|
||||||
@ -105,11 +105,14 @@ func (d *SSHDeployer) Deploy(ctx context.Context) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := fs.WriteFile(d.option.DeployConfig.GetConfigAsString("certPath"), jksData); err != nil {
|
if err := d.writeSftpFile(client, d.option.DeployConfig.GetConfigAsString("certPath"), jksData); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
d.infos = append(d.infos, toStr("保存证书成功", nil))
|
d.infos = append(d.infos, toStr("SSH 上传证书成功", nil))
|
||||||
|
|
||||||
|
default:
|
||||||
|
return errors.New("unsupported format")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 执行命令
|
// 执行命令
|
||||||
@ -156,8 +159,8 @@ func (d *SSHDeployer) createSshClient(access *domain.SSHAccess) (*ssh.Client, er
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *SSHDeployer) sshExecCommand(client *ssh.Client, command string) (string, string, error) {
|
func (d *SSHDeployer) sshExecCommand(sshCli *ssh.Client, command string) (string, string, error) {
|
||||||
session, err := client.NewSession()
|
session, err := sshCli.NewSession()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", "", xerrors.Wrap(err, "failed to create ssh session")
|
return "", "", xerrors.Wrap(err, "failed to create ssh session")
|
||||||
}
|
}
|
||||||
@ -175,12 +178,12 @@ func (d *SSHDeployer) sshExecCommand(client *ssh.Client, command string) (string
|
|||||||
return stdoutBuf.String(), stderrBuf.String(), nil
|
return stdoutBuf.String(), stderrBuf.String(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *SSHDeployer) writeSftpFileString(client *ssh.Client, path string, content string) error {
|
func (d *SSHDeployer) writeSftpFileString(sshCli *ssh.Client, path string, content string) error {
|
||||||
return d.writeSftpFile(client, path, []byte(content))
|
return d.writeSftpFile(sshCli, path, []byte(content))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *SSHDeployer) writeSftpFile(client *ssh.Client, path string, data []byte) error {
|
func (d *SSHDeployer) writeSftpFile(sshCli *ssh.Client, path string, data []byte) error {
|
||||||
sftpCli, err := sftp.NewClient(client)
|
sftpCli, err := sftp.NewClient()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return xerrors.Wrap(err, "failed to create sftp client")
|
return xerrors.Wrap(err, "failed to create sftp client")
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user