Skip to content

packer

packer #138

Workflow file for this run

name: packer
on:
push:
paths:
- packer/**
branches:
- main
workflow_dispatch:
schedule:
- cron: "0 0 * * 0"
concurrency:
group: packer_build
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./packer
env:
PKR_VAR_aws_access_key: ${{ secrets.PACKER_AWS_ACCESS_KEY_ID }}
PKR_VAR_aws_secret_key: ${{ secrets.PACKER_AWS_SECRET_ACCESS_KEY }}
steps:
-
name: Pull repository
uses: actions/checkout@v4
-
name: Set up Packer
uses: hashicorp/setup-packer@v3
-
name: Build AWS base AMI
run: |
set -euxo pipefail
packer init base-images/aws
packer build base-images/aws
env:
PKR_VAR_image_prefix: ci-base
-
name: Build stock Jenkins agent
run: |
set -euxo pipefail
packer init jenkins-agents/stock
packer build jenkins-agents/stock
env:
PKR_VAR_source_image_family: ci-base
PKR_VAR_image_prefix: jenkins-stock-agent
-
name: Build GPU Jenkins agent
run: |
set -euxo pipefail
packer init jenkins-agents/gpu
packer build jenkins-agents/gpu
env:
PKR_VAR_source_image_family: jenkins-stock-agent
PKR_VAR_image_prefix: jenkins-gpu-agent
PKR_VAR_nvidia_driver_version: "570"