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
Do not fake /bin/bash, just use the real bash #55018
Do not fake /bin/bash, just use the real bash #55018
Conversation
a6fcd9f
to
2ea0899
Compare
I guess this is fine for hyperkube, which already has a huge number of additional packages. Do you feel similarly, @tallclair? |
# The samba-common, cifs-utils, and nfs-common packages depend on | ||
# ucf, which itself depends on /bin/bash existing. | ||
# It doesn't seem to actually need bash, however. | ||
RUN ln -s /bin/sh /bin/bash |
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 guess we could also remove the symlink after installing the packages, though that's a pretty ugly hack, too.
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.
Right @ixdy
EDIT: actually, we rebuild hyperkube with every release, so this isn't much of a burden. I'm fine with this. |
/assign @luxas |
@@ -38,3 +34,8 @@ RUN echo CACHEBUST>/dev/null && clean-install \ | |||
util-linux | |||
|
|||
COPY cni-bin/bin /opt/cni/bin | |||
|
|||
# The samba-common, cifs-utils, and nfs-common packages depend on |
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 need to do this before the clean-install
step, as otherwise the package configuration step fails.
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.
Looks like i have to install bash separately too before installing the rest. will rework
/hold |
2ea0899
to
0dd77eb
Compare
/hold cancel |
/test pull-kubernetes-unit |
Building the new hyperkube-base images now. You also need to update |
/kind bug Not sure which sig this is. |
build/debian-hyperkube-base/Makefile
Outdated
@@ -19,7 +19,7 @@ | |||
|
|||
REGISTRY?=gcr.io/google-containers | |||
IMAGE?=debian-hyperkube-base | |||
TAG=0.6 | |||
TAG=0.7 |
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.
hm, #52744 was supposed to bump this to 0.7, but it seems that got lost in a rebase. please bump this to 0.8 instead.
cc @rphillips
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.
Ack
0dd77eb
to
137c5b9
Compare
/hold cancel kubernetes/build/root/WORKSPACE Line 94 in 85f0a1a
|
5bd917a
to
e378a2a
Compare
Looks like 0.6, we ended up with dash as the default shell, with /bin/sh as well as /bin/dash ending up invoking dash. We should not change the contract by faking a link to /bin/bash. Let's install the actual bash package and make sure /bin/sh is linked to /bin/bash as well.
Done with rebase. I can push up another commit with those 2 locations when @ixdy confirms as i am not sure if those should be updated after we push an image to the registry. |
@dims I re-read the whole PR, and it looks like he already did (I missed it too):
|
/lgtm |
[MILESTONENOTIFIER] Milestone Pull Request Current @cblecker @dims @ixdy @luxas @mikedanese @roberthbailey @zmerlynn Note: This pull request is marked as Example update:
Pull Request Labels
|
/approve |
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 cancel
build/root/WORKSPACE
Outdated
@@ -91,7 +91,7 @@ docker_pull( | |||
digest = "sha256:1a05a58432254268c31ef5c8d9c21f3d01a40611b14707de6ac2772c0793bd13", |
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.
you need to update this, or else it's not going to have any effect on bazel builds.
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.
update to sha256:fc1b461367730660ac5a40c1eb2d1b23221829acf8a892981c12361383b3742b
and then this lgtm
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.
Done!
I think I never got around to building the new base images since I discovered that we'd forgotten to bump to 0.7 previously. as currently written this will fail since the 0.8 tags don't yet exist. |
/test pull-kubernetes-e2e-gce |
5d6c62b
to
f16b00b
Compare
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: cblecker, dims, ixdy, mikedanese Associated issue: 55012 The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these OWNERS Files:
You can indicate your approval by writing |
/retest |
Automatic merge from submit-queue (batch tested with PRs 56497, 56500, 55018, 56544, 56425). If you want to cherry-pick this change to another branch, please follow the instructions here. |
What this PR does / why we need it:
Looks like 0.6, we ended up with dash as the default shell, with
/bin/sh as well as /bin/dash ending up invoking dash.
We should not change the contract by faking a link to /bin/bash.
Let's install the actual bash package and make sure /bin/sh is
linked to /bin/bash as well.
Which issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)
format, will close the issue(s) when PR gets merged):Fixes #55012
Special notes for your reviewer:
Release note: