Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix systemd service starting in postinst #5

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/buildrelease-deb-manual.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,10 @@ jobs:
fetch-tags: true
fetch-depth: 0
- run: git tag
- run: gbp buildpackage --git-ignore-branch
- run: |
cp tenstorrent-hugepages.service dev-hugepages\\x2d1G.mount debian/
gbp buildpackage --git-ignore-branch
rm debian/tenstorrent-hugepages.service debian/dev-hugepages\\x2d1G.mount
- name: Move Debian packages
run: mkdir -p artifacts && mv ../*.deb artifacts/
- name: Set environment variable for deb filename
Expand Down
5 changes: 4 additions & 1 deletion .github/workflows/buildrelease-deb.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,10 @@ jobs:
fetch-tags: true
fetch-depth: 0
- run: git tag
- run: gbp buildpackage --git-tag --git-upstream-tag='v%(version)s'
- run: |
cp tenstorrent-hugepages.service dev-hugepages\\x2d1G.mount debian/
gbp buildpackage --git-tag --git-upstream-tag='v%(version)s'
rm debian/tenstorrent-hugepages.service debian/dev-hugepages\\x2d1G.mount
- name: release
uses: actions/create-release@v1
id: create_release
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,7 @@ debian/debhelper-build-stamp
debian/files
debian/tenstorrent-tools.substvars
debian/tenstorrent-tools/

# systemd service files copied for building
debian/tenstorrent-hugepages.service
debian/dev-hugepages\\x2d1G.mount
4 changes: 2 additions & 2 deletions debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ override_dh_fixperms:
chmod 755 debian/tenstorrent-tools/opt/tenstorrent/bin/hugepages-setup.sh

override_dh_installsystemd:
dh_installsystemd --name=tenstorrent-hugepages.service
dh_installsystemd --name=dev-hugepages\x2d1G.mount
dh_installsystemd tenstorrent-hugepages.service
dh_installsystemd dev-hugepages\\x2d1G.mount
4 changes: 2 additions & 2 deletions debian/tenstorrent-tools.install
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
hugepages-setup.sh /opt/tenstorrent/bin
tenstorrent-hugepages.service /lib/systemd/system/
dev-hugepages\\x2d1G.mount /lib/systemd/system/
debian/tenstorrent-hugepages.service /lib/systemd/system/
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

these files aren't in the debian/ directory, and changing this will mess up the .deb file creation itself (and if it works it won't have these files)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've moved these files to the debian dir in the PR, you should be able to see those changes also in the PR (github lists them as renames)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

they should not be in the debian directory as we'll need those when we generate non-debs as well, so it doesn't make sense for those to be there

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

debhelper seems to generate the postinst and postrm steps (the part where the services get started and cleaned up) properly only if these files are in the debian directory. I download the deb files of a couple of packages (sshd, mariadb) and they all have the systemd service files within the debian dir in them. So I thought that this was the right place to keep these files.

Since you are saying that we will need them for non-debian distros as well, do you have a suggestion for a way to accomplish this? Creating a copy or copying the file into the debian dir during the build process or something better?

debian/dev-hugepages\\x2d1G.mount /lib/systemd/system/
debian/tenstorrent-tools.postinst usr/sbin

2 changes: 2 additions & 0 deletions debian/tenstorrent-tools.postinst
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,5 @@ else
update-grub
fi

#DEBHELPER#