From a9c58621911f950581f52faeee3610bea732dddf Mon Sep 17 00:00:00 2001 From: Jacob Floyd Date: Thu, 2 Jan 2025 18:36:48 -0600 Subject: [PATCH 1/5] Packaging: Add common dirs to rpm/deb --- packaging/BUILD | 2 ++ packaging/common/BUILD | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 packaging/common/BUILD diff --git a/packaging/BUILD b/packaging/BUILD index 313d5b3ac6..f372006dc6 100644 --- a/packaging/BUILD +++ b/packaging/BUILD @@ -36,6 +36,7 @@ nfpm_deb_package( "./deb/scripts", "./deb/systemd:services", "./common/systemd:generators", + "./common:dirs", ], scripts=dict( preinstall="deb/scripts/pre-install.sh", @@ -66,6 +67,7 @@ nfpm_rpm_package( "./rpm/scripts", "./rpm/systemd:services", "./common/systemd:generators", + "./common:dirs", ], scripts=dict( preinstall="rpm/scripts/pre-install.sh", diff --git a/packaging/common/BUILD b/packaging/common/BUILD new file mode 100644 index 0000000000..ed07f1f058 --- /dev/null +++ b/packaging/common/BUILD @@ -0,0 +1,18 @@ +nfpm_content_dirs( + name="dirs", + dirs=[ + "/etc/st2", + "/opt/stackstorm/configs", + "/opt/stackstorm/exports", + "/opt/stackstorm/overrides", + "/opt/stackstorm/packs", + "/opt/stackstorm/st2", + "/opt/stackstorm/virtualenvs", + "/usr/share/doc/st2", + "/var/log/st2", + "/var/run/st2", + ], + file_owner="root", + file_group="root", + file_mode="rwxr-xr-x", +) From ec3a53cd8f0b0147fcfd242b308d03bbaf3d311c Mon Sep 17 00:00:00 2001 From: Jacob Floyd Date: Thu, 2 Jan 2025 20:10:38 -0600 Subject: [PATCH 2/5] Packaging: dir permissions --- packaging/common/BUILD | 62 ++++++++++++++++++++++++++++++++---------- 1 file changed, 48 insertions(+), 14 deletions(-) diff --git a/packaging/common/BUILD b/packaging/common/BUILD index ed07f1f058..d9e4c5bdd0 100644 --- a/packaging/common/BUILD +++ b/packaging/common/BUILD @@ -1,18 +1,52 @@ +_packs_group = "st2packs" +_st2_user = "st2" + nfpm_content_dirs( - name="dirs", - dirs=[ - "/etc/st2", - "/opt/stackstorm/configs", - "/opt/stackstorm/exports", - "/opt/stackstorm/overrides", - "/opt/stackstorm/packs", - "/opt/stackstorm/st2", - "/opt/stackstorm/virtualenvs", - "/usr/share/doc/st2", - "/var/log/st2", - "/var/run/st2", - ], - file_owner="root", + name="root_dirs", + dirs=[ + # "/etc/bash_completion.d", + # "/etc/logrotate.d", + "/etc/st2", + "/opt/stackstorm", + "/opt/stackstorm/st2", + "/usr/share/doc/st2", + "/var/log/st2", + "/var/run/st2", + ], + file_owner="root", file_group="root", file_mode="rwxr-xr-x", ) + +nfpm_content_dirs( + name="packs_group_dirs", + dirs=[ + "/opt/stackstorm/packs", + "/opt/stackstorm/virtualenvs", + "/usr/share/doc/st2/examples", + ], + file_owner="root", + file_group=_packs_group, + file_mode="rwxrwxr-x", +) + +nfpm_content_dirs( + name="st2_user_dirs", + dirs=[ + "/opt/stackstorm/configs", + "/opt/stackstorm/exports", + "/opt/stackstorm/overrides", + ], + file_owner=_st2_user, + file_group="root", + file_mode="rwxr-xr-x", +) + +target( + name="dirs", + dependencies=[ + ":root_dirs", + ":packs_group_dirs", + ":st2_user_dirs", + ], +) From 1f3aef0e970b75cac226681ce2ee83b5739099b7 Mon Sep 17 00:00:00 2001 From: Jacob Floyd Date: Thu, 2 Jan 2025 20:11:30 -0600 Subject: [PATCH 3/5] Packaging: add cmd symlinks to rpm/deb --- packaging/BUILD | 2 ++ packaging/common/BUILD | 24 ++++++++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/packaging/BUILD b/packaging/BUILD index f372006dc6..ad9af3e58c 100644 --- a/packaging/BUILD +++ b/packaging/BUILD @@ -37,6 +37,7 @@ nfpm_deb_package( "./deb/systemd:services", "./common/systemd:generators", "./common:dirs", + "./common:symlinks", ], scripts=dict( preinstall="deb/scripts/pre-install.sh", @@ -68,6 +69,7 @@ nfpm_rpm_package( "./rpm/systemd:services", "./common/systemd:generators", "./common:dirs", + "./common:symlinks", ], scripts=dict( preinstall="rpm/scripts/pre-install.sh", diff --git a/packaging/common/BUILD b/packaging/common/BUILD index d9e4c5bdd0..a9b3c0aef7 100644 --- a/packaging/common/BUILD +++ b/packaging/common/BUILD @@ -50,3 +50,27 @@ target( ":st2_user_dirs", ], ) + +nfpm_content_symlinks( + name="symlinks", + symlinks=[ + # the symlink src will be made available during post-install script + (f"/opt/stackstorm/st2/bin/{cmd}", f"/usr/bin/{cmd}") + for cmd in ( + "st2", + "st2-trigger-refire", + "st2-rule-tester", + "st2-run-pack-tests", + "st2-register-content", + "st2-apply-rbac-definitions", + "st2-bootstrap-rmq", + "st2-generate-symmetric-crypto-key", + "st2-self-check", + "st2-track-result", + "st2-validate-pack-config", + "st2ctl", + ) + ], + file_owner="root", + file_group="root", +) From 8a0b3d4a073407c85c584573b5b8914aa6ebbfd5 Mon Sep 17 00:00:00 2001 From: Jacob Floyd Date: Fri, 3 Jan 2025 16:46:58 -0600 Subject: [PATCH 4/5] Packaging: Use BUILD macros: ST2_PACKS_GROUP and ST2_SVC_USER --- packaging/common/BUILD | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/packaging/common/BUILD b/packaging/common/BUILD index a9b3c0aef7..a707af82ee 100644 --- a/packaging/common/BUILD +++ b/packaging/common/BUILD @@ -1,6 +1,3 @@ -_packs_group = "st2packs" -_st2_user = "st2" - nfpm_content_dirs( name="root_dirs", dirs=[ @@ -10,8 +7,6 @@ nfpm_content_dirs( "/opt/stackstorm", "/opt/stackstorm/st2", "/usr/share/doc/st2", - "/var/log/st2", - "/var/run/st2", ], file_owner="root", file_group="root", @@ -26,7 +21,7 @@ nfpm_content_dirs( "/usr/share/doc/st2/examples", ], file_owner="root", - file_group=_packs_group, + file_group=ST2_PACKS_GROUP, file_mode="rwxrwxr-x", ) @@ -36,8 +31,10 @@ nfpm_content_dirs( "/opt/stackstorm/configs", "/opt/stackstorm/exports", "/opt/stackstorm/overrides", + "/var/log/st2", + "/var/run/st2", ], - file_owner=_st2_user, + file_owner=ST2_SVC_USER, file_group="root", file_mode="rwxr-xr-x", ) From 2220ba75c2b66a80dd52765ddfbb88894a76d37e Mon Sep 17 00:00:00 2001 From: Jacob Floyd Date: Fri, 4 Apr 2025 22:55:59 -0500 Subject: [PATCH 5/5] update changelog entry --- CHANGELOG.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 2c12d95fc2..e6af6007bc 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -79,7 +79,7 @@ Added to pants' use of PEX lockfiles. This is not a user-facing addition. #6118 #6141 #6133 #6120 #6181 #6183 #6200 #6237 #6229 #6240 #6241 #6244 #6251 #6253 #6254 #6258 #6259 #6260 #6269 #6275 #6279 #6278 #6282 #6283 #6273 #6287 #6306 #6307 - #6311 #6314 #6315 #6317 #6319 #6312 #6320 #6321 #6323 #6324 #6325 #6326 + #6311 #6314 #6315 #6317 #6319 #6312 #6320 #6321 #6323 #6324 #6325 #6326 #6327 Contributed by @cognifloyd * Build of ST2 EL9 packages #6153 Contributed by @amanda11