Grub2 and UEFI problem

Problem:
Hi,

I’d like to provision my server in UEFI mode so I associated the template “Kickstart default PXEGrub2” with my OS and I selected “Grub2 UEFI” as PXE loader in my host group but it does’nt work.
I’m using the discovery plugin and the Discovery image is correctly loaded in UEFI mode. When I click on
“Provision” button, some actions are made on my smartproxy (dhcp configuration, image download … like you could show in the log below) but not all : I 've no " grub.cfg-XX-XX-XX-XX-XX-XX-XX" file in my “/var/lib/tftpboot/grub2” directory.
I think that is my problem because it work if I manually create this file with for content the result of preview for my server in the provisionning template section.

I’ve no problem with “PXE Linux BIOS” as “PXE Loader”. A file (like 01-XX-XX-XX-XX-XX-XX-XX-XX) is created into “/var/lib/tftpboot/pxelinux.cfg” directory and used in boot process.

Have you an idea please ?
Thank you

Foreman and Proxy versions:
1.20.1

Foreman and Proxy plugin versions:
foreman-tasks 0.14.3
foreman_ansible 2.2.11
foreman_discovery 14.0.1
foreman_remote_execution 1.6.7

Other relevant data:
There is the logs from my smart proxy

2019-03-11T11:13:42  [D] accept: xxx.xxx.xxx.xxx:55604
2019-03-11T11:13:42  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:42 b5c17785 [I] Started GET /serverName 
2019-03-11T11:13:42 b5c17785 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:42 b5c17785 [I] Finished GET /serverName with 200 (1.11 ms)
2019-03-11T11:13:42  [D] close: xxx.xxx.xxx.xxx:55604
2019-03-11T11:13:42  [D] accept: xxx.xxx.xxx.xxx:55606
2019-03-11T11:13:42  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:42 b5c17785 [I] Started GET /zzz.zzz.zzz.zzz/mac/00:00:00:00:00:00 
2019-03-11T11:13:42 b5c17785 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:42 b5c17785 [I] Finished GET /zzz.zzz.zzz.zzz/mac/00:00:00:00:00:00 with 200 (1.73 ms)
2019-03-11T11:13:42  [D] close: xxx.xxx.xxx.xxx:55606
2019-03-11T11:13:43  [D] accept: xxx.xxx.xxx.xxx:55608
2019-03-11T11:13:43  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:43 b5c17785 [I] Started GET /zzz.zzz.zzz.zzz/ip/10.xxx.xxx.xxx 
2019-03-11T11:13:43 b5c17785 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:43 b5c17785 [I] Finished GET /zzz.zzz.zzz.zzz/ip/10.xxx.xxx.xxx with 200 (1.53 ms)
2019-03-11T11:13:43  [D] close: xxx.xxx.xxx.xxx:55608
2019-03-11T11:13:43  [D] accept: xxx.xxx.xxx.xxx:55610
2019-03-11T11:13:43  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:43 b5c17785 [I] Started POST /zzz.zzz.zzz.zzz 
2019-03-11T11:13:43 b5c17785 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:43 b5c17785 [D] omshell: executed - set name = "mac000000000000.bar.fr"
2019-03-11T11:13:43 b5c17785 [D] <NilClass> nil
2019-03-11T11:13:43 b5c17785 [D] omshell: executed - set ip-address = 10.xxx.xxx.xxx
2019-03-11T11:13:43 b5c17785 [D] <NilClass> nil
2019-03-11T11:13:43 b5c17785 [D] omshell: executed - set hardware-address = 00:00:00:00:00:00
2019-03-11T11:13:43 b5c17785 [D] <NilClass> nil
2019-03-11T11:13:43 b5c17785 [D] omshell: executed - set hardware-type = 1
2019-03-11T11:13:43 b5c17785 [D] <NilClass> nil
2019-03-11T11:13:43 b5c17785 [D] omshell: executed - set statements = "filename = \"grub2/shimx64.efi\"; next-server = 0a:83:15:03; option host-name = \"mac000000000000.bar.fr\";"
2019-03-11T11:13:43 b5c17785 [D] <NilClass> nil
2019-03-11T11:13:43 b5c17785 [D] omshell: executed - create
2019-03-11T11:13:43 b5c17785 [D] <NilClass> nil
2019-03-11T11:13:43  [D] caught :modify event on /var/lib/dhcpd/dhcpd.leases.
2019-03-11T11:13:43  [D] Added a reservation: 10.xxx.xxx.xxx:00:00:00:00:00:00:mac000000000000.bar.fr
2019-03-11T11:13:43 b5c17785 [D] Added DHCP reservation for mac000000000000.bar.fr (10.xxx.xxx.xxx / 00:00:00:00:00:00)
2019-03-11T11:13:43 b5c17785 [I] Finished POST /zzz.zzz.zzz.zzz with 200 (46.36 ms)
2019-03-11T11:13:43  [D] close: xxx.xxx.xxx.xxx:55610
2019-03-11T11:13:43  [D] accept: xxx.xxx.xxx.xxx:55612
2019-03-11T11:13:43  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:43 b5c17785 [I] Started POST / 
2019-03-11T11:13:43 b5c17785 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:43 b5c17785 [D] running /usr/bin/nsupdate -k /etc/rndc.key 
2019-03-11T11:13:43 b5c17785 [D] nsupdate: executed - server 127.0.0.1
2019-03-11T11:13:43 b5c17785 [D] nsupdate: executed - update add 113.21.131.10.in-addr.arpa. 86400 PTR mac000000000000.bar.fr
2019-03-11T11:13:43 b5c17785 [I] Finished POST / with 200 (59.38 ms)
2019-03-11T11:13:43  [D] close: xxx.xxx.xxx.xxx:55612
2019-03-11T11:13:43  [D] accept: xxx.xxx.xxx.xxx:55614
2019-03-11T11:13:43  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:43 b5c17785 [I] Started GET /templateServer 
2019-03-11T11:13:43 b5c17785 [I] Finished GET /templateServer with 200 (0.81 ms)
2019-03-11T11:13:44  [D] close: xxx.xxx.xxx.xxx:55614
2019-03-11T11:13:44  [D] accept: xxx.xxx.xxx.xxx:55616
2019-03-11T11:13:44  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:44 b5c17785 [I] Started POST /PXELinux/00:00:00:00:00:00 
2019-03-11T11:13:44 b5c17785 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:44 b5c17785 [D] TFTP: /var/lib/tftpboot/pxelinux.cfg/01-02-03-56-a1-a2-a3 created successfully
2019-03-11T11:13:44 b5c17785 [I] Finished POST /PXELinux/00:00:00:00:00:00 with 200 (2.71 ms)
2019-03-11T11:13:44  [D] close: xxx.xxx.xxx.xxx:55616
2019-03-11T11:13:44  [D] accept: xxx.xxx.xxx.xxx:55618
2019-03-11T11:13:44  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:44 b5c17785 [I] Started POST /fetch_boot_file 
2019-03-11T11:13:44 b5c17785 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:44 b5c17785 [D] Starting task: /usr/bin/wget --connect-timeout=10 --dns-timeout=10 --read-timeout=60 --tries=3 --no-check-certificate -nv -c "http://myrepo.fr/mirror/redhat7.6/images/pxeboot/vmlinuz" -O "/var/lib/tftpboot/boot/redhat-7-6-mirror-vxxLL2-hM1-vmlinuz"
2019-03-11T11:13:44 b5c17785 [I] Finished POST /fetch_boot_file with 200 (11.07 ms)
2019-03-11T11:13:44  [D] close: xxx.xxx.xxx.xxx:55618
2019-03-11T11:13:44  [D] accept: xxx.xxx.xxx.xxx:55620
2019-03-11T11:13:44  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:44 b5c17785 [I] Started POST /fetch_boot_file 
2019-03-11T11:13:44 b5c17785 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:44 b5c17785 [D] Starting task: /usr/bin/wget --connect-timeout=10 --dns-timeout=10 --read-timeout=60 --tries=3 --no-check-certificate -nv -c "http://myrepo.fr/mirror/redhat7.6/images/pxeboot/initrd.img" -O "/var/lib/tftpboot/boot/redhat-7-6-mirror-vxxLL2-hM1-initrd.img"
2019-03-11T11:13:44 b5c17785 [I] Finished POST /fetch_boot_file with 200 (10.09 ms)
2019-03-11T11:13:44  [D] close: xxx.xxx.xxx.xxx:55620
2019-03-11T11:13:44  [D] accept: xxx.xxx.xxx.xxx:55622
2019-03-11T11:13:44  [D] Rack::Handler::WEBrick is invoked.
2019-03-11T11:13:44 9d353aa6 [I] Started PUT /10.xxx.xxx.xxx/power/reboot 
2019-03-11T11:13:44 9d353aa6 [D] verifying remote client xxx.xxx.xxx.xxx against trusted_hosts ["foo.bar.fr", "foo.bar.fr"]
2019-03-11T11:13:44 9d353aa6 [I] Finished PUT /10.xxx.xxx.xxx/power/reboot with 200 (74.33 ms)
2019-03-11T11:13:44  [D] close: xxx.xxx.xxx.xxx:55622

Hello, enable debug, restart httpd and try again, paste(bin) the production.log bit relevant section when things gets orchestrated. All three template kinds should be deployed.

Hi,

I found the problem : it’s the langage setting of the user who provision the server.
I’m french and this parameter is “browser local” by default. (I m using default template so I don’t put any special char inside)
If I replace it by “English (United States)” I’ve no problems. All files are generated and installation start !

Bye