* Do some better linting * Update names, Packer version, and more * Do not lint on push * More linting and scripting * Cleanup shellcheck lint * Add Packer format check * Fix Packer formatting * Limit to only one * Remove generated HCL files * Only lint checked files * Use pipes instead * Improve attempt to build Actually go back to attempting to build boxes on GitHub. Maybe it will work better with this structure * Change to using environment files * Initialize plugins, first * More verbose usage of the file * Do the output properly this time * PACKER_LOG set to 1 * No need for python3 anymore * Limit to only one result * Choose a specific CPU model * Init separately * Update actions version * Add version outputting * Correct actions version * Try to execute qemu properly * Fix CPU model name * Do not over-subscribe GitHub runners * Try type instead of command to guard runs * Do not write to non-existent folder * Cache packer plugins * Use ~ instead of /home/greg * Try the proper path * Move to intelligent matrix * Set global env path * Add lots of waits for VBoxManage on hosted runners * Add more waits * Add more waits
40 lines
1.4 KiB
YAML
40 lines
1.4 KiB
YAML
name: Install Packer
|
|
description: Installs the packerio executable and its attendant tools to /usr/local/bin
|
|
for Ubuntu hosts
|
|
inputs:
|
|
version:
|
|
description: Version of Packer to install
|
|
required: true
|
|
default: "1.9.4"
|
|
pup_version:
|
|
description: Version of Pup to install
|
|
required: true
|
|
default: "v0.4.0"
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
- name: Install Packer and deps in Linux
|
|
shell: bash
|
|
if: runner.os == 'Linux'
|
|
run: |
|
|
set -exo pipefail
|
|
# Install virtualbox
|
|
sudo apt-get update
|
|
# Install QEmu, etc
|
|
sudo apt-get install -y unzip cloud-utils xorriso qemu-system-{x86,ppc} vagrant
|
|
# Install packer.io
|
|
curl -O https://releases.hashicorp.com/packer/${{ inputs.version }}/packer_${{ inputs.version }}_linux_amd64.zip
|
|
unzip -o packer_${{ inputs.version }}_linux_amd64.zip -d /usr/local/bin
|
|
chmod +x /usr/local/bin/packer
|
|
# Install pup
|
|
curl -L -o pup.zip "https://github.com/ericchiang/pup/releases/download/${{ inputs.pup_version }}/pup_${{ inputs.pup_version }}_linux_amd64.zip"
|
|
sudo unzip pup.zip -d /usr/local/bin
|
|
sudo chmod +x /usr/local/bin/pup
|
|
- name: Install Packer's deps in macOS
|
|
shell: bash
|
|
if: runner.os == 'macOS'
|
|
run: |
|
|
set -exo pipefail
|
|
brew install pup dvdrtools xorriso coreutils gsed virtualbox vagrant
|
|
# Packer is already installed
|