-
Notifications
You must be signed in to change notification settings - Fork 70
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
Update beaker setup dependencies with linchpin #1346
Update beaker setup dependencies with linchpin #1346
Conversation
ci-linchpin-messageBus-trigger build #235: SUCCESS: https://jenkins-linchpin.cloud.privileged.psi.redhat.com/job/ci-linchpin-messageBus-trigger/235/ |
[test] |
ci-linchpin-messageBus-trigger build #236: SUCCESS: https://jenkins-linchpin.cloud.privileged.psi.redhat.com/job/ci-linchpin-messageBus-trigger/236/ |
include_tasks: "setup_dnf_deps.yml" | ||
when: setup_providers | length == 0 and ansible_distribution == 'Fedora' | ||
|
||
- name: Install os-specific depdendencies:: CentOS/RHEL | ||
- name: "Install os-specific depdendencies CentOS/RHEL" |
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.
Are you sure about the quotes you added?
Another thing you have typo there depdendencies -> dependencies
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.
Adding special characters like "::" causes failures in ansible.
The is the reason I have added quotes to name. Else it is not necessary.
I will fix typo
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.
Sure, I understand that.
But you removed "::" from the name, therefore you don't need quotes.
- Remove "::" and you don't need quotes.
- Keep "::" and add quotes.
And typo is not fixed yet.
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.
Why even have the double colon?
@@ -10,11 +10,11 @@ | |||
loop_control: | |||
loop_var: indv_prov | |||
|
|||
- name: Install os-specific depdendencies:: Fedora | |||
- name: "Install os-specific depdendencies Fedora" |
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.
Are you sure about the quotes you added?
Another thing you have typo there depdendencies -> dependencies
- 'bottle' | ||
loop_control: | ||
loop_var: bkr_pkg | ||
name: ['git+https://github.com/beaker-project/beaker.git@develop#subdirectory=Client/', 'python-krbV', 'bottle'] |
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.
I can see that you are trying to get beaker from Develop branch. Develop branch contains Beaker 27.
I replaced python-krbV with python-gssapi
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.
I could not find a tag specific to beaker client that is the reason I have used to develop branch code.
Further, does the above mean python-krbV is no longer needed?
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.
Beaker client doesn't require python-krbV anymore. python-gssapi is sufficient for beaker client / common.
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.
- I think you should consume our tags.. Not blindly install develop
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.
I completely agree with you.
However, could share the link/tag which contains python3 patch
the GitHub repo seems confusing.
Thank you.
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.
Hello @samvarankashyap.
Python3 patch is not tagged (yet). I'm working on it, we have to finish Beaker 27 changes. Then I can provide you tag. I'm about to release 26.6. And we are close to 27 - We are performing tests in stage.
e64d4dc
to
2ec1075
Compare
ci-linchpin-messageBus-trigger build #243: FAILURE: https://jenkins-linchpin.cloud.privileged.psi.redhat.com/job/ci-linchpin-messageBus-trigger/243/ |
ci-linchpin-messageBus-trigger build #244: FAILURE: https://jenkins-linchpin.cloud.privileged.psi.redhat.com/job/ci-linchpin-messageBus-trigger/244/ |
ci-linchpin-messageBus-trigger build #247: SUCCESS: https://jenkins-linchpin.cloud.privileged.psi.redhat.com/job/ci-linchpin-messageBus-trigger/247/ |
@14rcole Needs review |
Can we push this out to 1.9.0 release? I ran into an issue manually testing the beaker-client on github locally in a virtualenv. The gssapi caused issues with the paramiko version I was using. I just want to spend time from the carbon side make sure this works. |
Are you in hurry with this patch? I think I can help you guys to make this clean and don't install mess into client machines |
@StykMartin : |
@samvarankashyap : |
I think we should at least test using develop branch or the internal dev rpm to test out the Linchpin Beaker provisioning. To at least make sure the Linchpin python 3 compatible side works consuming the python beaker 3 client apis? That way we can catch things early before beaker 27 is tagged and released? |
For your testing purposes definitely yes! If you want to use internal dev RPM feel free to reach me out. I'm creating new RPM for every new commit merged to develop branch |
@StykMartin : |
Successfully it does not |
@StykMartin Any update on the release date of beaker 27? |
so far my testing with the internal dev beaker rpm on RHEL 8 (Red Hat Enterprise Linux release 8.0 (Ootpa)) has been successful using linchpin 1.8.2 and carbon 1.4.1. The minimal bkr parameters I passed in my scenario arch: x86_64
distro: RHEL-7.6
variant: Server
whiteboard: {{ BKR_WHITEBOARD }}
jobgroup: {{ BKR_JOBGROUP }}
username: {{ BKR_USERNAME }}
password: {{ BKR_PASSWORD }}
ssh_key: keys/{{ BKR_KEYPAIR }}
host_requires_options:
- "force = {{ BKR_HOST_FQDN }}" The only issue I ran into was that the carbon framework had an issue with GSSAPI but that was because of we were using an older version of paramiko, 2.4.2, had to upgrade paramiko 2.6.0 which has full support for GSSAPI. I will test with the develop branch of linchpin next. Not I have been driving this from carbon not Linchpin CLI. @StykMartin I think you've mentioned in the beaker-user list that if I have a RHEL 7 w/python3 and I try to install the beaker27 client rpm, this isn't supported? or won't work? |
@Dannyb48 at this moment RHEL 7 client is built for Python 2 only. |
@StykMartin Sounds good thanks! |
@samvarankashyap The only real gotcha was from carbon side, where we had to update paramiko 2.4.2 to paramiko 2.6.0 to support the new beaker GSSAPI requirement. I did have issues trying to install beaker from the github Client sub-directory issues with finding python dependencies. Although I do question, based on Martin's answer, if we need to add another task to this playbook? One that installs the bkr client 27 install on systems that support it, i.e. RHEL8/Fedora30 and leave this existing task for systems <RHEL8/Fedora30? carbon:
layout:
inventory_layout:
hosts:
node:
count: 1
host_groups:
- hosts
- client
vars:
ansible_ssh_private_key_file: keys/demo
ansible_user: root
hostname: db2-carbon-beaker-node
topology:
resource_groups:
- resource_definitions:
- job_group: ci-ops-central
recipesets:
- arch: x86_64
count: 1
distro: RHEL-7.6
hostrequires:
- force: dell-per220-02.cci.lab.eng.bos.redhat.com
name: db2-carbon-beaker-node
ssh_key_file:
- demo.pub
variant: Server
role: bkr_server
ssh_keys_path: /home/fedora/cbn/e2e-acceptance-tests/keys
whiteboard: py3-beaker-testing
resource_group_name: carbon
resource_group_type: beaker
topology_name: carbon |
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.
Based on Martin's comments, it looks like right now the initial support for Beaker 27 client python 3 is Fedora 30 systems and RHEL 8. Support for RHEL 7 python 3 is coming later on.
Should we keep the original tasks for systems <RHEL8/Fedora 30 to install beaker client < 27 and add a new task for RHEL8/Fedora30 to install the beaker client 27? That way the correct Beaker version is installed appropriately until Beaker 27 for python 3 is supported on RHEL 7 systems?
@Dannyb48 |
@StykMartin |
I think in 3 weeks we have maintenance window to push updates. |
FYI on RHEL 8 - when using the install from github method, we need to make sure that the Did not have this problem when the beaker-client was installed using the rpm method. |
Working on release notes. This week we will tag RC |
@StykMartin |
@samvarankashyap beaker-client 27.0 |
@StykMartin Awesome news. |
🎉 🎉 🎉 |
- 'bottle' | ||
loop_control: | ||
loop_var: bkr_pkg | ||
name: ['git+https://github.com/beaker-project/beaker.git@develop#subdirectory=Client/', 'python-gssapi', 'bottle'] |
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.
This can be replaced with the latest 27.0 Beaker release.
2ec1075
to
f501ccd
Compare
@@ -46,7 +46,7 @@ | |||
tests_require=["pytest<=4.4.0", "nose", "mock", "coverage", "flake8"], | |||
extras_require={ | |||
'krbV': ["python-krbV"], | |||
'beaker': ['beaker-client>=23.3', 'python-krbV'], | |||
'beaker': ['beaker-client>=27.0', 'python-gssapi', 'bottle'], |
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.
Why do you need bottle
?
It is definitely not part of Beaker requirements.
[merge] |
Install beaker dependencies from beaker repo