88 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			88 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|  | #cloud-config | ||
|  | # Copyright 2022 The Kubernetes Authors. | ||
|  | # | ||
|  | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
|  | # you may not use this file except in compliance with the License. | ||
|  | # You may obtain a copy of the License at | ||
|  | # | ||
|  | #     http://www.apache.org/licenses/LICENSE-2.0 | ||
|  | # | ||
|  | # Unless required by applicable law or agreed to in writing, software | ||
|  | # distributed under the License is distributed on an "AS IS" BASIS, | ||
|  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
|  | # See the License for the specific language governing permissions and | ||
|  | # limitations under the License. | ||
|  | 
 | ||
|  | 
 | ||
|  | # For more information on how autoinstall is configured, please refer to | ||
|  | # https://ubuntu.com/server/docs/install/autoinstall-reference | ||
|  | autoinstall: | ||
|  |   version: 1 | ||
|  |   # Disable ssh server during installation, otherwise packer tries to connect and exceed max attempts | ||
|  |   early-commands: | ||
|  |     - systemctl stop ssh | ||
|  |   # Configure the locale | ||
|  |   locale: en_US.UTF-8 | ||
|  |   keyboard: | ||
|  |     layout: us | ||
|  |   # Create a single-partition with no swap space. Kubernetes | ||
|  |   # really dislikes the idea of anyone else managing memory. | ||
|  |   # For more information on how partitioning is configured, | ||
|  |   # please refer to https://curtin.readthedocs.io/en/latest/topics/storage.html. | ||
|  |   storage: | ||
|  |     config: | ||
|  |       - type: disk | ||
|  |         id: disk-0 | ||
|  |         size: largest | ||
|  |         grub_device: true | ||
|  |         preserve: false | ||
|  |         ptable: msdos | ||
|  |         wipe: superblock | ||
|  |       - type: partition | ||
|  |         id: partition-0 | ||
|  |         device: disk-0 | ||
|  |         size: -1 | ||
|  |         number: 1 | ||
|  |         preserve: false | ||
|  |         flag: boot | ||
|  |       - type: format | ||
|  |         id: format-0 | ||
|  |         volume: partition-0 | ||
|  |         fstype: ext4 | ||
|  |         preserve: false | ||
|  |       - type: mount | ||
|  |         id: mount-0 | ||
|  |         device: format-0 | ||
|  |         path: / | ||
|  |   updates: 'all' | ||
|  |   ssh: | ||
|  |     install-server: true | ||
|  |     allow-pw: true | ||
|  |   # Customize the list of packages installed. | ||
|  |   packages: | ||
|  |     - open-vm-tools | ||
|  |   # Create the default user. | ||
|  |   # Ensures the "builder" user doesn't require a password to use sudo. | ||
|  |   user-data: | ||
|  |     users: | ||
|  |       - name: builder | ||
|  |         # openssl passwd -6 -stdin <<< builder | ||
|  |         passwd: $6$xyz$UtXVazU08Q5b8AW.TJ3MPYZglyXa3Ttf2RCel8MCUPlEYO1evWxeWBhZ2QqivU/Ij4tqYAxMCqc2ujEM4dMSe1 | ||
|  |         groups: [adm, cdrom, dip, plugdev, lxd, sudo] | ||
|  |         lock-passwd: false | ||
|  |         sudo: ALL=(ALL) NOPASSWD:ALL | ||
|  |         shell: /bin/bash | ||
|  | 
 | ||
|  |   # This command runs after all other steps; it: | ||
|  |   # 1. Disables swapfiles | ||
|  |   # 2. Removes the existing swapfile | ||
|  |   # 3. Removes the swapfile entry from /etc/fstab | ||
|  |   # 4. Cleans up any packages that are no longer required | ||
|  |   # 5. Removes the cached list of packages | ||
|  |   late-commands: | ||
|  |     - swapoff -a | ||
|  |     - rm -f /swapfile | ||
|  |     - sed -ri '/\sswap\s/s/^#?/#/' /etc/fstab | ||
|  |     - apt-get purge --auto-remove -y | ||
|  |     - rm -rf /var/lib/apt/lists/* |