-
Notifications
You must be signed in to change notification settings - Fork 193
ci: add debian package Apache Cloudberry (incubating) build and test workflow #1378
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
Conversation
d710b27 to
17dfe84
Compare
|
@tuhaihe Here I want to add test whether debian package builds successfully, please review. |
|
Cool, thanks! Will work with @edespino on this. |
edespino
left a comment
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.
- Reviewing the debian control file and after installing the deb file, I noticed that it appears Python 2.7 is used instead of Python 3. Python 3.10 is the default on Ubuntu 22.04. I believe there should be no need to introduce Python 2 into the Cloudberry build environment on this platform.
- Testing: There is no
Run Apache Cloudberry unittest scriptstep - Testing: There are no regression tests (installcheck variants) steps supplied.
|
You can see the Depends field lists python 2 artifact dependencies: |
|
On a relatively bare/clean Ubuntu 22.04 system, I installed Cloudberry from the deb file generated from the build. Running gpinitsystem failed as there is a runtime dependency (libprotofuf.so.23) which is not found. |
|
Although not entirely related, I also noticed the Ubuntu 22.04 test docker file installs cloudberry run-time dependencies. For the most part, test environments will rely on the deb file to pull in all necessary run-time packages. As an example, the python3, rsync, iproute2 packages should be pulled in automatically as run time dependencies of the cloudberry deb file. Here is a snippet from devops/deploy/docker/test/ubuntu22.04/Dockerfile which reveals what I am referring to. |
|
Again, reviewing the generated deb file installation process, I noticed the deb installation creates the |
tuhaihe
left a comment
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.
Leave some comments. PTAL.
2a7a37e to
db5baa0
Compare
2fa77fa to
d07bedd
Compare
|
Fixed all the issues. Yep, there was a big mess in dependencies, I tried to fix it by comparing with rocky linux dependencies. Also I checked the installation on base ubuntu docker image, installed here debian package, created cluster and launched psql. Now packages description is: I also added tests. It turned out that:
For example, I added and the removed resgroup tests because @tuhaihe @edespino Thank you for you review, we could continue here ) |
Hi @leborchuk the #1172 has been reverted via #1414. Welcome to try to rebase your PR. |
tuhaihe
left a comment
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.
+1. Please update the checks' name in .asf.yaml before merging.
d07bedd to
f35bd19
Compare
Yep, rebased. Also, I deleted my changes in .asf.yaml completely. We need to make sure that my checks are stable, otherwise we will have another issue with reverting changes again. I will add them to .asf.yml later. |
f35bd19 to
1407f89
Compare
… build debian package In commit cd0bfbc was added docker build and test containers for ubuntu 22.04. Here has been adding CI workflow to check if we still could create and install debian package for ubuntu 22.04. To do this: - use devops package for build cloudberry binary inside docker build container - create debian package for builded binary - upload artifacts to github actions - download artifacts to ubuntu test container - install downloaded debian packages - check packages for integrity - perform some installcheck tests (regress, pax, contrib, gpcontrib)
1407f89 to
88cd521
Compare
|
We can merge this pull request for now. If there are any questions, we can create new pull requests to address them. Otherwise, this pull request has been postponed for too long. Thanks for your great work again! @leborchuk ❤️ |
Introduces GitHub Actions workflow for Apache Cloudberry (incubating) build debian package:
In #1359 I have added docker build and test containers for ubuntu 22.04. Here I add CI workflow to check if we still could create and install debian package for ubuntu 22.04.
To do this: