Skip to content
Snippets Groups Projects
Commit 93dabc0c authored by Nicolas KAROLAK's avatar Nicolas KAROLAK
Browse files

cleanup packer image generation process

parent 3c1b1051
No related branches found
No related tags found
No related merge requests found
......@@ -18,8 +18,8 @@ log/
# packer
packer_cache/
output/
packer/custom/*
!packer/custom/example.yml
packer/*
!packer/example.json
# ide
.vscode/
......
......@@ -78,12 +78,12 @@ image-validate:
ifndef build
$(error build is undefined)
endif
cat $(build) | ./packer/scripts/yml2json | packer validate -
packer validate $(build)
.PHONY: image
## image: Run Packer image build : build=<path-to-packer-file>
image: image-validate
cat $(build) | ./packer/scripts/yml2json | packer build -force -
packer build -force $(build)
.PHONY: docker-build
## docker-build: Run docker image build for CI and devcontainer
......
......@@ -29,9 +29,10 @@ mymediaserver
[worker]
mymediaworker
[vault]
[import]
mymediaserver
[vault]
[netcapture]
......
---
# build trigger: 201907171352
variables:
ssh_auth_keys: "{{ env `PACKER_SSH_AUTH_KEYS` }}"
esx_host: "{{ env `PACKER_ESX_HOST` }}"
esx_datastore: "{{ env `PACKER_ESX_DATASTORE` }}"
esx_username: "{{ env `PACKER_ESX_USERNAME` }}"
esx_password: "{{ env `PACKER_ESX_PASSWORD` }}"
network_ip: "{{ env `NETWORK_IP` }}"
network_mask: "{{ env `NETWORK_MASK` }}"
network_gateway: "{{ env `NETWORK_GATEWAY` }}"
network_dns: "{{ env `NETWORK_DNS` }}"
skyreach_system_key: "{{ env `SKYREACH_SYSTEM_KEY` }}"
builders:
- type: vmware-iso
vm_name: ubicast-aio
display_name: ubicast-aio
output_directory: output
guest_os_type: debian10-64
iso_urls:
- http://debian.univ-lorraine.fr/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
iso_checksum: 23237b0a100a860b3dc7ffcfb5baae4bed5460ac5f3f2b929df3154f3319b9809055b695264586f60289cc6cb25077c12938cc612fee01756bfa779c87d5a315
iso_checksum_type: sha512
remote_type: esx5
remote_host: "{{ user `esx_host` }}"
remote_datastore: "{{ user `esx_datastore` }}"
remote_username: "{{ user `esx_username` }}"
remote_password: "{{ user `esx_password` }}"
format: ova
tools_upload_flavor: linux
vnc_disable_password: true
cpus: 2
memory: 2048
vmx_data:
ethernet0.networkName: VM Network
boot_command:
- "<esc><wait>"
- "/install.amd/vmlinuz "
- "initrd=/install.amd/initrd.gz "
- "hostname={{ .Name }} "
- "domain= "
- "auto=true "
- "url=https://www.ubicast.eu/media/downloads/sys/preseed.cfg "
- "vga=788 noprompt quiet --<enter>"
ssh_username: root
ssh_password: ubicast
ssh_timeout: 15m
headless: false
shutdown_command: shutdown -P now
provisioners:
- type: shell
pause_before: 10s
environment_vars:
- PACKER_SSH_AUTH_KEYS={{ user `ssh_auth_keys` }}
scripts:
- packer/scripts/root.sh
- packer/scripts/upgrade.sh
- type: ansible
ansible_env_vars:
- NETWORK_IP={{ user `network_ip` }}
- NETWORK_MASK={{ user `network_mask` }}
- NETWORK_GATEWAY={{ user `network_gateway` }}
- NETWORK_DNS={{ user `network_dns` }}
- SKYREACH_SYSTEM_KEY={{ user `skyreach_system_key` }}
playbook_file: site.yml
groups:
- monitor
- postgres
- manager
- wowza
- celerity
- server
- worker
...
---
# build trigger: 201907171352
variables:
ssh_auth_keys: "{{ env `PACKER_SSH_AUTH_KEYS` }}"
esx_host: "{{ env `PACKER_ESX_HOST` }}"
esx_datastore: "{{ env `PACKER_ESX_DATASTORE` }}"
esx_username: "{{ env `PACKER_ESX_USERNAME` }}"
esx_password: "{{ env `PACKER_ESX_PASSWORD` }}"
builders:
- type: vmware-iso
vm_name: ubicast-base
display_name: ubicast-base
output_directory: output
guest_os_type: debian10-64
iso_urls:
- http://debian.univ-lorraine.fr/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
iso_checksum: 23237b0a100a860b3dc7ffcfb5baae4bed5460ac5f3f2b929df3154f3319b9809055b695264586f60289cc6cb25077c12938cc612fee01756bfa779c87d5a315
iso_checksum_type: sha512
remote_type: esx5
remote_host: "{{ user `esx_host` }}"
remote_datastore: "{{ user `esx_datastore` }}"
remote_username: "{{ user `esx_username` }}"
remote_password: "{{ user `esx_password` }}"
format: ova
tools_upload_flavor: linux
vnc_disable_password: true
cpus: 2
memory: 2048
vmx_data:
ethernet0.networkName: VM Network
boot_command:
- "<esc><wait>"
- "/install.amd/vmlinuz "
- "initrd=/install.amd/initrd.gz "
- "hostname={{ .Name }} "
- "domain= "
- "auto=true "
- "url=https://www.ubicast.eu/media/downloads/sys/preseed.cfg "
- "vga=788 noprompt quiet --<enter>"
ssh_username: root
ssh_password: ubicast
ssh_timeout: 15m
headless: false
shutdown_command: shutdown -P now
provisioners:
- type: file
source: packer/files/root.cfg
destination: /tmp/99_root.cfg
- type: shell
expect_disconnect: true
pause_before: 10s
environment_vars:
- PACKER_SSH_AUTH_KEYS={{ user `ssh_auth_keys` }}
scripts:
- packer/scripts/root.sh
- packer/scripts/upgrade.sh
- packer/scripts/upgrade-buster.sh
- packer/scripts/reboot.sh
- type: shell
pause_before: 30s
scripts:
- packer/scripts/cleanup-buster.sh
...
---
# build trigger: 201907171352
variables:
ssh_auth_keys: "{{ env `PACKER_SSH_AUTH_KEYS` }}"
esx_host: "{{ env `PACKER_ESX_HOST` }}"
esx_datastore: "{{ env `PACKER_ESX_DATASTORE` }}"
esx_username: "{{ env `PACKER_ESX_USERNAME` }}"
esx_password: "{{ env `PACKER_ESX_PASSWORD` }}"
network_ip: "{{ env `NETWORK_IP` }}"
network_mask: "{{ env `NETWORK_MASK` }}"
network_gateway: "{{ env `NETWORK_GATEWAY` }}"
network_dns: "{{ env `NETWORK_DNS` }}"
skyreach_system_key: "{{ env `SKYREACH_SYSTEM_KEY` }}"
builders:
- type: vmware-iso
vm_name: ubicast-celerity
display_name: ubicast-celerity
output_directory: output
guest_os_type: debian10-64
iso_urls:
- http://debian.univ-lorraine.fr/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
iso_checksum: 23237b0a100a860b3dc7ffcfb5baae4bed5460ac5f3f2b929df3154f3319b9809055b695264586f60289cc6cb25077c12938cc612fee01756bfa779c87d5a315
iso_checksum_type: sha512
remote_type: esx5
remote_host: "{{ user `esx_host` }}"
remote_datastore: "{{ user `esx_datastore` }}"
remote_username: "{{ user `esx_username` }}"
remote_password: "{{ user `esx_password` }}"
format: ova
tools_upload_flavor: linux
vnc_disable_password: true
cpus: 2
memory: 2048
vmx_data:
ethernet0.networkName: VM Network
boot_command:
- "<esc><wait>"
- "/install.amd/vmlinuz "
- "initrd=/install.amd/initrd.gz "
- "hostname={{ .Name }} "
- "domain= "
- "auto=true "
- "url=https://www.ubicast.eu/media/downloads/sys/preseed.cfg "
- "vga=788 noprompt quiet --<enter>"
ssh_username: root
ssh_password: ubicast
ssh_timeout: 15m
headless: false
shutdown_command: shutdown -P now
provisioners:
- type: shell
pause_before: 10s
environment_vars:
- PACKER_SSH_AUTH_KEYS={{ user `ssh_auth_keys` }}
scripts:
- packer/scripts/root.sh
- packer/scripts/upgrade.sh
- type: ansible
ansible_env_vars:
- NETWORK_IP={{ user `network_ip` }}
- NETWORK_MASK={{ user `network_mask` }}
- NETWORK_GATEWAY={{ user `network_gateway` }}
- NETWORK_DNS={{ user `network_dns` }}
- SKYREACH_SYSTEM_KEY={{ user `skyreach_system_key` }}
playbook_file: playbooks/celerity.yml
groups:
- celerity
...
---
variables:
name: "{{ env `PACKER_NAME` }}"
ssh_auth_keys: "{{ env `PACKER_SSH_AUTH_KEYS` }}"
esx_host: "{{ env `PACKER_ESX_HOST` }}"
esx_datastore: "{{ env `PACKER_ESX_DATASTORE` }}"
esx_username: "{{ env `PACKER_ESX_USERNAME` }}"
esx_password: "{{ env `PACKER_ESX_PASSWORD` }}"
network_ip: "{{ env `NETWORK_IP` }}"
network_mask: "{{ env `NETWORK_MASK` }}"
network_gateway: "{{ env `NETWORK_GATEWAY` }}"
network_dns: "{{ env `NETWORK_DNS` }}"
skyreach_system_key: "{{ env `SKYREACH_SYSTEM_KEY` }}"
builders:
- type: vmware-iso
vm_name: ubicast-{{ user `name` }}
display_name: ubicast-{{ user `name` }}
output_directory: output
guest_os_type: debian10-64
iso_urls:
- http://debian.univ-lorraine.fr/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
iso_checksum: 23237b0a100a860b3dc7ffcfb5baae4bed5460ac5f3f2b929df3154f3319b9809055b695264586f60289cc6cb25077c12938cc612fee01756bfa779c87d5a315
iso_checksum_type: sha512
remote_type: esx5
remote_host: "{{ user `esx_host` }}"
remote_datastore: "{{ user `esx_datastore` }}"
remote_username: "{{ user `esx_username` }}"
remote_password: "{{ user `esx_password` }}"
format: ova
tools_upload_flavor: linux
vnc_disable_password: true
cpus: 2
memory: 2048
disk_type_id: zeroedthick
skip_compaction: true
vmx_data:
ethernet0.networkName: VM Network
boot_command:
- "<esc><wait>"
- "/install.amd/vmlinuz "
- "initrd=/install.amd/initrd.gz "
- "hostname={{ .Name }} "
- "domain= "
- "auto=true "
- "url=https://nextcloud.ubicast.net/s/LEcyMWG9BnKsrHX/download?path=%2F&files=preseed.cfg "
- "vga=788 noprompt quiet --<enter>"
ssh_username: root
ssh_password: ubicast
ssh_timeout: 15m
headless: false
shutdown_command: shutdown -P now
# Uncomment if you have to do custom/manual export:
# keep_registered: true
# skip_export: true
provisioners:
- type: shell
pause_before: 10s
environment_vars:
- PACKER_SSH_AUTH_KEYS={{ user `ssh_auth_keys` }}
scripts:
- packer/scripts/root.sh
- packer/scripts/upgrade.sh
- type: ansible
ansible_env_vars:
- NETWORK_IP={{ user `network_ip` }}
- NETWORK_MASK={{ user `network_mask` }}
- NETWORK_GATEWAY={{ user `network_gateway` }}
- NETWORK_DNS={{ user `network_dns` }}
- SKYREACH_SYSTEM_KEY={{ user `skyreach_system_key` }}
playbook_file: site.yml
groups:
- monitor
- postgres
- manager
- wowza
- celerity
- server
- worker
...
{
"variables": {
"name": "mymediaserver",
"esx_host": "192.168.41.167",
"esx_datastore": "datastore2",
"esx_username": "root",
"esx_password": "topsecretpassword",
"network_ip": "10.0.0.51",
"network_mask": "24",
"network_gateway": "10.0.0.1",
"network_dns": "10.0.0.2,10.0.0.3",
"skyreach_system_key": "mytopscecretsystemkey",
"skyreach_activation_key": "mytopscecretactivationkey"
},
"builders": [
{
"type": "vmware-iso",
"vm_name": "ubicast-{{ user `name` }}",
"display_name": "ubicast-{{ user `name` }}",
"output_directory": "output",
"guest_os_type": "debian10-64",
"iso_urls": [
"http://debian.univ-lorraine.fr/debian-cd/current/amd64/iso-cd/debian-10.3.0-amd64-netinst.iso",
"https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.3.0-amd64-netinst.iso"
],
"iso_checksum": "08962831a26cad19ac5e1418a5f907a907d375c6d51be608281f5b733c248d7bd4008439af224f3d52df2e500f38e939e1bd46dd9371b2bdc7101b0efcb65634",
"iso_checksum_type": "sha512",
"remote_type": "esx5",
"remote_host": "{{ user `esx_host` }}",
"remote_datastore": "{{ user `esx_datastore` }}",
"remote_username": "{{ user `esx_username` }}",
"remote_password": "{{ user `esx_password` }}",
"format": "ova",
"tools_upload_flavor": "linux",
"vnc_disable_password": true,
"cpus": 2,
"memory": 2048,
"disk_type_id": "zeroedthick",
"skip_compaction": true,
"vmx_data": {
"ethernet0.networkName": "VM Network"
},
"boot_command": [
"<esc><wait>",
"/install.amd/vmlinuz ",
"initrd=/install.amd/initrd.gz ",
"hostname={{ .Name }} ",
"domain= ",
"auto=true ",
"url=https://nextcloud.ubicast.net/s/LEcyMWG9BnKsrHX/download?path=%2F&files=preseed.cfg ",
"vga=788 noprompt quiet --<enter>"
],
"ssh_username": "root",
"ssh_password": "ubicast",
"ssh_timeout": "15m",
"headless": false,
"shutdown_command": "shutdown -P now"
}
],
"provisioners": [
{
"type": "shell",
"pause_before": "10s",
"scripts": [
"packer/scripts/root.sh",
"packer/scripts/upgrade.sh"
]
},
{
"type": "ansible",
"ansible_env_vars": [
"ANSIBLE_CONFIG=ansible.cfg",
"ANSIBLE_STDOUT_CALLBACK=debug"
],
"extra_arguments": [
"--extra-vars", "network_apply=true network_ip={{ user `network_ip` }} network_mask={{ user `network_mask` }} network_gateway={{ user `network_gateway` }} network_dns={{ user `network_dns` }}",
"--extra-vars", "skyreach_system_key={{ user `skyreach_system_key` }}",
"--extra-vars", "skyreach_activation_key={{ user `skyreach_activation_key` }}"
],
"playbook_file": "site.yml",
"groups": [
"monitor",
"postgres",
"manager",
"wowza",
"celerity",
"server",
"worker",
"import"
]
}
]
}
---
# build trigger: 201907171352
variables:
ssh_auth_keys: "{{ env `PACKER_SSH_AUTH_KEYS` }}"
esx_host: "{{ env `PACKER_ESX_HOST` }}"
esx_datastore: "{{ env `PACKER_ESX_DATASTORE` }}"
esx_username: "{{ env `PACKER_ESX_USERNAME` }}"
esx_password: "{{ env `PACKER_ESX_PASSWORD` }}"
network_ip: "{{ env `NETWORK_IP` }}"
network_mask: "{{ env `NETWORK_MASK` }}"
network_gateway: "{{ env `NETWORK_GATEWAY` }}"
network_dns: "{{ env `NETWORK_DNS` }}"
skyreach_system_key: "{{ env `SKYREACH_SYSTEM_KEY` }}"
builders:
- type: vmware-iso
vm_name: ubicast-manager
display_name: ubicast-manager
output_directory: output
guest_os_type: debian10-64
iso_urls:
- http://debian.univ-lorraine.fr/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
iso_checksum: 23237b0a100a860b3dc7ffcfb5baae4bed5460ac5f3f2b929df3154f3319b9809055b695264586f60289cc6cb25077c12938cc612fee01756bfa779c87d5a315
iso_checksum_type: sha512
remote_type: esx5
remote_host: "{{ user `esx_host` }}"
remote_datastore: "{{ user `esx_datastore` }}"
remote_username: "{{ user `esx_username` }}"
remote_password: "{{ user `esx_password` }}"
format: ova
tools_upload_flavor: linux
vnc_disable_password: true
cpus: 2
memory: 2048
vmx_data:
ethernet0.networkName: VM Network
boot_command:
- "<esc><wait>"
- "/install.amd/vmlinuz "
- "initrd=/install.amd/initrd.gz "
- "hostname={{ .Name }} "
- "domain= "
- "auto=true "
- "url=https://www.ubicast.eu/media/downloads/sys/preseed.cfg "
- "vga=788 noprompt quiet --<enter>"
ssh_username: root
ssh_password: ubicast
ssh_timeout: 15m
headless: false
shutdown_command: shutdown -P now
provisioners:
- type: shell
pause_before: 10s
environment_vars:
- PACKER_SSH_AUTH_KEYS={{ user `ssh_auth_keys` }}
scripts:
- packer/scripts/root.sh
- packer/scripts/upgrade.sh
- type: ansible
ansible_env_vars:
- NETWORK_IP={{ user `network_ip` }}
- NETWORK_MASK={{ user `network_mask` }}
- NETWORK_GATEWAY={{ user `network_gateway` }}
- NETWORK_DNS={{ user `network_dns` }}
- SKYREACH_SYSTEM_KEY={{ user `skyreach_system_key` }}
playbook_file: playbooks/manager.yml
groups:
- postgres
- manager
...
#!/usr/bin/env bash
export DEBIAN_FRONTEND=noninteractive
export UCF_FORCE_CONFFNEW=1
export APT="DEBIAN_FRONTEND=noninteractive apt-get -y -q -o Dpkg::Options::=--force-confnew"
sudo $APT autoremove --purge
sudo $APT --auto-remove purge \
awscli \
gcc-6-base \
initscripts \
insserv \
linux-image-4.9.* \
nano \
python2 \
startpar \
sysv-rc \
|| :
while [ "$(deborphan)" ]; do
sudo $APT --auto-remove purge $(deborphan)
done
if [ "$(dpkg -l | grep ^rc | awk '{ print $2 }')" ]; then
dpkg -l | grep ^rc | awk '{ print $2 }' | sudo dpkg -P
fi
exit 0
#!/usr/bin/env bash
sudo shutdown -r now
exit 0
......@@ -2,13 +2,6 @@
sudo mkdir -p /root/.ssh
sudo chmod 700 /root/.ssh
echo -e $PACKER_SSH_AUTH_KEYS | sudo tee /root/.ssh/authorized_keys
sudo mkdir -p /etc/cloud/cloud.cfg.d
if [ -f /tmp/99_root.cfg ]; then
sudo mv /tmp/99_root.cfg /etc/cloud/cloud.cfg.d/99_root.cfg
sudo chown root:root /etc/cloud/cloud.cfg.d/99_root.cfg
sudo chmod 644 /etc/cloud/cloud.cfg.d/99_root.cfg
fi
curl -fLSs 'https://nextcloud.ubicast.net/s/LEcyMWG9BnKsrHX/download?path=%2F&files=support.pub' -o /root/.ssh/authorized_keys
exit 0
#!/usr/bin/env bash
export DEBIAN_FRONTEND=noninteractive
export UCF_FORCE_CONFFNEW=1
export APT="DEBIAN_FRONTEND=noninteractive apt-get -y -q -o Dpkg::Options::=--force-confnew"
sudo sed -i 's/stretch/buster/g' /etc/apt/sources.list
sudo $APT update
sudo $APT upgrade
sudo $APT dist-upgrade
exit 0
......@@ -6,7 +6,7 @@ export APT="DEBIAN_FRONTEND=noninteractive apt-get -y -q -o Dpkg::Options::=--fo
sudo $APT purge unattended-upgrades
sudo $APT update
sudo $APT install apt-utils deborphan git
sudo $APT install apt-utils
sudo $APT dist-upgrade
exit 0
#!/usr/bin/env python3
import json
import sys
import yaml
y = yaml.safe_load(sys.stdin.read())
print(json.dumps(y))
---
# build trigger: 201907171352
variables:
ssh_auth_keys: "{{ env `PACKER_SSH_AUTH_KEYS` }}"
esx_host: "{{ env `PACKER_ESX_HOST` }}"
esx_datastore: "{{ env `PACKER_ESX_DATASTORE` }}"
esx_username: "{{ env `PACKER_ESX_USERNAME` }}"
esx_password: "{{ env `PACKER_ESX_PASSWORD` }}"
network_ip: "{{ env `NETWORK_IP` }}"
network_mask: "{{ env `NETWORK_MASK` }}"
network_gateway: "{{ env `NETWORK_GATEWAY` }}"
network_dns: "{{ env `NETWORK_DNS` }}"
skyreach_system_key: "{{ env `SKYREACH_SYSTEM_KEY` }}"
builders:
- type: vmware-iso
vm_name: ubicast-server
display_name: ubicast-server
output_directory: output
guest_os_type: debian10-64
iso_urls:
- http://debian.univ-lorraine.fr/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
iso_checksum: 23237b0a100a860b3dc7ffcfb5baae4bed5460ac5f3f2b929df3154f3319b9809055b695264586f60289cc6cb25077c12938cc612fee01756bfa779c87d5a315
iso_checksum_type: sha512
remote_type: esx5
remote_host: "{{ user `esx_host` }}"
remote_datastore: "{{ user `esx_datastore` }}"
remote_username: "{{ user `esx_username` }}"
remote_password: "{{ user `esx_password` }}"
format: ova
tools_upload_flavor: linux
vnc_disable_password: true
cpus: 2
memory: 2048
vmx_data:
ethernet0.networkName: VM Network
boot_command:
- "<esc><wait>"
- "/install.amd/vmlinuz "
- "initrd=/install.amd/initrd.gz "
- "hostname={{ .Name }} "
- "domain= "
- "auto=true "
- "url=https://www.ubicast.eu/media/downloads/sys/preseed.cfg "
- "vga=788 noprompt quiet --<enter>"
ssh_username: root
ssh_password: ubicast
ssh_timeout: 15m
headless: false
shutdown_command: shutdown -P now
provisioners:
- type: shell
pause_before: 10s
environment_vars:
- PACKER_SSH_AUTH_KEYS={{ user `ssh_auth_keys` }}
scripts:
- packer/scripts/root.sh
- packer/scripts/upgrade.sh
- type: ansible
ansible_env_vars:
- NETWORK_IP={{ user `network_ip` }}
- NETWORK_MASK={{ user `network_mask` }}
- NETWORK_GATEWAY={{ user `network_gateway` }}
- NETWORK_DNS={{ user `network_dns` }}
- SKYREACH_SYSTEM_KEY={{ user `skyreach_system_key` }}
playbook_file: playbooks/server.yml
groups:
- monitor
- postgres
- server
...
---
# build trigger: 201907171352
variables:
ssh_auth_keys: "{{ env `PACKER_SSH_AUTH_KEYS` }}"
esx_host: "{{ env `PACKER_ESX_HOST` }}"
esx_datastore: "{{ env `PACKER_ESX_DATASTORE` }}"
esx_username: "{{ env `PACKER_ESX_USERNAME` }}"
esx_password: "{{ env `PACKER_ESX_PASSWORD` }}"
network_ip: "{{ env `NETWORK_IP` }}"
network_mask: "{{ env `NETWORK_MASK` }}"
network_gateway: "{{ env `NETWORK_GATEWAY` }}"
network_dns: "{{ env `NETWORK_DNS` }}"
skyreach_system_key: "{{ env `SKYREACH_SYSTEM_KEY` }}"
builders:
- type: vmware-iso
vm_name: ubicast-worker
display_name: ubicast-worker
output_directory: output
guest_os_type: debian10-64
iso_urls:
- http://debian.univ-lorraine.fr/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
iso_checksum: 23237b0a100a860b3dc7ffcfb5baae4bed5460ac5f3f2b929df3154f3319b9809055b695264586f60289cc6cb25077c12938cc612fee01756bfa779c87d5a315
iso_checksum_type: sha512
remote_type: esx5
remote_host: "{{ user `esx_host` }}"
remote_datastore: "{{ user `esx_datastore` }}"
remote_username: "{{ user `esx_username` }}"
remote_password: "{{ user `esx_password` }}"
format: ova
tools_upload_flavor: linux
vnc_disable_password: true
cpus: 2
memory: 2048
vmx_data:
ethernet0.networkName: VM Network
boot_command:
- "<esc><wait>"
- "/install.amd/vmlinuz "
- "initrd=/install.amd/initrd.gz "
- "hostname={{ .Name }} "
- "domain= "
- "auto=true "
- "url=https://www.ubicast.eu/media/downloads/sys/preseed.cfg "
- "vga=788 noprompt quiet --<enter>"
ssh_username: root
ssh_password: ubicast
ssh_timeout: 15m
headless: false
shutdown_command: shutdown -P now
provisioners:
- type: shell
pause_before: 10s
environment_vars:
- PACKER_SSH_AUTH_KEYS={{ user `ssh_auth_keys` }}
scripts:
- packer/scripts/root.sh
- packer/scripts/upgrade.sh
- type: ansible
ansible_env_vars:
- NETWORK_IP={{ user `network_ip` }}
- NETWORK_MASK={{ user `network_mask` }}
- NETWORK_GATEWAY={{ user `network_gateway` }}
- NETWORK_DNS={{ user `network_dns` }}
- SKYREACH_SYSTEM_KEY={{ user `skyreach_system_key` }}
playbook_file: playbooks/worker.yml
groups:
- worker
...
......@@ -3,6 +3,7 @@
conf_req_packages:
- ca-certificates
- git
- git-lfs
- ssh-client
conf_repo_url: https://mirismanager.ubicast.eu/git/mediaserver/envsetup.git
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment