Skip to content
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

feat: Add centos-8 with updated python #3796

Closed
wants to merge 1 commit into from
Closed

feat: Add centos-8 with updated python #3796

wants to merge 1 commit into from

Conversation

ryanfaircloth
Copy link
Contributor

#3795
This PR adds build rules to dbld for centos-8 to produce rpms with python 3.9 dependencies

@kira-syslogng
Copy link
Contributor

This user does not have permission to start the build. Can one of the admins verify this patch and start the build?
(admin: you have the next options (make sure you checked the code):
"ok to test" to accept this pull request (and further changes) for testing
"test this please" for a one time test run
"add to whitelist" add author of a Pull Request to whitelist (globally, be careful, it means this user can trigger kira for any PR)
do nothing -> CI won't start)

1 similar comment
@kira-syslogng
Copy link
Contributor

This user does not have permission to start the build. Can one of the admins verify this patch and start the build?
(admin: you have the next options (make sure you checked the code):
"ok to test" to accept this pull request (and further changes) for testing
"test this please" for a one time test run
"add to whitelist" add author of a Pull Request to whitelist (globally, be careful, it means this user can trigger kira for any PR)
do nothing -> CI won't start)

@Kokan
Copy link
Collaborator

Kokan commented Sep 29, 2021

@kira-syslogng ok to test

@kira-syslogng
Copy link
Contributor

Build SUCCESS

@czanik
Copy link
Contributor

czanik commented Sep 29, 2021

I do not know much about the DBLD part, but checked the spec file change, and worked perfectly: https://copr.fedorainfracloud.org/coprs/czanik/syslog-ng-githead/build/2862913/
👍

@alltilla
Copy link
Collaborator

Hi @rfaircloth-splunk,

Thanks, nice PR!

I have opened a PR to your fork, which adds centos-8 to our CI, so we test it regularly. If you merge that, we can see the centos-8 image's validity under this PR's CI run.

This PR's CI failed because of the commits-check. Could you kindly sign your commit with git commit --amend --signoff? Thanks!

Cheers,
Attila

@czanik
Copy link
Contributor

czanik commented Oct 4, 2021

@rfaircloth-splunk What is powertools repo is used for? Python 3.9 is available in the appstream repo:

Installing:
 python39-devel     x86_64 3.9.2-1.module_el8.4.0+720+bfbc1bcb  appstream 231 k
Installing dependencies:
 python39           x86_64 3.9.2-1.module_el8.4.0+720+bfbc1bcb  appstream  32 k
 python39-libs      x86_64 3.9.2-1.module_el8.4.0+720+bfbc1bcb  appstream 8.1 M
 python39-pip-wheel noarch 20.2.4-3.module_el8.4.0+680+7b309a77 appstream 1.3 M
 python39-setuptools-wheel
                    noarch 50.3.2-3.module_el8.4.0+680+7b309a77 appstream 497 k

@ryanfaircloth
Copy link
Contributor Author

Hi @rfaircloth-splunk,

Thanks, nice PR!

I have opened a PR to your fork, which adds centos-8 to our CI, so we test it regularly. If you merge that, we can see the centos-8 image's validity under this PR's CI run.

This PR's CI failed because of the commits-check. Could you kindly sign your commit with git commit --amend --signoff? Thanks!

Cheers, Attila

Sorry I missed the github notification of your PR I merged it to my fork

@ryanfaircloth
Copy link
Contributor Author

@rfaircloth-splunk What is powertools repo is used for? Python 3.9 is available in the appstream repo:

Installing:
 python39-devel     x86_64 3.9.2-1.module_el8.4.0+720+bfbc1bcb  appstream 231 k
Installing dependencies:
 python39           x86_64 3.9.2-1.module_el8.4.0+720+bfbc1bcb  appstream  32 k
 python39-libs      x86_64 3.9.2-1.module_el8.4.0+720+bfbc1bcb  appstream 8.1 M
 python39-pip-wheel noarch 20.2.4-3.module_el8.4.0+680+7b309a77 appstream 1.3 M
 python39-setuptools-wheel
                    noarch 50.3.2-3.module_el8.4.0+680+7b309a77 appstream 497 k

It was one of the buildtools autoconf-archive I think it was

@kira-syslogng
Copy link
Contributor

Build FAILURE

@ryanfaircloth
Copy link
Contributor Author

@czanik not shure how to troubleshoot the KIRA build failure

@bazsi
Copy link
Collaborator

bazsi commented Oct 9, 2021

@kira-syslogng Test this please;

bazsi
bazsi previously approved these changes Oct 9, 2021
Copy link
Collaborator

@bazsi bazsi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me, once the build checks out it can go in, imho.

@kira-syslogng
Copy link
Contributor

Build SUCCESS

@MrAnno
Copy link
Collaborator

MrAnno commented Oct 9, 2021

A commit check job is failing. Please rebase this branch onto the current master, it will make merge commits go away. Passing the --signoff flag to git rebase will also fix the commit check issue.

@ryanfaircloth
Copy link
Contributor Author

@MrAnno done

@kira-syslogng
Copy link
Contributor

Build SUCCESS

@ryanfaircloth
Copy link
Contributor Author

pushed with signoff

@kira-syslogng
Copy link
Contributor

Build SUCCESS

@ryanfaircloth
Copy link
Contributor Author

I've used the suggested commands to signoff but it seems to not help not sure how to fix

@gaborznagy
Copy link
Collaborator

I've used the suggested commands to signoff but it seems to not help not sure how to fix

Hi!
Only commit 7c0b530 is signed off, but not commit 888e4b12a. Can you rebase your PR, so no merge commits will be in the PR, please?
If you need help with anything, you can reach me on gitter.

@alltilla alltilla self-assigned this Oct 14, 2021
@czanik
Copy link
Contributor

czanik commented Oct 14, 2021

@rfaircloth-splunk

It was one of the buildtools autoconf-archive I think it was

It is not used by the spec file, as far as I can see, so most likely can be skipped.

github-actions: add centos-8 to CI

Signed-off-by: Attila Szakacs <attila.szakacs@oneidentity.com>
@kira-syslogng
Copy link
Contributor

Build FAILURE

@ryanfaircloth
Copy link
Contributor Author

trying again

@kira-syslogng
Copy link
Contributor

Build SUCCESS

@ryanfaircloth
Copy link
Contributor Author

@czanik can you approve the build to run CI

@ryanfaircloth
Copy link
Contributor Author

@czanik not sure what the deal on the last failure doesn't look like anything in my pr let me know what I shoulld do

@gaborznagy
Copy link
Collaborator

@czanik not sure what the deal on the last failure doesn't look like anything in my pr let me know what I shoulld do

I've checked a failing "Style-check (Light)" job, and it seems some environmental issue, I've run it locally and it's passed.
I've restarted the Github Actions job.

@gaborznagy
Copy link
Collaborator

Hi @rfaircloth-splunk!

We've discussed this PR with the team and decided that we don't want to add Centos 8 as a platform to our CI, since it's EOL date is within 2 months (https://www.centos.org/centos-linux-eol/, https://www.centos.org/cl-vs-cs/).
We haven't considered Centos 8 Stream yet.

We would like to integrate your changes about the python39 version in the RPM spec file though, as @czanik already tested it, and it would be useful for the current Centos 8 RPMs in COPR (https://copr.fedorainfracloud.org/coprs/czanik/syslog-ng-stable/).

May I ask what is your use case for Centos 8 and your plan after Centos 8 EOL?
Do you plan to migrate to Centos 8 Stream?

@ryanfaircloth
Copy link
Contributor Author

ryanfaircloth commented Oct 29, 2021

Hi @rfaircloth-splunk!

We've discussed this PR with the team and decided that we don't want to add Centos 8 as a platform to our CI, since it's EOL date is within 2 months (https://www.centos.org/centos-linux-eol/, https://www.centos.org/cl-vs-cs/). We haven't considered Centos 8 Stream yet.

We would like to integrate your changes about the python39 version in the RPM spec file though, as @czanik already tested it, and it would be useful for the current Centos 8 RPMs in COPR (https://copr.fedorainfracloud.org/coprs/czanik/syslog-ng-stable/).

May I ask what is your use case for Centos 8 and your plan after Centos 8 EOL? Do you plan to migrate to Centos 8 Stream?

I actually don't use centos8, what I used is RedHat8's "universal base image" container. In this case centos8 was a means to the end of having the ability to use python libraries that require python 3.8 or greater. The specific issue I need to manage is a parser I am developing in python that relies on an external rest service in that parser I want to implement a cache to avoid excessive remote calls.

We use the rpms from https://copr.fedorainfracloud.org/coprs/czanik/syslog-ng-stable/ for our build so a rpm for python there that is 3.9 would be the solve I am looking for

@czanik
Copy link
Contributor

czanik commented Nov 2, 2021

I'm back from sick leave and spent the past hour trying to figure out the situation. Unfortunately I could not find a good documentation on Copr repositories, so I'll need to do some tests and also talk to my friend at the CentOS project.

From discussions and Twitter polls I see that syslog-ng users are not fond of the CentOS stream idea. Some people already jumped to completely different operating systems (Ubuntu LTS, openSUSE, even FreeBSD), some switched to RHEL (not many) and most people switch to Alma, Rocky or Oracle Linux.

However, for syslog-ng development Stream is better: seeing any breaking changes ASAP.

In either way this PR is a good starting point both for Stream and traditional releases.

@czanik
Copy link
Contributor

czanik commented Nov 2, 2021

OK, I added experimental Stream builds to https://copr.fedorainfracloud.org/coprs/czanik/syslog-ng-githead/ The very same spec file works fine for Stream 8. However it needs some hacks on the settings part (adding EPEL) manually, so I'll need to remove it before my next builds.

Stream 9 build fails due to missing EPEL repo.

Next up: trying to figure out how to build for regular RHEL releases once proper CentOS Linux (not Stream) is dead.

@czanik
Copy link
Contributor

czanik commented Nov 2, 2021

OK. According to https://twitter.com/Arrfab/status/1455490659167637506 Copr most likely will switch back to RHEL as a base operating system for EPEL packages. I'm almost a week behind schedule due to sick leave, so I do not know when I'll have time to check this, but I got an idea: instead of centos-8 add an rhel-8 target to DBLD based on UBI. However, it needs some checking if all dependencies are available for UBI.

In the end it could lead to two DBLD targets:

  • UBI to build syslog-ng for RHEL / Alma / Oracle / Rocky releases: this is what end users / integrators could use
  • CentOS-Stream to build syslog-ng for nightly compatibility testing

Note: this is just a brain dump, not discussed with my colleagues yet

@alltilla
Copy link
Collaborator

alltilla commented Nov 4, 2021

@rfaircloth-splunk

We have talked about this with the team. We are planning to introduce a centos8-like platform to dbld, though, we are not sure which one, yet.

In the meantime your specfile change could be merged as is, to help @czanik's build process. Would you mind, if I cherry-picked that change to a separate PR with you as an author?

Thanks!

@alltilla
Copy link
Collaborator

@rfaircloth-splunk

We have talked about this with the team. We are planning to introduce a centos8-like platform to dbld, though, we are not sure which one, yet.

In the meantime your specfile change could be merged as is, to help @czanik's build process. Would you mind, if I cherry-picked that change to a separate PR with you as an author?

Thanks!

Opened #3834

@ryanfaircloth
Copy link
Contributor Author

@rfaircloth-splunk

We have talked about this with the team. We are planning to introduce a centos8-like platform to dbld, though, we are not sure which one, yet.

In the meantime your specfile change could be merged as is, to help @czanik's build process. Would you mind, if I cherry-picked that change to a separate PR with you as an author?

Thanks!

Hi sorry i missed the question cherry picking is just fine its a means to my end. I just really need "modern" python in the next release.

@czanik
Copy link
Contributor

czanik commented Nov 24, 2021

3.35 is out, and both my dedicated 3.35 repo and syslog-ng-stable already have modern Python

@MrAnno
Copy link
Collaborator

MrAnno commented Jan 6, 2022

Let's continue the discussion about the centos8-like dbld platform in a separate issue, or in #3795.

Thank you for your contribution, we have cherry-picked a few patches from your PR.

@MrAnno MrAnno closed this Jan 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants