Commit Graph
36 Commits
Author SHA1 Message Date
JMR-dev d679049aca UID fix for tests 2026-06-11 11:40:11 -05:00
JMR-dev 1a3f4f2e44 unit test fix to mock successful package install return codes 2026-06-11 11:36:26 -05:00
JMR-dev 476607e108 add ubuntu to test matrix for local ai and test fixes 2026-06-11 11:27:14 -05:00
JMR-dev d19d7efefc fixed install behavior and added local ai configuration pathway 2026-06-11 11:17:56 -05:00
JMR-dev 79615dd529 ensure zsh is installed first 2026-06-11 08:19:31 -05:00
JMR-dev 24a50e73dd adding mdts 2026-06-04 18:02:43 -05:00
JMR-dev befcadd260 adding aria2 for faster downloads 2026-06-04 17:10:57 -05:00
JMR-dev a5726a7a60 add auto save extension to LibreOffice 2026-06-01 11:09:38 -05:00
JMR-dev 206b4cb999 fixed unit tests 2026-05-30 17:19:10 -05:00
JMR-dev 83c929c24b test and logic fixes 2026-05-30 17:08:14 -05:00
JMR-dev 430b018aa9 fixes for bashtop removal 2026-05-29 18:09:30 -05:00
JMR-dev c4f7f6d240 package changes 2026-05-29 17:59:11 -05:00
JMR-dev 031bc618ec update GHA workflows 2026-05-27 17:59:07 -05:00
JMR-dev 8f7e592c72 fixed MacOS parallelism 2026-05-27 17:43:00 -05:00
JMR-dev de9d41494b fixing test coverage 2026-05-27 17:26:53 -05:00
JMR-dev 165f9dbe4f parallelized installs 2026-05-27 15:26:34 -05:00
JMR-dev ad84585f72 updated readme 2026-05-26 15:28:01 -05:00
JMR-devandCopilot 60fd4846af Fix pnpm PATH: use /bin subdir and single-quote bash -c
Two bugs in pnpmEnvPrefix:
1. pnpm setup configures global-bin-dir as $PNPM_HOME/bin, not
   $PNPM_HOME. We were only prepending $PNPM_HOME to PATH, so pnpm
   still complained 'configured global bin directory ... is not in
   PATH' and refused to install.
2. The bash -c command was wrapped in double quotes, which caused the
   OUTER sh to expand $PNPM_HOME, $PATH, $HOME before bash ever
   saw them. PNPM_HOME was empty in the outer shell, so the resulting
   PATH was ':$PATH'.

Fix: wrap bash -c argument in single quotes so the inner bash does
all variable expansion; prepend both $PNPM_HOME/bin and $PNPM_HOME
to PATH for safety.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 15:09:04 -05:00
JMR-devandCopilot de7f71fea6 Suppress intentional errLog output during tests
Tests that exercise error paths in errLog/warn were causing
GitHub Actions to annotate test output with 'Error: R] ...'
(GHA eats '[ERRO' from '[ERROR]' lines and surfaces the rest as
workflow errors), making real failures hard to distinguish from
expected behavior.

- issues.go: route logIssue output through issueLogWriter (io.Writer,
  defaults to os.Stdout). errorCount/issues/notices recording is
  unchanged so tests still assert via errorCount.
- testmain_test.go: TestMain sets issueLogWriter = io.Discard for
  the whole test binary.
- issues_test.go: TestIssuesLogging temporarily redirects
  issueLogWriter to a bytes.Buffer (replacing os.Pipe stdout
  capture).

go test -v ./... now contains zero stray '[ERROR]' lines; real
test failures remain visible and 'go test' still exits non-zero
on failure, failing the workflow.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 14:55:51 -05:00
JMR-devandCopilot aab9db9545 Show per-test output in unit test workflow
Add -v flag to 'go test' so each TestXxx line is printed in CI logs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 14:47:47 -05:00
JMR-devandCopilot e14347fd31 Fix CI: pnpm PATH, Obsidian arch matcher, Arch pkg names, Fedora lazygit COPR
- post.go: export PNPM_HOME+PATH before pnpm add -g so global bins
  install correctly in the non-interactive shell. Applied to
  installNpmPackage and installPlaywright (incl. browser install).
