-
Notifications
You must be signed in to change notification settings - Fork 8
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
ci: add debianize build pipeline #176
base: master
Are you sure you want to change the base?
Conversation
@@ -158,3 +158,10 @@ jobs: | |||
context: . | |||
push: true | |||
tags: backblaze/b2:${{ steps.build.outputs.version }} | |||
|
|||
debian-release: | |||
name: Build Debian Package |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let's skip this step if vars are missing
type: string | ||
|
||
env: | ||
PYTHON_DEFAULT_VERSION: "3.11" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
debian is probably decades away from supporting this python, I assume that's not a problem? like maybe some things here pass even though they are syntax errors in the version that debian is gonna use?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3.11 is actually the default version in the latest Debian.
But we run testsuite for all the supported Python versions (3.7+), so if anything would be misbehaving we'd find out there, no?
Co-authored-by: Michał Nowacki <77497496+mpnowacki-reef@users.noreply.github.com>
0dbad50
to
e75b19b
Compare
e75b19b
to
a0bde3b
Compare
add Debian package build into pipeline
This was quite a bamboozle as the Debian building somehow feels like it does not behave deterministically - one day it is working certain way and when I pick it up the next day where I left it, it behaves differently.
Specifically - one day it was pinning the exact version of Debian dependencies. The next day it was not pinning them, and I couldnt reproduce the previous behaviour again. This made it easier for installation, but also it requires to:
b2sdk
dependency intodebian/control
as the latest available version ofb2sdk
Debian package is incompatible: (ImportError: cannot import name 'UploadMode' from 'b2sdk.v2'
which was added latertl;dr - package build is working and it's uploaded into B2 bucket:
https://f005.backblazeb2.com/file/reef-b2-debian/python3-b2sdk_1.21.0-1_all.deb
https://f005.backblazeb2.com/file/reef-b2-debian/backblaze-b2_3.9.0-1_all.deb
Repo Setup
add the following pair of secrets for uploading the package into B2 bucket:
B2_DEBIAN_APPLICATION_KEY_ID
B2_DEBIAN_APPLICATION_KEY
add the following environment variable to determine which B2 bucket upload will go to:
B2_DEBIAN_BUCKET_UPLOAD