kameleon-builder 2.2.5 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/CHANGELOG.rst +21 -0
  4. data/{templates → contrib}/steps/bootstrap/debian/debootstrap_arm.yaml +1 -1
  5. data/{templates → contrib}/steps/export/clean_appliance.yaml +0 -0
  6. data/{templates → contrib}/steps/export/compact_qcow_img.yaml +0 -0
  7. data/{templates → contrib}/steps/setup/archlinux/configure_ruby.yaml +0 -0
  8. data/{templates → contrib}/steps/setup/archlinux/install_dev_tools.yaml +0 -0
  9. data/{templates → contrib}/steps/setup/archlinux/install_gnome.yaml +0 -0
  10. data/{templates → contrib}/steps/setup/archlinux/install_yaourt.yaml +0 -0
  11. data/{templates → contrib}/steps/setup/centos/6.5/configure_repo.yaml +0 -0
  12. data/{templates → contrib}/steps/setup/debian/install_gnome.yaml +0 -0
  13. data/{templates → contrib}/steps/setup/debian/install_kde.yaml +0 -0
  14. data/{templates → erb}/extend.erb +2 -2
  15. data/erb/userconf.erb +5 -0
  16. data/kameleon-builder.gemspec +6 -1
  17. data/lib/kameleon.rb +53 -3
  18. data/lib/kameleon/cli.rb +146 -99
  19. data/lib/kameleon/engine.rb +20 -8
  20. data/lib/kameleon/environment.rb +11 -10
  21. data/lib/kameleon/persistent_cache.rb +1 -9
  22. data/lib/kameleon/recipe.rb +52 -24
  23. data/lib/kameleon/repository.rb +46 -0
  24. data/lib/kameleon/utils.rb +49 -0
  25. data/{templates → tests/recipes}/steps/aliases/defaults.yaml +0 -0
  26. data/tests/recipes/steps/bootstrap/linux/bootstrap.yaml +2 -0
  27. data/tests/recipes/steps/checkpoints/test.yaml +14 -0
  28. data/tests/recipes/steps/enable_something.yaml +2 -0
  29. data/tests/recipes/steps/export/save_appliance.yaml +10 -0
  30. data/tests/recipes/steps/setup/linux/software_install.yaml +7 -0
  31. data/tests/recipes/test_recipe.yaml +41 -0
  32. data/version.txt +1 -1
  33. metadata +34 -139
  34. data/templates/COPYRIGHT +0 -21
  35. data/templates/chroot/debian7-amd64.yaml +0 -119
  36. data/templates/docker/debian7.yaml +0 -107
  37. data/templates/grid5000/debian7.yaml +0 -97
  38. data/templates/qemu/archlinux-desktop-i686.yaml +0 -25
  39. data/templates/qemu/archlinux-desktop-x86_64.yaml +0 -25
  40. data/templates/qemu/archlinux-i686.yaml +0 -25
  41. data/templates/qemu/archlinux-x86_64.yaml +0 -109
  42. data/templates/qemu/centos6.5-x86_64.yaml +0 -122
  43. data/templates/qemu/centos7-x86_64.yaml +0 -122
  44. data/templates/qemu/debian7-amd64.yaml +0 -134
  45. data/templates/qemu/debian7-desktop-amd64.yaml +0 -24
  46. data/templates/qemu/debian7-kameleon-amd64.yaml +0 -40
  47. data/templates/qemu/debian7-oar-amd64.yaml +0 -51
  48. data/templates/qemu/debian8-amd64.yaml +0 -25
  49. data/templates/qemu/fedora20-desktop-x86_64.yaml +0 -21
  50. data/templates/qemu/fedora20-x86_64.yaml +0 -119
  51. data/templates/qemu/ubuntu-12.04-amd64.yaml +0 -132
  52. data/templates/qemu/ubuntu-12.04-desktop-amd64.yaml +0 -25
  53. data/templates/qemu/ubuntu-14.04-amd64.yaml +0 -25
  54. data/templates/qemu/ubuntu-14.04-desktop-amd64.yaml +0 -27
  55. data/templates/steps/bootstrap/archlinux/arch_bootstrap.yaml +0 -211
  56. data/templates/steps/bootstrap/centos/6.5/yum_bootstrap.yaml +0 -67
  57. data/templates/steps/bootstrap/debian/debootstrap.yaml +0 -20
  58. data/templates/steps/bootstrap/fedora/init_pxeboot.yaml +0 -13
  59. data/templates/steps/bootstrap/fedora/yum_bootstrap.yaml +0 -45
  60. data/templates/steps/bootstrap/g5k_reserv.yaml +0 -70
  61. data/templates/steps/bootstrap/initialize_disk.yaml +0 -16
  62. data/templates/steps/bootstrap/initialize_disk_chroot.yaml +0 -80
  63. data/templates/steps/bootstrap/install_requirements.yaml +0 -3
  64. data/templates/steps/bootstrap/prepare_chroot.yaml +0 -126
  65. data/templates/steps/bootstrap/prepare_docker.yaml +0 -51
  66. data/templates/steps/bootstrap/prepare_qemu.yaml +0 -41
  67. data/templates/steps/bootstrap/prepare_virtualbox.yaml +0 -67
  68. data/templates/steps/bootstrap/start_chroot.yaml +0 -51
  69. data/templates/steps/bootstrap/start_docker.yaml +0 -16
  70. data/templates/steps/bootstrap/start_qemu.yaml +0 -74
  71. data/templates/steps/bootstrap/start_virtualbox.yaml +0 -38
  72. data/templates/steps/bootstrap/switch_context_qemu.yaml +0 -84
  73. data/templates/steps/bootstrap/switch_context_virtualbox.yaml +0 -86
  74. data/templates/steps/breakpoint.yaml +0 -3
  75. data/templates/steps/checkpoints/docker.yaml +0 -17
  76. data/templates/steps/checkpoints/qcow2.yaml +0 -40
  77. data/templates/steps/checkpoints/qemu.yaml +0 -33
  78. data/templates/steps/checkpoints/virtualbox.yaml +0 -21
  79. data/templates/steps/disable_checkpoint.yaml +0 -3
  80. data/templates/steps/enable_checkpoint.yaml +0 -5
  81. data/templates/steps/export/qemu_save_appliance.yaml +0 -52
  82. data/templates/steps/export/save_appliance_from_g5k.yaml +0 -47
  83. data/templates/steps/export/vagrant_save_appliance.yaml +0 -14
  84. data/templates/steps/export/virtualbox_save_appliance.yaml +0 -61
  85. data/templates/steps/setup/archlinux/configure_keyboard.yaml +0 -9
  86. data/templates/steps/setup/archlinux/configure_network.yaml +0 -9
  87. data/templates/steps/setup/archlinux/configure_system.yaml +0 -20
  88. data/templates/steps/setup/archlinux/install_bootloader.yaml +0 -23
  89. data/templates/steps/setup/archlinux/install_software.yaml +0 -9
  90. data/templates/steps/setup/autologin.yaml +0 -16
  91. data/templates/steps/setup/centos/6.5/configure_network.yaml +0 -33
  92. data/templates/steps/setup/centos/6.5/configure_system.yaml +0 -46
  93. data/templates/steps/setup/centos/6.5/minimal_install.yaml +0 -3
  94. data/templates/steps/setup/centos/6.5/setup_vagrant_box.yaml +0 -77
  95. data/templates/steps/setup/create_group.yaml +0 -12
  96. data/templates/steps/setup/create_user.yaml +0 -11
  97. data/templates/steps/setup/debian/configure_apt.yaml +0 -73
  98. data/templates/steps/setup/debian/configure_kernel.yaml +0 -13
  99. data/templates/steps/setup/debian/configure_keyboard.yaml +0 -10
  100. data/templates/steps/setup/debian/configure_network.yaml +0 -30
  101. data/templates/steps/setup/debian/configure_system.yaml +0 -12
  102. data/templates/steps/setup/debian/install_bootloader.yaml +0 -36
  103. data/templates/steps/setup/debian/install_software.yaml +0 -2
  104. data/templates/steps/setup/debian/oar/oar_debian_config_frontend.yaml +0 -8
  105. data/templates/steps/setup/debian/oar/oar_debian_config_node.yaml +0 -5
  106. data/templates/steps/setup/debian/oar/oar_debian_config_server.yaml +0 -5
  107. data/templates/steps/setup/debian/oar/oar_prereq_install.yaml +0 -16
  108. data/templates/steps/setup/debian/setup_vagrant_box.yaml +0 -80
  109. data/templates/steps/setup/debian/upgrade_system.yaml +0 -10
  110. data/templates/steps/setup/fedora/configure_kernel.yaml +0 -9
  111. data/templates/steps/setup/fedora/configure_keyboard.yaml +0 -12
  112. data/templates/steps/setup/fedora/configure_network.yaml +0 -38
  113. data/templates/steps/setup/fedora/configure_system.yaml +0 -52
  114. data/templates/steps/setup/fedora/install_bootloader.yaml +0 -53
  115. data/templates/steps/setup/fedora/install_software.yaml +0 -3
  116. data/templates/steps/setup/fedora/minimal_install.yaml +0 -3
  117. data/templates/steps/setup/fedora/update_system.yaml +0 -16
  118. data/templates/steps/setup/oar/oar_config_devel.yaml +0 -21
  119. data/templates/steps/setup/oar/oar_config_frontend.yaml +0 -38
  120. data/templates/steps/setup/oar/oar_config_node.yaml +0 -4
  121. data/templates/steps/setup/oar/oar_config_server.yaml +0 -25
  122. data/templates/steps/setup/oar/oar_config_system.yaml +0 -34
  123. data/templates/steps/setup/oar/oar_devel_prereq_install.yaml +0 -5
  124. data/templates/steps/setup/oar/oar_git_install.yaml +0 -21
  125. data/templates/steps/setup/ubuntu/configure_apt.yaml +0 -62
  126. data/templates/virtualbox/archlinux-desktop-i686.yaml +0 -25
  127. data/templates/virtualbox/archlinux-desktop-x86_64.yaml +0 -28
  128. data/templates/virtualbox/archlinux-i686.yaml +0 -28
  129. data/templates/virtualbox/archlinux-x86_64.yaml +0 -108
  130. data/templates/virtualbox/centos6.5-i386.yaml +0 -39
  131. data/templates/virtualbox/centos6.5-vagrant-x86_64.yaml +0 -33
  132. data/templates/virtualbox/centos6.5-x86_64.yaml +0 -121
  133. data/templates/virtualbox/centos7-x86_64.yaml +0 -118
  134. data/templates/virtualbox/debian7-amd64.yaml +0 -128
  135. data/templates/virtualbox/debian7-desktop-amd64.yaml +0 -25
  136. data/templates/virtualbox/debian7-i386.yaml +0 -31
  137. data/templates/virtualbox/debian7-kameleon-amd64.yaml +0 -38
  138. data/templates/virtualbox/debian7-oar-amd64.yaml +0 -51
  139. data/templates/virtualbox/debian7-vagrant-amd64.yaml +0 -32
  140. data/templates/virtualbox/debian8-amd64.yaml +0 -25
  141. data/templates/virtualbox/debian8-i386.yaml +0 -31
  142. data/templates/virtualbox/fedora20-x86_64.yaml +0 -118
  143. data/templates/virtualbox/ubuntu-12.04-amd64.yaml +0 -128
  144. data/templates/virtualbox/ubuntu-12.04-desktop-amd64.yaml +0 -25
  145. data/templates/virtualbox/ubuntu-14.04-amd64.yaml +0 -25
  146. data/templates/virtualbox/ubuntu-14.04-desktop-amd64.yaml +0 -27
  147. data/tests/recipes/dummy_recipe.yaml +0 -48
  148. data/tests/recipes/steps/bootstrap/dummy_distro/dummy_bootstrap_static.yaml +0 -4
  149. data/tests/recipes/steps/export/dummy_save_appliance.yaml +0 -9
  150. data/tests/recipes/steps/setup/default/dummy_root_passwd.yaml +0 -8
  151. data/tests/recipes/steps/setup/dummy_distro/dummy_software_install.yaml +0 -7
