-
Notifications
You must be signed in to change notification settings - Fork 193
Add ubuntu22.04 build/test docker containers #1359
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
|
@tuhaihe Please review |
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. Hope we can merge it after #1354.
Also:
- can revise the commit message following the .gitmessage template.
- can also update the commit author for your contribution track, not big deal, FYI :)
|
Hey @leborchuk , there are some conflicts that need to be resolved. PTAL, thanks! |
Hi! Got it, I will rebase and fix commit messages, notify as I will have done it. |
Ubuntu is one of the most popular Linux distros and is widely used not only on workstations, but also on server-side platforms. We use Debian-based distributions as the main operating system platform in our environment. Greenplum works on Ubuntu without any issues, and our tests with Cloudberry show the same. Here I have added support for Ubuntu Jammy LTS in Cloudberry. As for Rocky Linux distros, we create a Docker container with all dependencies already resolved. Then, we build a Debian package using debhelper inside the container. The container can also be used to run tests, but that is outside the scope of this PR. Also there is some changes compared to RPM-based builds: 1. Debian packages (and docker containers) does not need to build libxerces since 22.04 repo contains libxerces-c3.2. libxerces-c3.2 fits perfectly for cloudberry. 2. Debian prohibits install something inside /usr/local/. So we need to build our binaries somewhere else, then list relative local build paths in control file and finally write install script to copy it in /usr/local/cloudberry-db. In reality we just build to /usr/cloudberry-db and then create symbolic link /usr/cloudberry-db -> /usr/local/cloudberry-db
a428334 to
cd0bfbc
Compare
Hi @tuhaihe ! I have rebased and rewritten commit message. Could be checked again. |
LGTM now. Thanks @leborchuk ! |
|
I created a PR on the docs to introduce the new Docker dev image: apache/cloudberry-site#325 |
This is the copy of apache/cloudberry-devops-release#13
We decided to move cloudberry-devops-release/ to the main repo and then add support of ubuntu 22.04 here.
In these PR I add build/test docker containers that is needed for building debian binary. There is some changes compared to RPM-based builds:
After successful merging, I will add GitHub Actions scripts for creating Debian packages. See the example here https://github.com/leborchuk/cloudberrydb/actions/runs/15662457461/job/44122150152