feat: install and register csa-skilljar alongside csa-google-workspace - #46
Merged
Conversation
csa-skilljar 0.8.0 went to PyPI today, so DesktopSetup can install it the way it installs Google Workspace. The setup script itself lives in the gated CSA-Plugins repo (merged as #53); this is the wiring. The three bash scripts and the PowerShell one each fetched exactly one internal setup script by name. Rather than copy the block, they now iterate a list, so a third server is one line rather than four edited functions. The loop uses `continue` where the old code used `return`, and that is the substantive change rather than a tidy-up. With a single fetch, a script that was absent - not merged yet, or renamed - just ended the function. With two, that same absence would have silently disabled every server listed after it. This was not hypothetical: the first end-to-end run happened before CSA-Plugins#53 merged, Google installed, Skilljar was skipped, and the loop completed cleanly. That is the behaviour being preserved deliberately. macos-ai-tools.sh's plan preview announces Skilljar too. The Google line was added because a plan that omits a step leaves the reader unable to tell whether their server was touched, and the same reasoning applies here. Windows lists csa-skilljar-setup.ps1, which does NOT exist yet - only the .sh does. That is deliberate: the skip is correct behaviour, and Windows picks Skilljar up automatically the day the .ps1 lands, with no change here. TODO.md records the gap, because a skip that is correct looks identical to a skip that is a bug. Tested for real on macOS: fresh install 0.0.1 -> 0.8.0, registration connected with CSA_SKILLJAR_PROFILE=parity, idempotent re-run, and both setups running in sequence from the gate repo. shellcheck finding counts unchanged on all three bash scripts (15/1/3 before and after); the PowerShell file parses.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
csa-skilljar 0.8.0went to PyPI today, so DesktopSetup can install it the way it installs Google Workspace. The setup script itself lives in the gated CSA-Plugins repo (#53, merged); this is the wiring.One list instead of four copied blocks
The three bash scripts and the PowerShell one each fetched exactly one internal setup script by name. They now iterate a list, so a third server is one line rather than four edited functions.
continue, notreturn— the substantive changeWith a single fetch, a script that was absent — not merged yet, or renamed — just ended the function. With two, that same absence would have silently disabled every server listed after it.
Not hypothetical. The first end-to-end run happened before CSA-Plugins#53 merged:
Then after merging:
Windows is listed but not yet shipped
windows-ai-tools.ps1listscsa-skilljar-setup.ps1, which does not exist — only the.shdoes. Deliberate: the skip is correct behaviour, and Windows picks Skilljar up automatically the day the.ps1lands, with no change here.TODO.mdrecords the gap, because a skip that is correct looks identical to a skip that is a bug — and this one would otherwise stay quiet indefinitely.Preview announces it
macos-ai-tools.sh's plan gains a Skilljar line. The Google line was added because a plan that omits a step leaves the reader unable to tell whether their server was touched; same reasoning.Tested for real on macOS
Status: ✔ Connected,CSA_SKILLJAR_PROFILE=parity(read-only)Note on what gets installed
No Skilljar credential is distributed. Unlike the Google OAuth client — which identifies the app while each person's browser login identifies them — Skilljar's
client_credentialsmeans the credential is the identity. The setup script installs the code and registers with the read-onlyparityprofile; without a credential the server still starts and every tool reports its setup step. Full reasoning is in CSA-Plugins#53.