diff --git a/playbook/pxe_server_setup.yml b/playbook/pxe_server_setup.yml index 71200c6..1b3bc77 100644 --- a/playbook/pxe_server_setup.yml +++ b/playbook/pxe_server_setup.yml @@ -44,6 +44,14 @@ - ge-shopfloor-mce shopfloor_types: - gea-shopfloor + # Image variants that share the generic Win10/Win11 unattend + # (gea-standard is now Win11, gea-engineer is Win10 — same unattend file + # drives both because the RunSynchronous entries are OS-version-agnostic). + standard_types: + - gea-standard + - gea-engineer + - ge-standard + - ge-engineer deploy_subdirs: - Applications - Control @@ -421,6 +429,36 @@ mode: '0644' ignore_errors: yes + # Oracle Client 11.2 is the first app the preinstall runner executes, so it + # has to be present on-disk before the first client images. The 686 MB + # Oracle_OracleDatabase_11r2_V03.zip doesn't belong in git; it rides on the + # USB under oracle/ alongside the BIOS exes. Install-Oracle11r2.cmd is + # tracked at playbook/preinstall/oracle/ and arrives via usb_mount. + - name: "Create pre-install/installers/oracle/ staging dir" + file: + path: /srv/samba/enrollment/pre-install/installers/oracle + state: directory + mode: '0755' + ignore_errors: yes + + - name: "Deploy Install-Oracle11r2.cmd to pre-install/installers/oracle/" + copy: + src: "{{ usb_mount }}/preinstall/oracle/Install-Oracle11r2.cmd" + dest: /srv/samba/enrollment/pre-install/installers/oracle/Install-Oracle11r2.cmd + mode: '0755' + ignore_errors: yes + + - name: "Deploy Oracle 11.2 zip (686 MB) from USB to pre-install/installers/oracle/" + shell: > + if [ -f "{{ usb_root }}/oracle/Oracle_OracleDatabase_11r2_V03.zip" ]; then + cp -f "{{ usb_root }}/oracle/Oracle_OracleDatabase_11r2_V03.zip" \ + /srv/samba/enrollment/pre-install/installers/oracle/ + echo "Deployed Oracle 11.2 zip ($(stat -c %s /srv/samba/enrollment/pre-install/installers/oracle/Oracle_OracleDatabase_11r2_V03.zip) bytes)" + else + echo "WARNING: {{ usb_root }}/oracle/Oracle_OracleDatabase_11r2_V03.zip not on USB - preinstall runner will fail on Oracle step until this file is staged at /srv/samba/enrollment/pre-install/installers/oracle/" + fi + ignore_errors: yes + - name: "Deploy BIOS check script and manifest to pre-install/bios/" copy: src: "{{ usb_mount }}/shopfloor-setup/BIOS/{{ item }}" @@ -590,6 +628,19 @@ loop: "{{ shopfloor_types }}" ignore_errors: yes + # gea-standard (Win11) + gea-engineer (Win10) + ge-standard/engineer all use + # the same unattend. force: yes because drift between this file and the + # shared copies is what caused the Win10/Win11 search-cleanup regression + # earlier this session (d49f516) — prefer repo as source of truth. + - name: "Deploy standard/engineer unattend.xml" + copy: + src: "{{ usb_mount }}/FlatUnattendW10.xml" + dest: "{{ samba_share }}/{{ item }}/Deploy/FlatUnattendW10.xml" + mode: '0644' + force: yes + loop: "{{ standard_types }}" + ignore_errors: yes + - name: "Daily cron to create/refresh Media.tag for all images" copy: content: |