Skip to content

Test APK installation in CI - #83

Open
heymaikol wants to merge 1 commit into
mainfrom
apk-install-smoke
Open

Test APK installation in CI#83
heymaikol wants to merge 1 commit into
mainfrom
apk-install-smoke

Conversation

@heymaikol

@heymaikol heymaikol commented Sep 10, 2026

Copy link
Copy Markdown
Owner

Summary

  • install the GoReleaser APK in a clean Alpine container
  • verify apk records network-doctor as installed
  • verify both netdoc and netdoc-sim are installed at /usr/bin
  • run both installed executables
  • disable container networking so missing package dependencies cannot be fetched

Validation

  • ./scripts/check
  • GoReleaser snapshot build
  • clean Alpine installation using the generated amd64 APK
  • apk info -e network-doctor
  • netdoc --version
  • netdoc-sim version

Closes #42

Summary by CodeRabbit

  • Tests
    • Added automated validation for Linux amd64 package installation in a clean, network-isolated Alpine environment.
    • Confirmed the package registers correctly, installs both command-line tools in the expected locations, and that each tool launches successfully.
    • Added checks to ensure the package is self-contained and does not rely on pre-existing installations.

@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 5c7c03de-a2ba-4a75-ada9-aa09f8631662

📥 Commits

Reviewing files that changed from the base of the PR and between 3462d4c and 6733547.

📒 Files selected for processing (1)
  • .github/workflows/ci.yml

Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review.


📝 Walkthrough

Walkthrough

Changes

APK installation validation

Layer / File(s) Summary
Clean Alpine APK smoke test
.github/workflows/ci.yml
The lint job installs the generated Linux amd64 APK in a pinned Alpine 3.24.1 container with no network access. It verifies package registration, binary placement, and successful execution of netdoc and netdoc-sim.

Estimated code review effort: 2 (Simple) | ~10 minutes

Sequence Diagram(s)

sequenceDiagram
  participant CI
  participant Alpine3241 as Alpine 3.24.1
  participant APK as network-doctor APK
  participant Binaries as Installed binaries
  CI->>Alpine3241: Start pinned container with network disabled
  CI->>Alpine3241: Install APK with apk add
  Alpine3241->>APK: Register network-doctor package
  Alpine3241->>Binaries: Place netdoc and netdoc-sim in /usr/bin
  CI->>Binaries: Run netdoc --version and netdoc-sim version
Loading

Suggested reviewers: achieversana

Merge Risk: ⚪ Minimal · up to 67335

This change adds CI coverage for installing and running both packaged binaries in Alpine. The supplied checks show no remaining merge-blocking risk.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the main change: testing APK installation in CI.
Linked Issues check ✅ Passed The CI step meets issue #42. It uses the GoReleaser APK in a clean Alpine environment, installs it with apk, verifies the package database entry, confirms both executables, and runs both executables w…
Out of Scope Changes check ✅ Passed The change is limited to the CI APK installation smoke test required by issue #42. No unrelated package formats or unrelated code changes are included.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch apk-install-smoke

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add an automated APK package installation smoke test

1 participant