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

Install efs-utils from github #442

Merged
merged 1 commit into from
May 14, 2021
Merged

Conversation

kbasv
Copy link

@kbasv kbasv commented May 4, 2021

Is this a bug fix or adding new feature?
New feature

What is this PR about? / Why do we need it?
Bump efs-utils to 1.30.2-1. Install latest efs-utils from github since it is not available on yum . Additionally, provide an option to install efs-utils from yum repo.

What testing is done?
Manual tests on my cluster.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label May 4, 2021
@k8s-ci-robot
Copy link
Contributor

Hi @kbasv. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@k8s-ci-robot k8s-ci-robot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label May 4, 2021
@k8s-ci-robot k8s-ci-robot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label May 4, 2021
@wongma7
Copy link
Contributor

wongma7 commented May 4, 2021

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels May 4, 2021
@kbasv
Copy link
Author

kbasv commented May 4, 2021

/test pull-aws-efs-csi-driver-e2e

@kbasv
Copy link
Author

kbasv commented May 4, 2021

/retest

Dockerfile Outdated Show resolved Hide resolved
@kbasv kbasv changed the title Install efs-utils from github WIP[DO NOT MERGE]: Install efs-utils from github May 4, 2021
@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 4, 2021
@kbasv kbasv force-pushed the efs-utils branch 2 times, most recently from 7c0b7aa to 3b826bb Compare May 4, 2021 22:31
@k8s-ci-robot k8s-ci-robot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels May 4, 2021
@kbasv
Copy link
Author

kbasv commented May 4, 2021

/test pull-aws-efs-csi-driver-e2e

@kbasv
Copy link
Author

kbasv commented May 5, 2021

Flaky e2e Tests.

go test ./test/e2e/ -v -kubeconfig=$HOME/.kube/config --region=us-east-1 --report-dir="./results" -ginkgo.focus="should continue reading/writing without hanging" --cluster-name="eks-test" --file-system-id fs-92107410
W0505 10:40:57.696449   20837 test_context.go:414] Unable to find in-cluster config, using default host : http://127.0.0.1:8080
I0505 10:40:57.696605   20837 test_context.go:423] Tolerating taints "" when considering if nodes are ready
May  5 10:40:57.696: INFO: The --provider flag is not set. Continuing as if --provider=skeleton had been used.
=== RUN   TestEFSCSI
2021-05-05 10:40:57.696778 I | Starting e2e run "23002d2a-ff97-4265-8119-33bf009875a9" on Ginkgo node 1
Running Suite: EFS CSI Suite
============================
Random Seed: 1620225657 - Will randomize all specs
Will run 1 of 158 specs

STEP: Using already-created EFS file system "fs-92107410"
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
------------------------------
[efs-csi] EFS CSI [Driver: efs.csi.aws.com] 
  should continue reading/writing without hanging after the driver pod is restarted
  /Users/kb/go/aws-efs-csi-driver/test/e2e/e2e.go:255
[BeforeEach] [efs-csi] EFS CSI
  /Users/kb/go/pkg/mod/k8s.io/kubernetes@v1.18.10/test/e2e/framework/framework.go:178
STEP: Creating a kubernetes client
May  5 10:40:57.697: INFO: >>> kubeConfig: /Users/kb/.kube/config
STEP: Building a namespace api object, basename efs
May  5 10:40:59.083: INFO: Found PodSecurityPolicies; assuming PodSecurityPolicy is enabled.
May  5 10:40:59.134: INFO: Found ClusterRoles; assuming RBAC is enabled.
STEP: Binding the e2e-test-privileged-psp PodSecurityPolicy to the default service account in efs-8081
STEP: Waiting for a default service account to be provisioned in namespace
[It] should continue reading/writing without hanging after the driver pod is restarted
  /Users/kb/go/aws-efs-csi-driver/test/e2e/e2e.go:255
STEP: Creating efs pvc & pv
STEP: Creating pod on node "ip-192-168-57-78.ec2.internal" to mount pvc "efs-8081" and run "touch /mnt/volume1/efs-8081-2021-05-05T10:40:59-04:00 && trap exit TERM; while true; do sleep 1; done"
STEP: Getting driver pod on node "ip-192-168-57-78.ec2.internal"
STEP: Deleting driver pod "efs-csi-node-spzs7" on node "ip-192-168-57-78.ec2.internal"
May  5 10:41:39.405: INFO: Deleting pod "efs-csi-node-spzs7" in namespace "kube-system"
May  5 10:41:39.423: INFO: Wait up to 5m0s for pod "efs-csi-node-spzs7" to be fully deleted
STEP: Execing a write via the pod on node "ip-192-168-57-78.ec2.internal"
May  5 10:41:41.445: INFO: ExecWithOptions {Command:[/bin/sh -c touch /mnt/volume1/efs-8081-2021-05-05T10:41:41-04:00] Namespace:efs-8081 PodName:pvc-tester-5glqk ContainerName:write-pod Stdin:<nil> CaptureStdout:true CaptureStderr:true PreserveWhitespace:false}
May  5 10:41:41.445: INFO: >>> kubeConfig: /Users/kb/.kube/config
May  5 10:41:44.962: INFO: verified exec in pod succeeded
[AfterEach] [efs-csi] EFS CSI
  /Users/kb/go/pkg/mod/k8s.io/kubernetes@v1.18.10/test/e2e/framework/framework.go:179
May  5 10:41:44.985: INFO: Waiting up to 3m0s for all (but 0) nodes to be ready
STEP: Destroying namespace "efs-8081" for this suite.

• [SLOW TEST:47.313 seconds]
[efs-csi] EFS CSI
/Users/kb/go/aws-efs-csi-driver/test/e2e/e2e.go:211
  [Driver: efs.csi.aws.com]
  /Users/kb/go/aws-efs-csi-driver/test/e2e/e2e.go:219
    should continue reading/writing without hanging after the driver pod is restarted
    /Users/kb/go/aws-efs-csi-driver/test/e2e/e2e.go:255
------------------------------
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
JUnit report was created: /Users/kb/go/aws-efs-csi-driver/test/e2e/results/junit_01.xml

Ran 1 of 158 Specs in 47.314 seconds
SUCCESS! -- 1 Passed | 0 Failed | 0 Pending | 157 Skipped
--- PASS: TestEFSCSI (47.32s)
PASS
ok  	github.com/kubernetes-sigs/aws-efs-csi-driver/test/e2e	48.443s

@kbasv
Copy link
Author

kbasv commented May 5, 2021

Retry e2e after marking restart tests as disruptive

@kbasv
Copy link
Author

kbasv commented May 5, 2021

/test pull-aws-efs-csi-driver-e2e

@kbasv
Copy link
Author

kbasv commented May 5, 2021

/test pull-aws-efs-csi-driver-e2e

2 similar comments
@kbasv
Copy link
Author

kbasv commented May 5, 2021

/test pull-aws-efs-csi-driver-e2e

@kbasv
Copy link
Author

kbasv commented May 5, 2021

/test pull-aws-efs-csi-driver-e2e

@kbasv kbasv changed the title WIP[DO NOT MERGE]: Install efs-utils from github Install efs-utils from github May 12, 2021
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 12, 2021
@kbasv
Copy link
Author

kbasv commented May 14, 2021

/test pull-aws-efs-csi-driver-e2e

1 similar comment
@kbasv
Copy link
Author

kbasv commented May 14, 2021

/test pull-aws-efs-csi-driver-e2e

RUN yum install amazon-efs-utils-1.30.1-1.amzn2.noarch -y
# Install efs-utils from github by default. It can be overriden to `yum` with --build-arg when building the Docker image.
# If value of `EFSUTILSSOURCE` build arg is overriden with `yum`, docker will install efs-utils from Amazon Linux 2's yum repo.
ARG EFSUTILSSOURCE=github
Copy link
Contributor

Choose a reason for hiding this comment

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

nit, to be consistent with EFS_CLIENT_SOURCE it should be underscore separated :p

Copy link
Author

Choose a reason for hiding this comment

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

I was trying to be consistent with TARGETOS and TARGETARCH. I can make the arg EFS_CLIENT_SOURCE

then echo "Installing efs-utils from Amazon Linux 2 yum repo" && \
yum -y install amazon-efs-utils-1.30.1-1.amzn2.noarch; \
else echo "Installing efs-utils from github" && \
yum -y install git rpm-build make && \
Copy link
Contributor

Choose a reason for hiding this comment

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

i think we should remove these packages afterward. I don't think it matters much in terms of size, but also we are constantly getting reports of CVE from packages in the image that we don't even depend on at runtime.

@wongma7
Copy link
Contributor

wongma7 commented May 14, 2021

/lgtm
/approve

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 14, 2021
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: kbasv, wongma7

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 14, 2021
@k8s-ci-robot k8s-ci-robot merged commit 5e8988c into kubernetes-sigs:master May 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants