-
Notifications
You must be signed in to change notification settings - Fork 9
ci: add debianize build pipeline #176
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
base: master
Are you sure you want to change the base?
Conversation
| 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 <[email protected]>
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:
b2sdkdependency intodebian/controlas the latest available version ofb2sdkDebian 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_IDB2_DEBIAN_APPLICATION_KEYadd the following environment variable to determine which B2 bucket upload will go to:
B2_DEBIAN_BUCKET_UPLOAD