- system.go: treat token-less Obsidian AppImage as x86_64 (upstream
  publishes "Obsidian-X.Y.Z.AppImage" with no arch suffix).
- pkgmgr.go: docker-ce-rootless-extras and vagrant are AUR-only on
  Arch → skipOverride; pipx → python-pipx on pacman.
- repos.go: new setupLazygitCoprRepo enables copr.fedorainfracloud.org/
  dejan/lazygit on Fedora; wired into repoGroups so lazygit installs.
- Tests: PNPM_HOME export (Linux+macOS), token-less Obsidian asset,
  pacman pkg overrides, COPR repo setup, updated repoGroups count.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 14:43:44 -05:00
JMR-dev 41a6f74ce1 add fixes to integration tests 2026-05-26 14:17:04 -05:00
JMR-dev abcb973208 add unit tests to ci 2026-05-26 13:53:09 -05:00
JMR-devandCopilot 76a44c0999 Add --gui flag to integration tests to exercise GUI package install
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 13:48:42 -05:00
JMR-devandCopilot 3e27e54318 Run full bootstrap in integration tests; fix pnpm setup shell detection
- Integration tests now run the full bootstrap (system + flatpak + custom +
  AI + VM packages) instead of '--only custom --no-vm --no-ai', so that
  custom-package prerequisites (zsh, gh, etc.) installed via SystemPackages
  are actually available.
- Fix 'pnpm setup' failing with ERR_PNPM_UNKNOWN_SHELL in CI containers
  by exporting SHELL=/bin/bash before invoking it.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 13:47:32 -05:00
JMR-dev ad2976842f Fix integration tests 2026-05-26 13:38:52 -05:00
JMR-devandCopilot c3ddcb336a Forward GITHUB_TOKEN into Linux Dagger containers for API auth
Add env: GITHUB_TOKEN to the Linux workflow step, then read it in
ci/main.go and inject it into each test container via WithSecretVariable
(for both GITHUB_TOKEN and GH_TOKEN). This prevents 403 rate-limit
errors on GitHub API calls (neovim/nvm releases) and authenticates
gh CLI for gh extension install inside the containers.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 13:37:48 -05:00
JMR-devandCopilot a2f36665a3 Pass GITHUB_TOKEN to macOS CI step to fix 403 rate-limit errors
Unauthenticated GitHub API calls share the runner IP (60 req/hour limit).
net.go already uses GITHUB_TOKEN as a Bearer token when present.
gh CLI also needs GH_TOKEN to authenticate for gh extension install.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 13:36:22 -05:00
JMR-devandCopilot 9093aedb66 Exit non-zero when any errors are logged during bootstrap run
Track error count in issues.go alongside the existing issues slice.
Add hasErrors() helper. In main.go, call osExit(1) after writeRunLog()
if any [ERROR] entries were recorded, so CI steps correctly fail when
errors occur (e.g. GitHub API 403 rate-limit hits in the macOS job).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 13:35:05 -05:00
JMR-dev 4d99bba06f added repo bootstrap tool 2026-05-26 13:21:31 -05:00
JMR-dev 669565bb87 added unit testing 2026-05-26 09:36:05 -05:00
JMR-dev 8f11c8d68b updates to add AI packages and an opt out of AI flag 2026-05-25 12:07:14 -05:00
JMR-dev 14bf9f3e56 Workflow fix to git sha 2026-05-23 17:57:50 -05:00
JMR-dev 418d794320 add gitignore 2026-05-17 11:21:01 -05:00
JMR-dev f1c324c139 refinements 2026-05-17 10:49:03 -05:00
JMR-dev 4d8d33c6ed initial commit 2026-05-15 22:10:21 -05:00