kameleon-builder 2.2.5 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
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