The GitHub Action NetOfficeFw/setup-powerpoint@27d9999fbb8827063ed9536a6416cc56e3b73232 fails during the step Dismiss Microsoft PowerPoint First Run Dialogs with:
Error: The process '/bin/bash' failed with exit code 1
This error is misleading at the workflow level. The installer and modal-dismiss logic both succeed; the failure is caused by a race condition while quitting PowerPoint under set -e.
Observed Behavior
- PowerPoint package downloads and installs successfully.
- Version is read successfully (
16.103.4, build 25120717).
- Policy scripts run.
- Accessibility permission is granted.
- PowerPoint launches.
- All three first-run privacy screens are successfully dismissed:
✓ Successfully completed first screen (pressed Return)
✓ Successfully completed second screen (clicked radio + double Return)
✓ Successfully completed third screen (pressed Return)
- Script prints
Closing Microsoft PowerPoint...
- Step immediately ends with
The process '/bin/bash' failed with exit code 1.
Root Cause
The failure originates in scripts/dismiss_privacy_modal.sh.
Relevant code flow:
set -e is enabled at scripts/dismiss_privacy_modal.sh:7.
- After third-screen success, the script runs:
close_microsoft_powerpoint_app
exit 0
(scripts/dismiss_privacy_modal.sh:143 and scripts/dismiss_privacy_modal.sh:144)
close_microsoft_powerpoint_app executes osascript to quit PowerPoint (scripts/dismiss_privacy_modal.sh:14).
Because set -e is active, any non-zero exit status from that osascript command aborts the script before exit 0 is reached.
This creates a race-condition failure mode:
- The modal automation already succeeded.
- PowerPoint may already be closing/not in an AppleScript-accepting state.
osascript can return non-zero.
set -e converts this into hard step failure.
Why this is a bug
- The step intent is to dismiss first-run dialogs and continue test setup.
- Core objective succeeds (all dialogs dismissed), but cleanup/quit is treated as fatal.
- This creates false-negative workflow failures with a generic and hard-to-diagnose wrapper message.
Impact
- Misleading diagnostics (
/bin/bash exit 1) hide the actual issue.
Proposed Fix
Make PowerPoint shutdown best-effort and non-fatal.
Suggested approaches:
- Guard
osascript in close_microsoft_powerpoint_app:
- Or temporarily disable
set -e around the quit command.
- Emit an explicit warning if quit fails, but do not fail the step.
The GitHub Action
NetOfficeFw/setup-powerpoint@27d9999fbb8827063ed9536a6416cc56e3b73232fails during the step Dismiss Microsoft PowerPoint First Run Dialogs with:Error: The process '/bin/bash' failed with exit code 1This error is misleading at the workflow level. The installer and modal-dismiss logic both succeed; the failure is caused by a race condition while quitting PowerPoint under
set -e.Observed Behavior
16.103.4, build25120717).✓ Successfully completed first screen (pressed Return)✓ Successfully completed second screen (clicked radio + double Return)✓ Successfully completed third screen (pressed Return)Closing Microsoft PowerPoint...The process '/bin/bash' failed with exit code 1.Root Cause
The failure originates in
scripts/dismiss_privacy_modal.sh.Relevant code flow:
set -eis enabled atscripts/dismiss_privacy_modal.sh:7.close_microsoft_powerpoint_appexit 0(
scripts/dismiss_privacy_modal.sh:143andscripts/dismiss_privacy_modal.sh:144)close_microsoft_powerpoint_appexecutesosascriptto quit PowerPoint (scripts/dismiss_privacy_modal.sh:14).Because
set -eis active, any non-zero exit status from thatosascriptcommand aborts the script beforeexit 0is reached.This creates a race-condition failure mode:
osascriptcan return non-zero.set -econverts this into hard step failure.Why this is a bug
Impact
/bin/bash exit 1) hide the actual issue.Proposed Fix
Make PowerPoint shutdown best-effort and non-fatal.
Suggested approaches:
osascriptinclose_microsoft_powerpoint_app:osascript ... || trueset -earound the quit command.