用于配置的交互式 SSH 会话

用于配置的交互式 SSH 会话

有没有办法在配置阶段之后但在清理之前打开交互式 SSH 连接?类似于脚本语言中调试器的工作方式。这对于调试我的配置脚本很有用,尤其是在从头开始编写时。

Simplebash -i在配置脚本中不起作用,可能是因为没有连接 TTY。

我正在使用 VirtualBox 构建器。

答案1

我目前的解决方法是让机器保持运行,然后手动通过 SSH 进入虚拟机。用户名和密码保持不变。可以在 VirtualBox 设置中找到本地 SSH 端口;它一直在变化,但如果不需要并行,可能会在这里被滥用host_port_minhost_port_max

有两种方法可以保持其运行。

  1. 附加sleep 1800到配置程序脚本。
  2. 添加--on-error=abortpacker build,并返回配置脚本中的错误。这样 Packer 就可以提前退出并跳过清理。

笔记:

  1. 对于 Packer 来说,SSH 密码通常简单且静态。在这种情况下sshpass很有用。
  2. SSH 主机密钥每次都会改变。使用-o NoHostAuthenticationForLocalhost=yes它。

相关内容