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,122 +0,0 @@
1
- #==============================================================================
2
- # vim: softtabstop=2 shiftwidth=2 expandtab fenc=utf-8 cc=81 tw=80
3
- #==============================================================================
4
- #
5
- # DESCRIPTION: Centos 7 base system (x86_64)
6
- #
7
- #==============================================================================
8
-
9
- ---
10
- # Loads some helpful aliases
11
- aliases: defaults.yaml
12
- # Enables qemu checkpoint
13
- checkpoint: qemu.yaml
14
- #== Global variables use by Kameleon engine and the steps
15
- global:
16
- ## User varibales : used by the recipe
17
- user_name: kameleon
18
- user_password: $$user_name
19
-
20
- # Distribution
21
- distrib: centos
22
- release: 7
23
- arch: x86_64
24
- hostname: kameleon-$$distrib
25
-
26
- ## QEMU options
27
- qemu_enable_kvm: "$(egrep '(vmx|svm)' /proc/cpuinfo > /dev/null && echo true)"
28
- qemu_cpu: 2
29
- qemu_memory_size: 768
30
- qemu_monitor_socket: $$kameleon_cwd/qemu_monitor.socket
31
- qemu_ssh_port: 55423
32
- qemu_arch: x86_64
33
- qemu_image_size: 10G
34
- qemu_image_disk: $$kameleon_cwd/base_$$kameleon_recipe_name.qcow2
35
- qemu_pidfile: $$kameleon_cwd/qemu.pid
36
-
37
- ## Kameleon iso bootstrap
38
- boot2kameleon_url: http://kameleon.imag.fr/iso/boot2debian/debian-jessie-$${qemu_arch}-insecure.iso
39
- insecure_ssh_key_url: http://kameleon.imag.fr/iso/boot2debian/keys/insecure_id_rsa
40
-
41
- # rootfs options
42
- disk_device: /dev/vda
43
- rootfs: /rootfs
44
- filesystem_type: ext4
45
-
46
- ## System variables. Required by kameleon engine
47
- # Include specific steps
48
- include_steps:
49
- - $$distrib/$$release
50
- - $$distrib
51
- - "fedora"
52
-
53
- # SELinux configuration
54
- selinux: permissive ## Can take one of these three values: enforcing, permissive or disabled
55
- selinuxtype: targeted # Possible values are: strict, targeted
56
-
57
- ssh_config_file: $$kameleon_cwd/ssh_config
58
- out_context:
59
- cmd: ssh -F $$ssh_config_file $${kameleon_recipe_name} -t /bin/bash
60
- workdir: /root/kameleon_workdir
61
- proxy_cache: 10.0.2.2
62
-
63
- in_context:
64
- cmd: ssh -F $$ssh_config_file $${kameleon_recipe_name} -t /bin/bash
65
- workdir: /root/kameleon_workdir
66
- proxy_cache: 10.0.2.2
67
-
68
- #== Bootstrap the new system and create the 'in_context'
69
- bootstrap:
70
- - enable_checkpoint
71
- - prepare_qemu
72
- - start_qemu
73
- - install_requirements:
74
- - packages: parted e2fsprogs yum rpm lynx extlinux
75
- - initialize_disk
76
- - yum_bootstrap:
77
- - mirror_packages_url: http://mirrors.kernel.org/$$distrib/$$release/os/$$arch/Packages/
78
- - include_pkgs: >
79
- findutils yum util-linux dhclient vim-minimal net-tools NetworkManager
80
- openssh-server
81
- - init_pxeboot:
82
- - pxe_initrd_url: http://mirrors.kernel.org/$$distrib/$$release/os/$$arch/images/pxeboot/initrd.img
83
- - pxe_vmlinuz_url: http://mirrors.kernel.org/$$distrib/$$release/os/$$arch/images/pxeboot/vmlinuz
84
- - switch_context_qemu
85
-
86
- #== Install and configuration steps
87
- setup:
88
- - configure_kernel
89
- - update_system
90
- - minimal_install
91
- - install_software:
92
- - packages: >
93
- kernel bash-completion kbd sudo openssh-clients syslinux-extlinux acpid
94
- ntp ntpdate
95
- - install_bootloader
96
- - configure_system:
97
- - locales: POSIX C en_US fr_FR de_DE
98
- - lang: en_US.UTF-8
99
- - timezone: UTC
100
- - configure_keyboard:
101
- - layout: "us"
102
- - configure_network:
103
- - hostname: kameleon-$$distrib
104
- - create_user:
105
- - name: $$user_name
106
- - groups: wheel
107
- - password: $$user_password
108
-
109
- #== Export the generated appliance in the format of your choice
110
- export:
111
- - disable_checkpoint
112
- - qemu_save_appliance:
113
- - input: $$qemu_image_disk
114
- - output: $$kameleon_cwd/$$kameleon_recipe_name
115
- - save_as_qcow2
116
- # - save_as_qed
117
- # - save_as_tar_gz
118
- # - save_as_tar_xz
119
- # - save_as_tar_bz2
120
- # - save_as_raw
121
- # - save_as_vmdk
122
- # - save_as_vdi
@@ -1,134 +0,0 @@
1
- #==============================================================================
2
- # vim: softtabstop=2 shiftwidth=2 expandtab fenc=utf-8 cc=81 tw=80
3
- #==============================================================================
4
- #
5
- # DESCRIPTION: Debian 7 (Wheezy) base system (amd64).
6
- #
7
- #==============================================================================
8
-
9
- ---
10
- # Loads some helpful aliases
11
- aliases: defaults.yaml
12
-
13
- # Enables qemu checkpoint
14
- checkpoint: qemu.yaml
15
-
16
- #== Global variables use by Kameleon engine and the steps
17
- global:
18
- ## User varibales : used by the recipe
19
- user_name: kameleon
20
- user_password: $$user_name
21
-
22
- # Distribution
23
- distrib: debian
24
- release: wheezy
25
- arch: amd64
26
- kernel_arch: $$arch
27
- hostname: kameleon-$$distrib
28
-
29
- ## QEMU options
30
- qemu_enable_kvm: "$(egrep '(vmx|svm)' /proc/cpuinfo > /dev/null && echo true)"
31
- qemu_cpu: 2
32
- qemu_memory_size: 768
33
- qemu_monitor_socket: $$kameleon_cwd/qemu_monitor.socket
34
- qemu_ssh_port: 55423
35
- qemu_arch: x86_64
36
- qemu_image_size: 10G
37
- qemu_image_disk: $$kameleon_cwd/base_$$kameleon_recipe_name.qcow2
38
- qemu_pidfile: $$kameleon_cwd/qemu.pid
39
-
40
- ## Kameleon iso bootstrap
41
- boot2kameleon_url: http://kameleon.imag.fr/iso/boot2debian/debian-jessie-$${qemu_arch}-insecure.iso
42
- insecure_ssh_key_url: http://kameleon.imag.fr/iso/boot2debian/keys/insecure_id_rsa
43
-
44
- # rootfs options
45
- disk_device: /dev/vda
46
- rootfs: /rootfs
47
- filesystem_type: ext4
48
-
49
- ## System variables. Required by kameleon engine
50
- # Include specific steps
51
- include_steps:
52
- - $$distrib/$$release
53
- - $$distrib
54
-
55
- # Apt options
56
- apt_repository: http://ftp.debian.org/debian/
57
- apt_enable_contrib: true
58
- apt_enable_nonfree: true
59
- apt_install_recommends: false
60
-
61
- ssh_config_file: $$kameleon_cwd/ssh_config
62
- out_context:
63
- cmd: ssh -F $$ssh_config_file $${kameleon_recipe_name} -t /bin/bash
64
- workdir: /root/kameleon_workdir
65
- proxy_cache: 10.0.2.2
66
-
67
- in_context:
68
- cmd: ssh -F $$ssh_config_file $${kameleon_recipe_name} -t /bin/bash
69
- workdir: /root/kameleon_workdir
70
- proxy_cache: 10.0.2.2
71
-
72
- #== Bootstrap the new system and create the 'in_context'
73
- bootstrap:
74
- - prepare_qemu
75
- - start_qemu
76
- - enable_checkpoint
77
- - install_requirements:
78
- - packages: parted e2fsprogs debootstrap extlinux
79
- - initialize_disk
80
- - debootstrap:
81
- - include_pkg: >
82
- apt-utils ca-certificates locales less linux-image-$$kernel_arch
83
- isc-dhcp-client ifupdown iptables iputils-ping iproute pciutils
84
- psmisc acpid acpi-support-base openssh-server sysvinit man-db
85
- net-tools
86
- - release: $$release
87
- - arch: $$arch
88
- - repository: $$apt_repository
89
- - variant: minbase
90
- - switch_context_qemu
91
-
92
- #== Install and configuration steps
93
- setup:
94
- # Install
95
- - configure_apt:
96
- - repository: $$apt_repository
97
- - enable_contrib_repo: $$apt_enable_contrib
98
- - enable_nonfree_repo: $$apt_enable_nonfree
99
- - upgrade_system:
100
- - dist_upgrade: true
101
- - install_software:
102
- - packages: >
103
- debian-keyring sudo less vim bash-completion curl less bzip2 wget
104
- dialog htop tree extlinux
105
- - install_bootloader
106
- # Configuration
107
- - configure_system:
108
- - locales: POSIX C en_US fr_FR de_DE
109
- - lang: en_US.UTF-8
110
- - timezone: UTC
111
- - configure_keyboard:
112
- - layout: "us,fr,de"
113
- - configure_network
114
- - create_group:
115
- - name: admin
116
- - create_user:
117
- - name: $$user_name
118
- - groups: sudo admin
119
- - password: $$user_password
120
-
121
- #== Export the generated appliance in the format of your choice
122
- export:
123
- - disable_checkpoint
124
- - qemu_save_appliance:
125
- - input: $$qemu_image_disk
126
- - output: $$kameleon_cwd/$$kameleon_recipe_name
127
- - save_as_qcow2
128
- # - save_as_qed
129
- # - save_as_tar_gz
130
- # - save_as_tar_xz
131
- # - save_as_tar_bz2
132
- # - save_as_raw
133
- # - save_as_vmdk
134
- # - save_as_vdi
@@ -1,24 +0,0 @@
1
- #==============================================================================
2
- # vim: softtabstop=2 shiftwidth=2 expandtab fenc=utf-8 cc=81 tw=80
3
- #==============================================================================
4
- #
5
- # DESCRIPTION: Debian 7 (Wheezy) GNOME Desktop edition (amd64).
6
- #
7
- #==============================================================================
8
-
9
- ---
10
- extend: debian7-amd64
11
-
12
- global:
13
- # Apt options
14
-
15
- bootstrap:
16
- - "@base"
17
-
18
- setup:
19
- - "@base"
20
- - install_gnome:
21
- - extra_packages: gedit gnome-documents
22
-
23
- export:
24
- - "@base"
@@ -1,40 +0,0 @@
1
- #==============================================================================
2
- # vim: softtabstop=2 shiftwidth=2 expandtab fenc=utf-8 cc=81 tw=80
3
- #==============================================================================
4
- #
5
- # DESCRIPTION: Debian 7 appliance with kameleon (amd64).
6
- #
7
- #==============================================================================
8
-
9
- ---
10
- extend: debian7-desktop-amd64
11
-
12
- global:
13
- # You can see the base template `debian7-desktop.yaml` to know the
14
- # variables that you can override
15
- arch: amd64
16
-
17
- bootstrap:
18
- - "@base"
19
-
20
- setup:
21
- - "@base"
22
- - autologin
23
- - install_software:
24
- - packages: parted qemu-system debootstrap qemu-utils
25
- - install_kameleon:
26
- - deb_install:
27
- - exec_in: wget http://kameleon.imag.fr/pkg/kameleon_2.1.0+20140612204940-1_amd64.deb -O kameleon_2.1.0_amd64.deb
28
- - exec_in: dpkg -i kameleon_2.1.0_amd64.deb
29
- - exec_in: rm -f kameleon_2.1.0_amd64.deb
30
- - prepare_export:
31
- - nullify_freespace:
32
- - exec_in: rm -rf /tmp/* || true
33
- - exec_in: rm -rf /var/tmp/* || true
34
- - exec_in: |
35
- echo "Nullify freespace..."
36
- dd if=/dev/zero of=/bigemptyfile bs=1M 2>&1 >/dev/null || true
37
- rm -f /bigemptyfile
38
-
39
- export:
40
- - "@base"
@@ -1,51 +0,0 @@
1
- #==============================================================================
2
- # vim: softtabstop=2 shiftwidth=2 expandtab fenc=utf-8 cc=81 tw=80
3
- #==============================================================================
4
- #
5
- # DESCRIPTION: Debian 7 dev appliance with OAR-2.5 (amd64).
6
- #
7
- #==============================================================================
8
-
9
- ---
10
- extend: debian7-amd64
11
-
12
- global:
13
- distrib: debian
14
- release: wheezy
15
-
16
- ## System variables. Required by kameleon engine
17
- # Include specific steps
18
- include_steps:
19
- - $$distrib/$$release
20
- - $$distrib
21
- - $$distrib/$$release/oar
22
- - $${distrib}/oar
23
- - oar
24
-
25
- ## OAR
26
- #
27
- oar_git_directory: "/home/$$user_name/oar"
28
- oar_git_repository: "git://scm.gforge.inria.fr/oar/oar.git"
29
- oar_git_treeish: "2.5"
30
- oar_prefix_install: "/usr/local"
31
-
32
- bootstrap:
33
- - "@base"
34
-
35
- setup:
36
- - "@base"
37
- - oar_prereq_install
38
- - oar_devel_prereq_install
39
- - oar_git_install
40
- - oar_debian_config_server
41
- - oar_debian_config_frontend
42
- - oar_debian_config_node
43
- - oar_config_node
44
- - oar_config_server
45
- - oar_config_frontend
46
- - oar_config_system
47
- - oar_config_devel
48
- - autologin
49
-
50
- export:
51
- - "@base"
@@ -1,25 +0,0 @@
1
- #==============================================================================
2
- # vim: softtabstop=2 shiftwidth=2 expandtab fenc=utf-8 cc=81 tw=80
3
- #==============================================================================
4
- #
5
- # DESCRIPTION: Debian 8 (Jessie) base system (amd64).
6
- #
7
- #==============================================================================
8
-
9
- ---
10
- extend: debian7-amd64
11
-
12
- global:
13
- # Distribution
14
- distrib: debian
15
- release: jessie
16
- arch: amd64
17
-
18
- bootstrap:
19
- - "@base"
20
-
21
- setup:
22
- - "@base"
23
-
24
- export:
25
- - "@base"
@@ -1,21 +0,0 @@
1
- #==============================================================================
2
- # vim: softtabstop=2 shiftwidth=2 expandtab fenc=utf-8 cc=81 tw=80
3
- #==============================================================================
4
- #
5
- # DESCRIPTION: Fedora 20 GNOME Desktop edition (x86_64).
6
- #
7
- #==============================================================================
8
-
9
- ---
10
- extend: fedora20-x86_64
11
-
12
- bootstrap:
13
- - "@base"
14
-
15
- setup:
16
- - "@base"
17
- - install_software:
18
- - packages: "@x-window-system @gnome-desktop"
19
-
20
- export:
21
- - "@base"
@@ -1,119 +0,0 @@
1
- #==============================================================================
2
- # vim: softtabstop=2 shiftwidth=2 expandtab fenc=utf-8 cc=81 tw=80
3
- #==============================================================================
4
- #
5
- # DESCRIPTION: Fedora 20 base system (x86_64).
6
- #
7
- #==============================================================================
8
-
9
- ---
10
- # Loads some helpful aliases
11
- aliases: defaults.yaml
12
- # Enables qemu checkpoint
13
- checkpoint: qemu.yaml
14
- #== Global variables use by Kameleon engine and the steps
15
- global:
16
- ## User varibales : used by the recipe
17
- user_name: kameleon
18
- user_password: $$user_name
19
-
20
- # Distribution
21
- distrib: fedora
22
- release: 20
23
- arch: x86_64
24
- hostname: kameleon-$$distrib
25
-
26
- ## QEMU options
27
- qemu_enable_kvm: "$(egrep '(vmx|svm)' /proc/cpuinfo > /dev/null && echo true)"
28
- qemu_cpu: 2
29
- qemu_memory_size: 768
30
- qemu_monitor_socket: $$kameleon_cwd/qemu_monitor.socket
31
- qemu_ssh_port: 55423
32
- qemu_arch: x86_64
33
- qemu_image_size: 10G
34
- qemu_image_disk: $$kameleon_cwd/base_$$kameleon_recipe_name.qcow2
35
- qemu_pidfile: $$kameleon_cwd/qemu.pid
36
-
37
- ## Kameleon iso bootstrap
38
- boot2kameleon_url: http://kameleon.imag.fr/iso/boot2debian/debian-jessie-$${qemu_arch}-insecure.iso
39
- insecure_ssh_key_url: http://kameleon.imag.fr/iso/boot2debian/keys/insecure_id_rsa
40
-
41
- # rootfs options
42
- disk_device: /dev/vda
43
- rootfs: /rootfs
44
- filesystem_type: ext4
45
-
46
- ## System variables. Required by kameleon engine
47
- # Include specific steps
48
- include_steps:
49
- - $$distrib/$$release
50
- - $$distrib
51
-
52
- # SELinux configuration
53
- selinux: permissive ## Can take one of these three values: enforcing, permissive or disabled
54
- selinuxtype: targeted # Possible values are: strict, targeted
55
-
56
- ssh_config_file: $$kameleon_cwd/ssh_config
57
- out_context:
58
- cmd: ssh -F $$ssh_config_file $${kameleon_recipe_name} -t /bin/bash
59
- workdir: /root/kameleon_workdir
60
- proxy_cache: 10.0.2.2
61
-
62
- in_context:
63
- cmd: ssh -F $$ssh_config_file $${kameleon_recipe_name} -t /bin/bash
64
- workdir: /root/kameleon_workdir
65
- proxy_cache: 10.0.2.2
66
-
67
- #== Bootstrap the new system and create the 'in_context'
68
- bootstrap:
69
- - enable_checkpoint
70
- - prepare_qemu
71
- - start_qemu
72
- - install_requirements:
73
- - packages: parted e2fsprogs yum rpm lynx extlinux
74
- - initialize_disk
75
- - yum_bootstrap:
76
- - mirror_packages_url: http://mirrors.kernel.org/fedora/releases/$$release/Fedora/$$arch/os/Packages/f/
77
- - include_pkgs: >
78
- findutils yum util-linux dhclient vim-minimal net-tools NetworkManager
79
- openssh-server
80
- - init_pxeboot:
81
- - pxe_initrd_url: http://mirrors.kernel.org/fedora/releases/$$release/Fedora/$$arch/os/images/pxeboot/initrd.img
82
- - pxe_vmlinuz_url: http://mirrors.kernel.org/fedora/releases/$$release/Fedora/$$arch/os/images/pxeboot/vmlinuz
83
- - switch_context_qemu
84
-
85
- #== Install and configuration steps
86
- setup:
87
- - configure_kernel
88
- - update_system
89
- - minimal_install
90
- - install_software:
91
- - packages: >
92
- kernel bash-completion kbd sudo openssh-clients syslinux-extlinux acpid
93
- ntp ntpdate
94
- - install_bootloader
95
- - configure_system:
96
- - locales: POSIX C en_US fr_FR de_DE
97
- - lang: en_US.UTF-8
98
- - timezone: UTC
99
- - configure_keyboard:
100
- - layout: "us"
101
- - configure_network:
102
- - hostname: kameleon-$$distrib
103
- - create_user:
104
- - name: $$user_name
105
- - groups: wheel
106
- - password: $$user_password
107
-
108
- #== Export the generated appliance in the format of your choice
109
- export:
110
- - disable_checkpoint
111
- - qemu_save_appliance:
112
- - input: $$qemu_image_disk
113
- - output: $$kameleon_cwd/$$kameleon_recipe_name
114
- - save_as_qcow2
115
- # - save_as_qed
116
- # - save_as_tgz
117
- # - save_as_raw
118
- # - save_as_vmdk
119
- # - save_as_vdi