Forked from
rc / hpc-factory
18 commits behind the upstream repository.
-
Bo-Chun Chen authored
Suggestion by: https://github.com/hashicorp/packer-plugin-ansible/issues/69#issuecomment-1046965236
d09a7c04
nodeimage.pkr.hcl 1.65 KiB
packer {
required_plugins {
openstack = {
version = "~> 1"
source = "github.com/hashicorp/openstack"
}
ansible = {
version = "~> 1"
source = "github.com/hashicorp/ansible"
}
}
}
locals {
local_image_name = "${var.image_name}${var.image_date_suffix ? formatdate("YYYYMMDDHHmm", timestamp()) : ""}"
}
source "openstack" "image" {
skip_create_image = var.skip_create_image
image_name = local.local_image_name
source_image = var.source_image
image_members = var.image_membership
image_auto_accept_members = var.auto_accept_members
image_tags = var.image_tags
image_disk_format = var.image_format
volume_size = var.volume_size
flavor = var.flavor
instance_name = var.build_instance_name
use_blockstorage_volume = true
floating_ip_network = var.floating_ip_network
networks = var.networks
security_groups = var.security_groups
ssh_username = var.ssh_username
}
build {
sources = ["source.openstack.image"]
provisioner "ansible" {
use_proxy = false
user = var.ssh_username
groups = ["gpu"]
playbook_file = "./ansible/gpu.yml"
roles_path = "./ansible/roles"
extra_arguments = [
"--extra-vars", "root_ssh_key='${var.root_ssh_key}'"
]
}
provisioner "ansible" {
use_proxy = false
user = var.ssh_username
groups = ["compute"]
ansible_env_vars = ["ANSIBLE_HOST_KEY_CHECKING=False"]
playbook_file = "./CRI_XCBC/compute-packer.yaml"
}
}