Skip to content

Commit 4769230

Browse files
committed
feat: Add bssh-keygen to Debian package build pipeline
- Updated debian_build.yml to include bssh-keygen in package matrix - Created debian/control.bssh-keygen.binary for package metadata - Created debian/rules.bssh-keygen.binary for binary installation - bssh-keygen packages will be built for all distros (jammy, noble, resolute) and architectures (amd64, arm64)
1 parent ede1230 commit 4769230

3 files changed

Lines changed: 65 additions & 1 deletion

File tree

.github/workflows/debian_build.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
strategy:
4040
fail-fast: false
4141
matrix:
42-
package: [bssh, bssh-server]
42+
package: [bssh, bssh-server, bssh-keygen]
4343
distro: [jammy, noble, resolute]
4444
arch: [amd64, arm64]
4545
include:
@@ -81,6 +81,12 @@ jobs:
8181
- arch: arm64
8282
package: bssh-server
8383
binary_asset: bssh-server-linux-aarch64.tar.gz
84+
- arch: amd64
85+
package: bssh-keygen
86+
binary_asset: bssh-keygen-linux-x86_64.tar.gz
87+
- arch: arm64
88+
package: bssh-keygen
89+
binary_asset: bssh-keygen-linux-aarch64.tar.gz
8490

8591
steps:
8692
# ───────────────────────────────────────────────────────────────

debian/control.bssh-keygen.binary

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
Source: bssh
2+
Section: utils
3+
Priority: optional
4+
Maintainer: Jeongkyu Shin <inureyes@gmail.com>
5+
Build-Depends: debhelper-compat (= 13), build-essential
6+
Standards-Version: 4.6.2
7+
Homepage: https://github.com/lablup/bssh
8+
Vcs-Browser: https://github.com/lablup/bssh
9+
Vcs-Git: https://github.com/lablup/bssh.git
10+
Rules-Requires-Root: no
11+
12+
Package: bssh-keygen
13+
Architecture: amd64 arm64
14+
Depends: ${shlibs:Depends}, ${misc:Depends}
15+
Description: Backend.AI SSH Key Generation Utility
16+
bssh-keygen is a utility for generating and managing SSH keys,
17+
built with Rust as part of the bssh project. It provides:
18+
.
19+
* SSH key pair generation
20+
* Support for multiple key formats (RSA, ECDSA, Ed25519, etc.)
21+
* Key fingerprint display and verification
22+
* Integration with SSH agent
23+
* Secure key management
24+
.
25+
This package is part of the Backend.AI bssh project for parallel
26+
SSH command execution across cluster nodes.
27+
.
28+
Developed and maintained as part of the Backend.AI project.

debian/rules.bssh-keygen.binary

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
#!/usr/bin/make -f
2+
3+
# Enable all hardening options
4+
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
5+
6+
%:
7+
dh $@
8+
9+
override_dh_auto_build:
10+
# No build needed - using pre-built binary
11+
@echo "Using pre-built binary from GitHub release"
12+
13+
override_dh_auto_install:
14+
# Install the pre-built bssh-keygen binary
15+
# The binary should be extracted to the project root before building the package
16+
install -D -m 0755 bssh-keygen debian/bssh-keygen/usr/bin/bssh-keygen
17+
# Install man page if present
18+
if [ -f bssh-keygen.1 ]; then \
19+
install -D -m 0644 bssh-keygen.1 debian/bssh-keygen/usr/share/man/man1/bssh-keygen.1; \
20+
fi
21+
22+
override_dh_auto_test:
23+
# Skip tests for pre-built binary
24+
@echo "Skipping tests - using pre-built binary"
25+
26+
override_dh_auto_clean:
27+
@echo "Skipping clean step because we use pre-built binary"
28+
29+
override_dh_builddeb:
30+
dh_builddeb --destdir=../

0 commit comments

Comments
 (0)