You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GH Actions中Packer执行Shell脚本提示目录不存在的问题

Packer Shell Provisioner在GitHub Actions中无法访问指定目录

我当前使用GitHub Actions结合Packer和Ansible构建环境,调用packer build命令时,Packer的shell provisioner执行Shell脚本时无法访问指定目录。

文件结构

REPO
├─ .github/workflow
├─ packer
|  ├─ image1/...
|  ├─ image2/...
|  └─ build.sh
└─ scripts
   ├─ runtimes
   |  ├─ node
   |  ├─ java
   |  ├─ docker
   |  └─ install.sh
   └─ ...

GitHub Workflow配置

name: Release AMI

run-name: "Release sc-${{ inputs.release_name }}"

on:
  workflow_dispatch:
    inputs:
     ...

jobs:
  release:
    steps:
      - name: 'Checkout'
        uses: actions/checkout@v3
      - name: 'Run `packer build`'
        run: |
          echo "Debug: GITHUB_WORKSPACE=${GITHUB_WORKSPACE}"
          echo "Debug: PWD=$(pwd)"
          echo "Debug: Directory contents:"
          ls -la

          export PATH="/home/runner/.local/bin:$PATH"
          bash images/build.sh \
            "${{ inputs.aws_cli_version }}" \
            "${{ inputs.codedeploy_version }}" \
            "${{ inputs.ssm_channel }}" \
            "${{ inputs.docker }}" \
            "${{ inputs.node_version }}" \
            "${{ inputs.java_version }}" \
            "${{ github.workspace }}" \
            "${{ github.action }}"

Packer配置(build.pkr.hcl)

...
  provisioner "shell" {
    script           = "${path.cwd}/scripts/runtimes/install.sh"
    environment_vars = [
      "GITHUB_WORKSPACE=${var.GITHUB_WORKSPACE}",
      "GITHUB_ACTIONS=${var.GITHUB_ACTIONS}"
    ]
    timeout          = "15m"
  }
...

install.sh脚本内容

echo "Debug from utils.sh:"
echo "GITHUB_WORKSPACE=${GITHUB_WORKSPACE}"
sudo ls $GITHUB_WORKSPACE

错误信息

==> amazon-ebs.jammy: ls: cannot access '/home/runner/_work/repo-name/repo-name': No such file or directory

我理解的执行流程是GitHub Action Runner → build.sh脚本 → packer → install.sh脚本,且未切换作业,目录应保持一致,请问我哪里操作有误?

内容的提问来源于stack exchange,提问作者ZeuS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 13:10:07