mirror of
https://github.com/amidaware/tacticalrmm.git
synced 2026-04-26 06:55:52 +03:00
[PR #2348] [CLOSED] Add macOS mesh agent tar.gz archive delivery with .msh config #1926
Labels
No labels
In Process
bug
bug
dev-triage
documentation
duplicate
enhancement
fixed
good first issue
help wanted
integration
invalid
pull-request
question
requires agent update
security
ui tweak
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/tacticalrmm#1926
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/amidaware/tacticalrmm/pull/2348
Author: @PeetMcK
Created: 11/16/2025
Status: ❌ Closed
Base:
develop← Head:Refactor_macOS_meshagent_delivery📝 Commits (4)
36eae42Add macOS mesh agent tar.gz archive delivery with .msh config90953ebEnhance macOS mesh agent download with SHA256 checksums and randomized filenames4d7e1c9Merge pull request #1 from PeetMcK/macOS-refactorv25576aabMerge branch 'amidaware:develop' into Refactor_macOS_meshagent_delivery📊 Changes
3 files changed (+102 additions, -5 deletions)
View changed files
📝
api/tacticalrmm/apiv3/views.py(+12 -1)📝
api/tacticalrmm/core/tests.py(+4 -4)📝
api/tacticalrmm/core/utils.py(+86 -0)📄 Description
Summary
Implements tar.gz archive delivery for macOS mesh agents with enhanced security features including SHA256 checksum verification and randomized filenames to prevent unwanted in-place upgrades.
Changes
Core Functionality
Client-Side Changes Required:
This requires corresponding changes in the rmmagent to handle the tar.gz archive and
--copy-msh="1"installation. See: https://github.com/amidaware/rmmagent/pull/68Implementation Details
get_mesh_msh_url(): Constructs /meshsettings endpoint URLdownload_mesh_agent_with_msh(): Downloads both files, creates tar.gz archive with checksumsget_meshagent_url(): Added macOS-specific branch to use clean binary URL format (onlyidparameter) to preserve code signatures. Downloads unmodified binary fromhttp://[mesh_server]/meshagents?id=10005- mesh configuration provided separately via .msh file rather than embedded in binary by MeshCentralMeshExe.post()inapiv3/views.py: Use archive for darwin, single binary for windowsFiles Modified
api/tacticalrmm/core/utils.py- Core download and archive functionality (+86 lines)api/tacticalrmm/apiv3/views.py- Endpoint logic for archive delivery (+13 lines)api/tacticalrmm/core/tests.py- Updated tests for simplified URL format (8 lines changed)Test Plan
Completed Testing (macOS)
Recommended Validations
Related PRs
🤖 Generated with Claude Code
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.