make e2e_simple E2E_ARGS="--auth_enable --use_local_cluster --istioctl ${GOPATH}/out/linux_amd64/release/istioctl-linux" | |
bin/gobuild.sh /go/out/linux_amd64/release/istioctl istio.io/istio/pkg/version ./istioctl/cmd/istioctl | |
real 0m31.510s | |
user 1m27.952s | |
sys 0m7.864s | |
./install/updateVersion.sh -a docker.io/istio,0.8.0 | |
/tmp/templates /go/src/istio.io/istio | |
/go/src/istio.io/istio | |
/tmp/templates/addons /go/src/istio.io/istio |
Note: Check access to: https://wwwin-github.cisco.com/CPSG/ccp/blob/master/test/scripts/functional-test-run-e2e.sh Using a Linux server.
Customize your k8s cluster deployment:
export CLUSTER_NAME=ccp
export CLUSTER_VERSION=1.10.2-gke.3
export MACHINE_TYPE=n1-highcpu-2
export NUM_NODES=6
[extension-scheduler-pool-4] 29 May 2018 18:12:49,870 DEBUG ReportMetricsConfigSupplier - Basic metrics enabled: true | |
[extension-scheduler-pool-4] 29 May 2018 18:12:49,871 DEBUG ReportMetricsConfigSupplier - Sim metrics enabled: false | |
[extension-scheduler-pool-4] 29 May 2018 18:12:49,871 DEBUG ReportMetricsConfigSupplier - Percentile metrics enabled: false | |
[extension-scheduler-pool-4] 29 May 2018 18:12:49,871 DEBUG ServersDataCollector - Collecting and reporting - DataCollectorConfig(samplingInterval=3000, componentNames=[volumes, cpus, memory, partitions]) with metric collection configuration - ReportMetricsConfig(reportBasicMetrics=true, reportSimMetrics=false, reportPercentileMetrics=false). | |
[qtp257618483-78-acceptor-0-ServerConnector@3e9b250c{HTTP/1.1}{0.0.0.0:8293}] 29 May 2018 18:12:52,236 DEBUG SelectorManager - Queued change org.eclipse.jetty.io.SelectorManager$ManagedSelector$Accept@2ca8b9a4 | |
[qtp257618483-77-selector-1] 29 May 2018 18:12:52,236 DEBUG SelectorManager - Selector loop woken up from sele |
$ kubectl get cm/istio-mixer-custom-resources -n $NS -o yaml | |
apiVersion: v1 | |
data: | |
custom-resources.yaml: |- | |
apiVersion: "config.istio.io/v1alpha2" | |
kind: attributemanifest | |
metadata: | |
name: istioproxy | |
namespace: simple-auth-test-735b86b2602c47f7b428 | |
spec: |
This guide provides step-by-step instructions for running Istio E2E Tests on Cisco Cloud Platform (CCP). The primary difference between running E2E tests on CCP and a standard E2E test environment, is the presence of the use_local_cluster
argument. This argument instructs the E2E test framework to use type: NodePort
instead of type: LoadBalancer
for the Istio Ingress Service.
Until an Istio release is cut that includes commit a453938, E2E tests must be run from source. Docker images have been created and pushed to the danehans hub based on commit bfe1078, which includes the required commit (a453938). This will allow E2E tes
prow/e2e-bookInfoTests.sh
and prow/e2e-simpleTests.sh
are automatically triggered in the "Before-Merge" stage of every PR. The full suite of E2E tests are run in the "After-Merge" stage only. Their results can be found in the Prow Dashboard and the k8s test grid.
E2e tests can be run on existing clusters by following these steps:
Istio's current testing infrastructure is based on CircleCI. CircleCI automates the Istio pipeline from commit to deploy through:
There are three easy to make mistakes in go. I present them here in the way they are often found in the wild, not in the way that is easiest to understand.
All three of these mistakes have been made in Kubernetes code, getting past code review at least once each that I know of.
- Loop variables are scoped outside the loop.
What do these lines do? Make predictions and then scroll down.
func print(pi *int) { fmt.Println(*pi) }
$ docker run --rm --name fortio -p 8080:8080 -p 8079:8079 istio/fortio:webtest server -loglevel debug
Run grpcping
to Fortio server without -cert
flag produces expected success. Note: No certificate log msg:
$ docker exec fortio /usr/local/bin/fortio grpcping localhost
Clock skew histogram usec : count 1 avg 14.718 +/- 0 min 14.718 max 14.718 sum 14.718
# range, mid point, percentile, count