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

config/jobs/*/eks: disable S3 log uploads, add conformance tests #10121

Merged
merged 3 commits into from
Nov 20, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions Gopkg.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

56 changes: 45 additions & 11 deletions config/jobs/kubernetes/sig-aws/eks/k8s-aws-eks-1.10.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ presets:
# URL to download the latest 'aws-k8s-tester' release
- name: AWS_K8S_TESTER_EKS_AWS_K8S_TESTER_DOWNLOAD_URL
value: https://github.com/aws/aws-k8s-tester/releases/download/0.1.3/aws-k8s-tester-0.1.3-linux-amd64
# URL to download 'kubectl', required for 'kubectl' calls to EKS
# TODO: use upstream 'kubectl'
- name: AWS_K8S_TESTER_EKS_KUBECTL_DOWNLOAD_URL
value: https://amazon-eks.s3-us-west-2.amazonaws.com/1.10.3/2018-07-26/bin/linux/amd64/kubectl
# URL to download 'aws-iam-authenticator', required for 'kubectl' calls to EKS
- name: AWS_K8S_TESTER_EKS_AWS_IAM_AUTHENTICATOR_DOWNLOAD_URL
value: https://amazon-eks.s3-us-west-2.amazonaws.com/1.10.3/2018-07-26/bin/linux/amd64/aws-iam-authenticator
Expand All @@ -25,13 +29,21 @@ presets:
# 'true' to open port 22 in security group, and enable SSH for log dumper
- name: AWS_K8S_TESTER_EKS_ENABLE_NODE_SSH
value: "true"
value: "true"
# 'true' to upload 'aws-k8s-tester' logs to S3 buckets
# 'true' to enable S3 Access Logs and AWS ALB Access Logs
# use it for debug, dump cluster log already handles log artifacts
- name: AWS_K8S_TESTER_EKS_LOG_ACCESS
value: "false"
# 'true' to upload 'aws-k8s-tester' logs to S3 buckets, in addition to log dumper
# use it for debug, dump cluster log already handles log artifacts
- name: AWS_K8S_TESTER_EKS_UPLOAD_TESTER_LOGS
value: "true"
# 'true' to upload worker node logs to S3
value: "false"
# 'true' to upload worker node logs to S3, in addition to log dumper
# use it for debug, dump cluster log already handles worker node logs
- name: AWS_K8S_TESTER_EKS_UPLOAD_WORKER_NODE_LOGS
value: "true"
value: "false"
# Amazon EKS-optimized AMI (non-GPU, https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html)
- name: AWS_K8S_TESTER_EKS_WORKER_NODE_AMI
value: ami-0f54a2f7d2e9c88b3
# worker node EC2 instance type
- name: AWS_K8S_TESTER_EKS_WORKER_NODE_INSTANCE_TYPE
value: m3.xlarge
Expand All @@ -44,9 +56,6 @@ presets:
# 'true' to enable debug level logs
- name: AWS_K8S_TESTER_EKS_LOG_DEBUG
value: "false"
# 'true' to open port 22 in security group, and enable SSH for log dumper
- name: AWS_K8S_TESTER_EKS_LOG_ACCESS
value: "true"
# 'true' to create AWS ALB
- name: AWS_K8S_TESTER_EKS_ALB_ENABLE
value: "false"
Expand All @@ -66,7 +75,7 @@ presets:

periodics:
# Run Kubernetes 1.10 branch e2e tests with EKS prod build 1.10
- interval: 1h
- interval: 2h
name: ci-kubernetes-e2e-1-10-aws-eks-1-10-prod
labels:
preset-service-account: "true"
Expand All @@ -89,8 +98,33 @@ periodics:
- --test_args=--ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\] --minStartupPods=8
- --timeout=180m

# Run Kubernetes 1.10 branch e2e tests with EKS prod build 1.10
# run conformance tests
- interval: 2h
name: ci-kubernetes-e2e-1-10-aws-eks-1-10-prod-conformance
labels:
preset-service-account: "true"
preset-ci-kubernetes-e2e-aws-eks-1-10: "true"
spec:
containers:
- image: gcr.io/k8s-testimages/kubekins-e2e:latest-master
imagePullPolicy: Always
args:
- --timeout=200
- --bare
- --scenario=kubernetes_e2e
- --
- --check-version-skew=false
- --deployment=eks
- --provider=eks
- --gce-ssh=
- --extract=ci/latest-1.10
- --ginkgo-parallel=30
- --test_args=--ginkgo.focus=\[Conformance\] --ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\] --minStartupPods=8
- --timeout=180m

# Run Kubernetes stable e2e tests with EKS prod build 1.10
- interval: 1h
- interval: 2h
name: ci-kubernetes-e2e-stable-aws-eks-1-10-prod
labels:
preset-service-account: "true"
Expand All @@ -114,7 +148,7 @@ periodics:
- --timeout=180m

# Run Kubernetes latest e2e tests with EKS prod build 1.10
- interval: 1h
- interval: 2h
name: ci-kubernetes-e2e-latest-aws-eks-1-10-prod
labels:
preset-service-account: "true"
Expand Down
35 changes: 4 additions & 31 deletions kubetest/eks/eks.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ type deployer struct {
stopc chan struct{}
cfg *eksconfig.Config
awsK8sTesterPath string
kubectlPath string
ctrl *process.Control
}

Expand Down Expand Up @@ -84,47 +83,21 @@ func NewDeployer(timeout time.Duration, verbose bool) (ekstester.Deployer, error

dp.awsK8sTesterPath, err = exec.LookPath("aws-k8s-tester")
if err != nil {
dp.awsK8sTesterPath = filepath.Join(os.TempDir(), "aws-k8s-tester")
var f *os.File
f, err = os.Create(dp.awsK8sTesterPath)
f, err = ioutil.TempFile(os.TempDir(), "aws-k8s-tester")
if err != nil {
return nil, fmt.Errorf("failed to create %q (%v)", dp.awsK8sTesterPath, err)
}
defer f.Close()
dp.awsK8sTesterPath = f.Name()
dp.awsK8sTesterPath, _ = filepath.Abs(dp.awsK8sTesterPath)
if err = httpRead(cfg.AWSK8sTesterDownloadURL, f); err != nil {
return nil, err
}
f.Close()
if err = util.EnsureExecutable(dp.awsK8sTesterPath); err != nil {
return nil, err
}
}

dp.kubectlPath, err = exec.LookPath("kubectl")
if err != nil {
return nil, fmt.Errorf("cannot find 'kubectl' executable (%v)", err)
}

// TODO(gyuho): replace this kubernetes native Go client
_, err = exec.LookPath("aws-iam-authenticator")
if err != nil {
bin := filepath.Join(os.TempDir(), "aws-iam-authenticator")
var f *os.File
f, err = os.Create(bin)
if err != nil {
return nil, fmt.Errorf("failed to create %q (%v)", bin, err)
}
defer f.Close()
if err = httpRead(cfg.AWSIAMAuthenticatorDownloadURL, f); err != nil {
return nil, err
}
if err = util.EnsureExecutable(bin); err != nil {
return nil, err
}
if err = os.Rename(bin, "/usr/local/bin/aws-iam-authenticator"); err != nil {
return nil, err
}
}

return dp, nil
}

Expand Down
5 changes: 5 additions & 0 deletions testgrid/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2172,6 +2172,8 @@ test_groups:
# EKS e2e results
- name: ci-kubernetes-e2e-1-10-aws-eks-1-10-prod
gcs_prefix: kubernetes-jenkins/logs/ci-kubernetes-e2e-1-10-aws-eks-1-10-prod
- name: ci-kubernetes-e2e-1-10-aws-eks-1-10-prod-conformance
gcs_prefix: kubernetes-jenkins/logs/ci-kubernetes-e2e-1-10-aws-eks-1-10-prod-conformance
- name: ci-kubernetes-e2e-stable-aws-eks-1-10-prod
gcs_prefix: kubernetes-jenkins/logs/ci-kubernetes-e2e-stable-aws-eks-1-10-prod
- name: ci-kubernetes-e2e-latest-aws-eks-1-10-prod
Expand Down Expand Up @@ -5709,6 +5711,9 @@ dashboards:
- name: ci-kubernetes-e2e-1-10-aws-eks-1-10-prod
test_group_name: ci-kubernetes-e2e-1-10-aws-eks-1-10-prod
description: Kubernetes 1.10 branch e2e tests with EKS prod build 1.10
- name: ci-kubernetes-e2e-1-10-aws-eks-1-10-prod-conformance
test_group_name: ci-kubernetes-e2e-1-10-aws-eks-1-10-prod-conformance
description: Kubernetes 1.10 branch e2e tests with EKS prod build 1.10, Conformance tests
- name: sig-aws-eks-ci-kubernetes-e2e-stable
dashboard_tab:
- name: ci-kubernetes-e2e-stable-aws-eks-1-10-prod
Expand Down
1 change: 1 addition & 0 deletions vendor/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ filegroup(
"//vendor/github.com/aws/aws-k8s-tester/eksconfig:all-srcs",
"//vendor/github.com/aws/aws-k8s-tester/ekstester:all-srcs",
"//vendor/github.com/aws/aws-k8s-tester/etcdconfig/plugins:all-srcs",
"//vendor/github.com/aws/aws-k8s-tester/kubeadmconfig/plugins:all-srcs",
"//vendor/github.com/aws/aws-k8s-tester/pkg/awsapi/ec2:all-srcs",
"//vendor/github.com/aws/aws-sdk-go/aws:all-srcs",
"//vendor/github.com/aws/aws-sdk-go/internal/shareddefaults:all-srcs",
Expand Down
29 changes: 9 additions & 20 deletions vendor/github.com/aws/aws-k8s-tester/ec2config/config.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 0 additions & 3 deletions vendor/github.com/aws/aws-k8s-tester/ec2config/plugins/doc.go

This file was deleted.

Loading