首页 > 解决方案 > 使用 Packer Provisioner 安装 Gradle

问题描述

我在使用 Packer 安装 Gradle 时遇到问题,我只是按照source-url中的这些步骤操作。我已经尝试并验证了它在手动操作时是否正常工作,但是在尝试使用Packer Provisioner应用它时,我收到了以下错误:

    amazon-ebs.ec2:   inflating: /opt/gradle/gradle-7.1/lib/plugins/opentest4j-1.2.0.jar
==> amazon-ebs.ec2: /tmp/script_1916.sh: line 26: /etc/profile.d/gradle.sh: Permission denied
==> amazon-ebs.ec2: /tmp/script_1916.sh: line 27: /etc/profile.d/gradle.sh: Permission denied
    amazon-ebs.ec2: VERSION CHECK
==> amazon-ebs.ec2: /tmp/script_1916.sh: line 31: gradle: command not found

打包程序供应商部分有这个:

  provisioner "shell" {
    script = "../scripts/boy-oh-boy.sh"
  }

其中 boy-oh-boy.sh 包含 gradle 安装的这些部分:

echo "GRADLE INSTALLATION"
sudo wget https://services.gradle.org/distributions/gradle-7.1-bin.zip -P /tmp
sleep 60
sudo unzip -d /opt/gradle /tmp/gradle-*.zip
sudo touch /etc/profile.d/gradle.sh
sudo echo "export GRADLE_HOME=/opt/gradle/gradle-7.1" >> /etc/profile.d/gradle.sh
sudo echo "export PATH=${GRADLE_HOME}/bin:${PATH}" >> /etc/profile.d/gradle.sh
sudo chmod +x /etc/profile.d/gradle.sh
source /etc/profile.d/gradle.sh
echo "VERSION CHECK"
gradle --version

标签: gradlepacker

解决方案


推荐阅读