Skip to content

Commit a2a3c2b

Browse files
committed
refactor(config): inline services and revert shims
Services and revert only contained status writes, one phase call, and a file-level gate. Move the gates onto the custom.yml actions so AME still evaluates onUpgrade per action while preserving install order. atlas/ now contains only AME-only configuration: start for the NO LOCAL BUILD block, components for the iso-only hive delete, appx for !appx removals, and default for the DEFAULT.reg import.
1 parent f481b5f commit a2a3c2b

6 files changed

Lines changed: 32 additions & 39 deletions

File tree

.github/labeler.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ components:
1717
- playbook/Configuration/atlas/components.yml
1818

1919
services:
20-
- playbook/Configuration/atlas/services.yml
20+
- playbook/Executables/AtlasModules/Scripts/Phases/Invoke-ServicesPhase.ps1
21+
- playbook/Executables/AtlasModules/Scripts/Modules/Atlas.Services/**/*
2122

2223
tweaks:
2324
- playbook/Configuration/tweaks.yml

docs/architecture.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ This document describes how the repository is laid out and how an install runs.
1212
│ ├─ Configuration/ The YAML shim (thin; orchestration only)
1313
│ │ ├─ custom.yml Entry point: hive lifecycle + phase calls
1414
│ │ ├─ tweaks.yml Per-category Tweaks phase calls (every tweak is PowerShell)
15-
│ │ └─ atlas/ start / services / components / appx / default / revert
15+
│ │ └─ atlas/ start / components / appx / default (AME-only actions)
1616
│ └─ Executables/ Payload deployed to C:\Windows (AtlasModules, AtlasDesktop, Themes)
1717
│ └─ AtlasModules/Scripts/
1818
│ ├─ Invoke-AtlasInstall.ps1 Install orchestrator (one call per phase)

playbook/Configuration/atlas/revert.yml

Lines changed: 0 additions & 13 deletions
This file was deleted.

playbook/Configuration/atlas/services.yml

Lines changed: 0 additions & 20 deletions
This file was deleted.

playbook/Configuration/custom.yml

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,36 @@ actions:
101101

102102
# Main tasks
103103
- !task: { path: 'atlas\start.yml' }
104-
- !task: { path: 'atlas\services.yml' }
104+
105+
# Services phase (AtlasModules\Scripts\Phases\Invoke-ServicesPhase.ps1): services
106+
# backup, file sharing/location/indexing configuration and the service startup list.
107+
# Fresh installs only; runs as TrustedInstaller.
108+
- !writeStatus: {status: 'Disabling File Sharing', onUpgrade: false}
109+
- !writeStatus: {status: 'Disabling Location', onUpgrade: false}
110+
- !writeStatus: {status: 'Configuring Indexing', onUpgrade: false}
111+
- !writeStatus: {status: 'Configuring services', onUpgrade: false}
112+
- !writeStatus: {status: 'Configuring drivers', onUpgrade: false}
113+
- !powerShell:
114+
command: '& (Join-Path ([Environment]::GetFolderPath(''Windows'')) ''AtlasModules\Scripts\Invoke-AtlasInstall.ps1'') -Phase Services'
115+
wait: true
116+
weight: 15
117+
onUpgrade: false
118+
handleExitCodes: { "!0": halt }
119+
105120
- !task: { path: 'atlas\components.yml' }
106121
- !task: { path: 'atlas\appx.yml' }
107122
- !task: { path: 'atlas\default.yml' }
108-
- !task: { path: 'atlas\revert.yml' }
123+
124+
# Revert phase (AtlasModules\Scripts\Phases\Invoke-RevertPhase.ps1): StoreFixer undoes
125+
# Store breakage left by older Atlas versions. Upgrades only; runs as TrustedInstaller.
126+
- !writeStatus: { status: "Reverting old changes", onUpgrade: true }
127+
- !powerShell:
128+
command: '& (Join-Path ([Environment]::GetFolderPath(''Windows'')) ''AtlasModules\Scripts\Invoke-AtlasInstall.ps1'') -Phase Revert'
129+
weight: 2
130+
wait: true
131+
onUpgrade: true
132+
handleExitCodes: { "!0": halt }
133+
109134
- !task: { path: "tweaks.yml" }
110135

111136
# Branding for upgrades (fresh installs get it via the misc tweak category)

playbook/Executables/AtlasModules/Scripts/Phases/Invoke-ServicesPhase.ps1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Services phase.
22
# Backs up the default Windows services, applies the scripted network/search
3-
# configuration and disables the curated set of services/drivers. atlas\services.yml
4-
# gates this phase (onUpgrade: false) and runs it as TrustedInstaller.
3+
# configuration and disables the curated set of services/drivers. custom.yml gates
4+
# this phase (onUpgrade: false) and runs it as TrustedInstaller.
55
#
66
# ----------------------------------
77
# - Potential references -

0 commit comments

Comments
 (0)