@@ -1,40 +0,0 @@
1
- enabled?:
2
- - exec_local: test -f $$kameleon_cwd/checkpoint_enabled
3
- - exec_local: test -e "$$image_disk"
4
-
5
- create:
6
- - exec_local: |
7
- parent_of_@microstep_id="$(readlink $$image_disk)"
8
- pushd $$kameleon_cwd/checkpoints
9
- rm -f @microstep_id_checkpoint.qcow2
10
- qemu-img create -f qcow2 "@microstep_id_checkpoint.qcow2" \
11
- -o backing_file=$(basename "$parent_of_@microstep_id")
12
- popd
13
- ln -sf $$kameleon_cwd/checkpoints/@microstep_id_checkpoint.qcow2 $$image_disk
14
- lsmod | grep nbd >/dev/null || modprobe nbd max_part=63
15
- echo "sync" ; sync
16
- qemu-nbd -d $$nbd_device
17
- qemu-nbd -c $$nbd_device "$(readlink $$image_disk)"
18
-
19
- apply:
20
- - exec_local: |
21
- # apply command use the backing file that represent the real state to restore
22
- previous_id=$(qemu-img info "checkpoints/@microstep_id_checkpoint.qcow2" \
23
- | grep backing \
24
- | sed -e 's/.*checkpoints\/\(.*\)_checkpoint.qcow2\(.*\)/\1/p' \
25
- | uniq)
26
- ln -sf "$$kameleon_cwd/checkpoints/${previous_id}_checkpoint.qcow2" "$$image_disk"
27
-
28
- clear:
29
- - exec_local: |
30
- if [ -d "$$kameleon_cwd/checkpoints" ] ; then
31
- ls $$kameleon_cwd/checkpoints/ | \
32
- xargs -I {} bash -c "echo Removing $$kameleon_cwd/checkpoints/{} ; rm $$kameleon_cwd/checkpoints/{}"
33
- rm -f $$image_disk
34
- fi
35
-
36
- list:
37
- - exec_local: |
38
- if [ -d "$$kameleon_cwd/checkpoints" ] ; then
39
- ls $$kameleon_cwd/checkpoints/ | sed -e 's/\(.*\)_checkpoint.qcow2/\1/p' | uniq
40
- fi
@@ -1,33 +0,0 @@
1
- enabled?:
2
- - exec_local: test -f $$kameleon_cwd/checkpoint_enabled
3
- - exec_local: test -S $$qemu_monitor_socket
4
-
5
- create:
6
- - exec_local: echo -e "savevm @microstep_id" | socat - UNIX-CONNECT:$$qemu_monitor_socket
7
-
8
- apply:
9
- - exec_local: |
10
- [[ ! -f "$$kameleon_cwd/vm_state_to_load.txt" ]] || rm -f $$kameleon_cwd/vm_state_to_load.txt
11
- if [ -f "$$qemu_image_disk" ] ; then
12
- _checkpoints=$(qemu-img snapshot -l $$qemu_image_disk | tail -n +3 | awk '{print $2}')
13
- _checkpoints=($_checkpoints)
14
- for checkpoint in "${_checkpoints[@]}"; do
15
- if [ -f "$$kameleon_cwd/vm_state_to_load.txt" ]; then
16
- echo "Removing old checkpoint $checkpoint"
17
- qemu-img snapshot -d $checkpoint $$qemu_image_disk
18
- fi
19
- if [[ "$checkpoint" == "@microstep_id" ]]; then
20
- echo "@microstep_id" > $$kameleon_cwd/vm_state_to_load.txt
21
- qemu-img snapshot -a $checkpoint $$qemu_image_disk
22
- fi
23
- done
24
- fi
25
-
26
- clear:
27
- - exec_local: rm -f $$qemu_image_disk
28
-
29
- list:
30
- - exec_local: |
31
- if [ -f "$$qemu_image_disk" ] ; then
32
- qemu-img snapshot -l $$qemu_image_disk | tail -n +3 | awk '{print $2}'
33
- fi
@@ -1,21 +0,0 @@
1
- enabled?:
2
- - exec_local: test -f $$kameleon_cwd/checkpoint_enabled
3
- - exec_local: VBoxManage list vms | grep -q $$virtualbox_vmid
4
-
5
- create:
6
- - exec_local: VBoxManage snapshot $$virtualbox_vmid take @microstep_id 2>&1
7
-
8
- apply:
9
- - exec_local: VBoxManage snapshot $$virtualbox_vmid restore @microstep_id 2>&1
10
-
11
- clear:
12
- - exec_local: |
13
- if VBoxManage list vms | grep -q $$virtualbox_vmid; then
14
- VBoxManage unregistervm --delete $$virtualbox_vmid 2>&1
15
- fi
16
-
17
- list:
18
- - exec_local: |
19
- if VBoxManage list vms | grep -q $$virtualbox_vmid; then
20
- VBoxManage snapshot $$virtualbox_vmid list | grep 'Name:' | awk '{print $2}'
21
- fi
@@ -1,3 +0,0 @@
1
- - disable_checkpoint:
2
- - on_checkpoint: redo
3
- - exec_local: rm -f $$kameleon_cwd/checkpoint_enabled
@@ -1,5 +0,0 @@
1
- - enable_checkpoint:
2
- - on_checkpoint: redo
3
- - on_bootstrap_init:
4
- - exec_local: rm -f $$kameleon_cwd/checkpoint_enabled
5
- - exec_local: touch $$kameleon_cwd/checkpoint_enabled
@@ -1,52 +0,0 @@
1
- # Save Appliance
2
-
3
- - tar_out_opts: numericowner:true excludes:etc/fstab
4
-
5
- - save_as_tar_gz:
6
- - check_cmd_local: guestfish
7
- - check_cmd_local: gzip
8
- - exec_local: echo "Exporting appliance to $$output.tar.gz..."
9
- - exec_local: guestfish --ro -i tar-out -a $$input / - $$tar_out_opts | gzip --best > $$output.tar.gz
10
-
11
- - save_as_tar_xz:
12
- - check_cmd_local: guestfish
13
- - check_cmd_local: xz
14
- - exec_local: echo "Exporting appliance to $$output.tar.xz..."
15
- - exec_local: guestfish --ro -i tar-out -a $$input / - $$tar_out_opts | xz -9 -c - > $$output.tar.xz
16
-
17
- - save_as_tar_bz2:
18
- - check_cmd_local: guestfish
19
- - check_cmd_local: bzip2
20
- - exec_local: echo "Exporting appliance to $$output.tar.bz2..."
21
- - exec_local: guestfish --ro -i tar-out -a $$input / - $$tar_out_opts | bzip2 --best > $$output.tar.bz2
22
-
23
- - save_as_raw:
24
- - check_cmd_local: qemu-img
25
- - exec_local: echo "Exporting appliance to $$output.raw..."
26
- - exec_local: qemu-img convert -O raw $$input $$output.raw
27
-
28
- - save_as_qcow2:
29
- - check_cmd_local: qemu-img
30
- - exec_local: echo "Exporting appliance to $$output.qcow2..."
31
- - exec_local: qemu-img convert -c -O qcow2 $$input $$output.qcow2
32
-
33
- - save_as_qed:
34
- - check_cmd_local: qemu-img
35
- - exec_local: echo "Exporting appliance to $$output.qed..."
36
- - exec_local: qemu-img convert -O qed $$input $$output.qed
37
-
38
- - save_as_vmdk:
39
- - check_cmd_local: qemu-img
40
- - exec_local: echo "Exporting appliance to $$output.vmdk..."
41
- - exec_local: qemu-img convert -O vmdk $$input $$output.vmdk
42
-
43
- - save_as_vdi:
44
- - check_cmd_local: qemu-img
45
- - exec_local: echo "Exporting appliance to $$output.vdi..."
46
- - exec_local: qemu-img convert -O vdi $$input $$output.vdi
47
- - rescue:
48
- - exec_local: |
49
- echo "Compact the vdi disk"
50
- VBoxManage modifyhd $$output.vdi --compact 2>&1
51
- - exec_local: |
52
- echo "Cannot compact the vdi disk : VBoxManage is missing."
@@ -1,47 +0,0 @@
1
- # # Save G5k Appliance
2
-
3
- - save_as_g5k:
4
- - exec_out: echo "Using tgz g5k to Export the machine"
5
- - exec_in: tgz-g5k $$in_cwd/$$filename.tar.gz
6
- - exec_out: |
7
- rsync -avz -e "ssh -F $$out_cwd/ssh_config" \
8
- $$kameleon_recipe_name:$$in_cwd/$$filename.tar.gz \
9
- $$out_cwd/$$filename.tar.gz
10
- - exec_out: echo "Saved tar.gz appliance to $$out_cwd/$$filename.tar.gz"
11
- - exec_in: rm -f $$in_cwd/$$filename.tar.gz
12
- - exec_out: echo "Getting the appropiate post install"
13
- - pipe:
14
- - exec_out: kaenv3 -p $$kenv | grep archive
15
- - exec_in: cat > /tmp/postinstall
16
-
17
- - write_in:
18
- - $$in_cwd/$${kameleon_recipe_name}_img.yaml
19
- - |
20
- #
21
- # Kameleon generated based on kadeploy description file
22
- #
23
- ---
24
- name: $${kameleon_recipe_name}
25
-
26
- version: 1
27
-
28
- os: linux
29
-
30
- image:
31
- file: $$filename.tar.gz
32
- kind: tar
33
- compression: gzip
34
-
35
- postinstalls:
36
- `cat /tmp/postinstall`
37
- compression: gzip
38
- script: traitement.ash /rambin
39
-
40
- boot:
41
- kernel: /boot/`basename /boot/vmlinu*`
42
- initrd: /boot/`basename /boot/init*`
43
-
44
- filesystem: $$filesystem
45
- - in2out:
46
- - $$in_cwd/$${kameleon_recipe_name}_img.yaml
47
- - $$out_cwd/$${kameleon_recipe_name}_img.yaml
@@ -1,14 +0,0 @@
1
- # Save Appliance from virtualbox vagrant
2
-
3
- - memory_size: $$virtualbox_memory_size
4
-
5
- - customized_vm:
6
- - exec_local: VBoxManage modifyvm $$virtualbox_vmid --natpf1 delete guestssh
7
- - exec_local: VBoxManage storageattach $$virtualbox_vmid --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium none
8
- - exec_local: VBoxManage modifyvm $$virtualbox_vmid --memory $$memory_size
9
-
10
- - save_box:
11
- - check_cmd_local: vagrant
12
- - exec_local: echo "Exporting appliance to $$output.box..."
13
- - exec_local: rm -f $$output.box
14
- - exec_local: vagrant package --base $$virtualbox_vmid --output $$output.box
@@ -1,61 +0,0 @@
1
- # Save Appliance from virtualbox
2
-
3
- - tar_out_opts: numericowner:true excludes:etc/fstab
4
-
5
- - save_as_ova:
6
- - exec_local: rm -f $$output.ova
7
- - exec_local: VBoxManage modifyvm $$virtualbox_vmid --natpf1 delete guestssh
8
- - exec_local: VBoxManage storageattach $$virtualbox_vmid --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium none
9
- - exec_local: VBoxManage export $$virtualbox_vmid -o $$output.ova
10
-
11
- - save_as_vdi:
12
- - check_cmd_local: qemu-img
13
- - exec_local: echo "Exporting appliance to $$output.vdi..."
14
- - exec_local: qemu-img convert -O vdi $$virtualbox_image_disk $$output.vdi
15
- - rescue:
16
- - exec_local: |
17
- echo "Compact the vdi disk"
18
- VBoxManage modifyhd $$output.vdi --compact 2>&1
19
- - exec_local: |
20
- echo "Cannot compact the vdi disk : VBoxManage is missing."
21
- - exec_local: echo "Saved vdi appliance to $$output.vdi"
22
-
23
- - save_as_vmdk:
24
- - check_cmd_local: qemu-img
25
- - exec_local: echo "Exporting appliance to $$output.vmdk..."
26
- - exec_local: qemu-img convert -O vmdk $$virtualbox_image_disk $$output.vmdk
27
- - exec_local: echo "Saved vmdk appliance to $$output.vmdk"
28
-
29
- - save_as_tar_gz:
30
- - check_cmd_local: guestfish
31
- - check_cmd_local: gzip
32
- - exec_local: echo "Exporting appliance to $$output.tar.gz..."
33
- - exec_local: guestfish --ro -i tar-out -a $$virtualbox_image_disk / - $$tar_out_opts | gzip --best > $$output.tar.gz
34
-
35
- - save_as_tar_xz:
36
- - check_cmd_local: guestfish
37
- - check_cmd_local: xz
38
- - exec_local: echo "Exporting appliance to $$output.tar.xz..."
39
- - exec_local: guestfish --ro -i tar-out -a $$virtualbox_image_disk / - $$tar_out_opts | xz -9 -c - > $$output.tar.xz
40
-
41
- - save_as_tar_bz2:
42
- - check_cmd_local: guestfish
43
- - check_cmd_local: bzip2
44
- - exec_local: echo "Exporting appliance to $$output.tar.bz2..."
45
- - exec_local: guestfish --ro -i tar-out -a $$virtualbox_image_disk / - $$tar_out_opts | bzip2 --best > $$output.tar.bz2
46
-
47
- - save_as_raw:
48
- - check_cmd_local: qemu-img
49
- - exec_local: echo "Exporting appliance to $$output.raw..."
50
- - exec_local: qemu-img convert -O raw $$virtualbox_image_disk $$output.raw
51
- - exec_local: echo "Saved raw appliance to $$output.raw"
52
-
53
- - save_as_qcow2:
54
- - check_cmd_local: qemu-img
55
- - exec_local: echo "Exporting appliance to $$output.qcow2..."
56
- - exec_local: qemu-img convert -c -O qcow2 $$virtualbox_image_disk $$output.qcow2
57
-
58
- - save_as_qed:
59
- - check_cmd_local: qemu-img
60
- - exec_local: echo "Exporting appliance to $$output.qed..."
61
- - exec_local: qemu-img convert -O qed $$virtualbox_image_disk $$output.qed
@@ -1,9 +0,0 @@
1
- # Keyboard configuration for Archlinux
2
- #
3
- # This should work on every systemd powered system
4
-
5
- - set_keyboard_layout:
6
- - write_in:
7
- - /etc/vconsole.conf
8
- - |
9
- KEYMAP=$$layout
@@ -1,9 +0,0 @@
1
- # Network config for Archlinux
2
- #
3
- # This should work for every systemd powered system
4
-
5
- - set_hostname:
6
- - exec_in: echo $$hostname > /etc/hostname
7
-
8
- - set_interface:
9
- - exec_in: systemctl enable dhcpcd.service
@@ -1,20 +0,0 @@
1
- # System configuration for Archlinux
2
- #
3
- # This will set the locals and the timezone
4
-
5
- - set_locales:
6
- # uncomment the locales
7
- - exec_in: |
8
- test ! -f /etc/locale.gen || \
9
- (echo $$locales | tr ' ' '\n' | xargs -I {} sed -i 's/^#{}/{}/' /etc/locale.gen)
10
- # generate the locales
11
- - exec_in: locale-gen
12
- # save and apply
13
- - exec_in: echo LANG=$$lang > /etc/locale.conf
14
- - exec_in: export LANG=$$lang
15
-
16
- - set_timezone:
17
- - exec_in: ln -s /usr/share/zoneinfo/$$timezone /etc/localtime
18
-
19
- - set_wheel_sudo:
20
- - exec_in: echo "%wheel ALL=(ALL) ALL" >> /etc/sudoers
@@ -1,23 +0,0 @@
1
- # Install extlinux bootloader
2
-
3
- - install_syslinux:
4
- - check_cmd_in: extlinux
5
- - check_cmd_in: syslinux-install_update
6
- - exec_in: DISTRIB_TITLE="$$kameleon_recipe_name"
7
- - exec_in: syslinux-install_update -a -m
8
- - exec_in: cp -r /usr/lib/syslinux/bios/*.c32 /boot/syslinux/
9
- - exec_in: extlinux --install /boot/syslinux 2>&1
10
- - exec_in: syslinux-install_update -a -m
11
- - write_in:
12
- - /boot/syslinux/syslinux.cfg
13
- - |
14
- default ${DISTRIB_TITLE^}
15
- timeout 1
16
-
17
- label ${DISTRIB_TITLE^}
18
- kernel ../vmlinuz-linux
19
- initrd ../initramfs-linux.img
20
- # the net.ifnames option is disable to get default net interface
21
- # names according to this page:
22
- # https://wiki.archlinux.org/index.php/Network_Configuration#Device_names
23
- append root=UUID=`blkid -s UUID -o value $(__find_linux_boot_device)` rw net.ifnames=0
@@ -1,9 +0,0 @@
1
- # Software install for archlinux
2
- #
3
- # It use pacman tool to install given packages
4
-
5
- - do_install:
6
- - exec_in: pacman --noconfirm --arch $$arch -Suy --force $$packages
7
- - on_clean:
8
- - exec_in: echo "y" | pacman -Scc
9
-
@@ -1,16 +0,0 @@
1
- # # Autologin
2
- - set_autologin:
3
- - exec_in: |
4
- # check SysV init
5
- if [ -f '/etc/inittab' ]
6
- then
7
- perl -pi -e 's;/sbin/getty.*tty1;/bin/login -f $$user_name tty1 </dev/tty1 >/dev/tty1 2>&1;' /etc/inittab
8
- else
9
- # use systemd
10
- mkdir -p /etc/systemd/system/getty@tty1.service.d
11
- cat > /etc/systemd/system/getty@tty1.service.d/autologin.conf <<< '
12
- [Service]
13
- ExecStart=
14
- ExecStart=-/usr/bin/agetty --autologin <username> --noclear %I 38400 linux
15
- '
16
- fi
@@ -1,33 +0,0 @@
1
- - mtu: "1492"
2
-
3
- - set_hostname:
4
- - exec_in: echo $$hostname > /etc/hostname
5
-
6
- - enable_network:
7
- - exec_in: chkconfig network on
8
-
9
- - set_host:
10
- - write_in:
11
- - /etc/hosts
12
- - |
13
- 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 $$hostname
14
- ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 $$hostname
15
-
16
- - set_interface:
17
- - write_in:
18
- - /etc/sysconfig/network-scripts/ifcfg-eth0
19
- - |
20
- DEVICE="eth0"
21
- BOOTPROTO="dhcp"
22
- HOSTNAME="$$hostname"
23
- IPV6INIT="yes"
24
- NM_CONTROLLED="yes"
25
- ONBOOT="yes"
26
- TYPE="Ethernet"
27
- MTU="$$mtu"
28
- - write_in:
29
- - /etc/sysconfig/network
30
- - |
31
- NETWORKING=yes
32
- HOSTNAME=$$hostname
33
- RES_OPTIONS="single-request-reopen"
@@ -1,46 +0,0 @@
1
- # System configuration
2
- #
3
- # This will set the locals and the timezone
4
-
5
-
6
- - set_locales:
7
- # uncomment the locales
8
- - exec_in: |
9
- echo $$locales | tr ' ' '\n' | xargs -I {} localedef -v -c -i {} -i {} -f UTF-8 $$lang 2>&1 || :
10
-
11
- - set_timezone:
12
- - exec_in: ln -sf /usr/share/zoneinfo/$$timezone /etc/localtime
13
-
14
- - set_wheel_sudo:
15
- - exec_in: echo "%wheel ALL=(ALL) ALL" >> /etc/sudoers
16
-
17
- - remove_random_seed:
18
- - exec_in: echo "Removing random-seed so it's not the same in every image."
19
- - exec_in: rm -f /var/lib/random-seed
20
-
21
- - compress_cracklib:
22
- - exec_in: gzip -9 /usr/share/cracklib/pw_dict.pwd
23
-
24
- - enable_sshd:
25
- - exec_in: chkconfig sshd on
26
-
27
- - enable_ntpdate_service:
28
- - exec_in: chkconfig ntpd on
29
-
30
- - selinux: permissive
31
- - selinuxtype: targeted
32
-
33
- - configure_selinux:
34
- - write_in:
35
- - /etc/selinux/config
36
- - |
37
- # This file controls the state of SELinux on the system.
38
- # SELINUX= can take one of these three values:
39
- # enforcing - SELinux security policy is enforced.
40
- # permissive - SELinux prints warnings instead of enforcing.
41
- # disabled - SELinux is fully disabled.
42
- SELINUX=$$selinux
43
- # SELINUXTYPE= type of policy in use. Possible values are:
44
- # targeted - Only targeted network daemons are protected.
45
- # strict - Full SELinux protection.
46
- SELINUXTYPE=$$selinuxtype