-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Ansible ubi upgrade #1990
Ansible ubi upgrade #1990
Conversation
e98c21b
to
ac16889
Compare
88e8dd8
to
13f2d22
Compare
/test e2e-aws-go |
6a6ec80
to
686516b
Compare
585bcf4
to
eb15e97
Compare
/test e2e-aws-go |
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.
/lgtm
after rebase
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.
One comment about combining docker layers. I also want to experiment quickly with this because I was thinking there might be more simplifications we can make.
RUN yum clean all && rm -rf /var/cache/yum/* | ||
|
||
# todo; remove ubi7 after CI be updated with images | ||
# ubi7 | ||
RUN if $(cat /etc/redhat-release | grep --quiet 'release 7'); then (yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm || true); fi | ||
# ubi8 | ||
RUN if $(cat /etc/redhat-release | grep --quiet 'release 8'); then (yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm || true); fi | ||
|
||
RUN yum -y update \ | ||
&& yum install -y python36-devel gcc | ||
|
||
# ubi7 | ||
RUN if $(cat /etc/redhat-release | grep --quiet 'release 7'); then (yum install -y python36-pip || true); fi | ||
# ubi8 | ||
RUN if $(cat /etc/redhat-release | grep --quiet 'release 8'); then (yum install -y python3-pip || true); fi | ||
|
||
# Install inotify-tools. Note: rpm -i will install the rpm in the registry for allow yum install it. | ||
RUN curl -O https://rpmfind.net/linux/fedora/linux/releases/30/Everything/x86_64/os/Packages/i/inotify-tools-3.14-16.fc30.x86_64.rpm \ |
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 we should still be able to use the \ <newline> &&
syntax to have this entire set of stuff happen in a single docker layer.
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.
We will remove all ifs in the next PR. It is just for don't break the CI. Then, all will come back to be just 1 layer. Is it make sense? WDYT? Could we move forward here?
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 don't think there's a huge rush on this, and I think we should be more diligent than we normally would be because the ansible base image build is a pretty regular source of issues in CI.
I don't have a major problem with multi-layer vs. single layer since that shouldn't make a difference in the resulting image.
However, I'm a bit confused with some of the additions and changes for ubi8 and want to make sure that we get things right from the start.
- For ubi7, my impression is that we are installing the EPEL repo because it contains
inotify-tools
, so if we're using EPEL, we should be installinginotify-tools
withyum install -y inotify-tools
, not by downloading and manually installing. - For ubi8, it appears that EPEL does not contain
inotify-tools
, so I don't think we should be installing EPEL in ubi8. In this case, I'm curious why it disappeared, and if it is now present in another repo, or if it has been removed entirely from RHEL/UBI8. I'd rather that we not download fromrpmfind.net
if there's an official place thatinotify-tools
has moved. And if it is totally removed from official RHEL/UBI8 repos, we should have a comment (and ideally a link to discussion about its removal) in the Dockerfile.
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.
Hi @joelanford,
Thank you for your review and inputs.
Just to clarify my idea was we do it now just to pass in the prow CI and then when we have the ubi8 we could improve it.
- Regards the epel I think is a good spot and we can remove it. 👍
- Regards the
inotify-tools
it was removed from rhel8 and we have for nowinotify3-tools
. So, let's try to use it now and avoid do the download. Note that if we run locally the docker image with then all is installed, so let's cross the fingers forinotify3-tools
work well for us asinotify-tools
and pass in all ci tests as well.
Please, let me know if has anything else that you would like to change and/or are you ok with move forward with now?
Also @camilamacedo86 can you remove the Jira link in the PR description and replace it with either direct text or a link to another public github issue. That Jira is private and not readable by the community. |
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.
/lgtm as long as we come back and fix the image layers right after everything merges.
/test e2e-aws-subcommand |
deb2943
to
3740f7d
Compare
3740f7d
to
976ee81
Compare
/lgtm |
Description of the change:
NOTE:
To use ubi8 is required:
-to upgrade epel from 7 to 8 as well.
-python3-pip instead of python36-pip
Motivation
#1656