Repository navigation
fix: missing rpm release specification - #4587
Merged
scudette merged 1 commit intoDec 13, 2025
Merged
Conversation
scudette
pushed a commit
that referenced
this pull request
Dec 23, 2025
This pull request fixes the missing RPM release specification issue observed in #4577. It looks like when the RPM client package is created using the `rpm_create` plugin, the release is not extracted from the template or specification definition. Instead, the release is determined by the `release` argument to the plugin. This happens in the [expandSpec](https://github.com/Velocidex/velociraptor/blob/29442ef0525c87d1988343a680e4e3d5222a336e/vql/tools/packaging/package.go#L266) function in `package.go` which directly takes in the `arg.Release` argument. To fix this, I have added a default `Release` ("A") to the RPM specification and also modified the `Server.Utils.CreateLinuxPackages` artifact to include a new parameter allowing users to specify a custom release, as well as passing the parameter or default from the specification to the `rpm_create` plugin. I couldn't locate any tests for the `Server.Utils.CreateLinuxPackages` artifact, however please let me know if I've missed them and I'll update/add the tests for this change.
scudette
pushed a commit
that referenced
this pull request
Dec 23, 2025
This pull request fixes the missing RPM release specification issue observed in #4577. It looks like when the RPM client package is created using the `rpm_create` plugin, the release is not extracted from the template or specification definition. Instead, the release is determined by the `release` argument to the plugin. This happens in the [expandSpec](https://github.com/Velocidex/velociraptor/blob/29442ef0525c87d1988343a680e4e3d5222a336e/vql/tools/packaging/package.go#L266) function in `package.go` which directly takes in the `arg.Release` argument. To fix this, I have added a default `Release` ("A") to the RPM specification and also modified the `Server.Utils.CreateLinuxPackages` artifact to include a new parameter allowing users to specify a custom release, as well as passing the parameter or default from the specification to the `rpm_create` plugin. I couldn't locate any tests for the `Server.Utils.CreateLinuxPackages` artifact, however please let me know if I've missed them and I'll update/add the tests for this change.
scudette
pushed a commit
that referenced
this pull request
Jan 8, 2026
I’ve just seen #4577 and #4587 — this one is probably on me. In #3270 I incorrectly assumed that .Default("A") would take effect, but it looks like it didn’t because the field may have been an empty string (e.g. same for server_rpm_command_output - https://github.com/Velocidex/velociraptor/blob/master/bin/rpm.go#L140-L143). Sorry for the oversight on my part.
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.
This pull request fixes the missing RPM release specification issue observed in #4577.
It looks like when the RPM client package is created using the
rpm_createplugin, the release is not extracted from the template or specification definition. Instead, the release is determined by thereleaseargument to the plugin. This happens in the expandSpec function inpackage.gowhich directly takes in thearg.Releaseargument.To fix this, I have added a default
Release("A") to the RPM specification and also modified theServer.Utils.CreateLinuxPackagesartifact to include a new parameter allowing users to specify a custom release, as well as passing the parameter or default from the specification to therpm_createplugin.I couldn't locate any tests for the
Server.Utils.CreateLinuxPackagesartifact, however please let me know if I've missed them and I'll update/add the tests for this change.