k8s.io/test-infra@v0.0.0-20240520184403-27c6b4c223d8/config/jobs/kubernetes/cloud-provider-aws/cloud-provider-aws-presubmit.yaml (about)

     1  presubmits:
     2    kubernetes/cloud-provider-aws:
     3    - name: pull-cloud-provider-aws-e2e
     4      cluster: eks-prow-build-cluster
     5      decorate: true
     6      skip_if_only_changed: "^docs/|^\\.github/|\\.(md)$|^(LICENSE|OWNERS)$"
     7      skip_branches:
     8      - gh-pages
     9      path_alias: k8s.io/cloud-provider-aws
    10      labels:
    11        preset-dind-enabled: "true"
    12        preset-aws-credential-aws-shared-testing: "true"
    13      spec:
    14        serviceAccountName: aws-shared-testing-role
    15        containers:
    16        - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master
    17          resources:
    18            limits:
    19              cpu: 2
    20              memory: 4Gi
    21            requests:
    22              cpu: 2
    23              memory: 4Gi
    24          command:
    25          - runner.sh
    26          args:
    27          - make
    28          - test-e2e
    29          - KOPS_STATE_STORE=s3://cloud-provider-aws-shared-e2e
    30          securityContext:
    31            privileged: true
    32      annotations:
    33        testgrid-dashboards: provider-aws-cloud-provider-aws, amazon-ec2-presubmits
    34        testgrid-tab-name: e2e
    35        description: aws cloud provider e2e tests
    36        testgrid-num-columns-recent: '30'
    37  
    38    - name: pull-cloud-provider-aws-e2e-kubetest2
    39      cluster: eks-prow-build-cluster
    40      skip_if_only_changed: "^docs/|^\\.github/|\\.(md)$|^(LICENSE|OWNERS)$"
    41      skip_branches:
    42        - release-\d+\.\d+  # per-release image
    43      annotations:
    44        testgrid-alert-stale-results-hours: "24"
    45        testgrid-create-test-group: "true"
    46        testgrid-num-failures-to-alert: "10"
    47        testgrid-dashboards: presubmits-ec2
    48      labels:
    49        preset-e2e-containerd-ec2: "true"
    50        preset-dind-enabled: "true"
    51        preset-aws-credential-aws-shared-testing: "true"
    52      path_alias: k8s.io/cloud-provider-aws
    53      optional: true
    54      decorate: true
    55      decoration_config:
    56        timeout: 4h
    57      extra_refs:
    58        - org: kubernetes
    59          repo: kubernetes
    60          base_ref: master
    61          path_alias: k8s.io/kubernetes
    62      spec:
    63        serviceAccountName: aws-shared-testing-role
    64        containers:
    65          - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master
    66            command:
    67              - runner.sh
    68            args:
    69              - bash
    70              - -c
    71              - |
    72                GOPROXY=direct go install sigs.k8s.io/provider-aws-test-infra/kubetest2-ec2@latest
    73  
    74                VERSION=$(git describe --dirty --tags --match='v*')
    75                BUILD_IMAGE=ko.local:${VERSION}
    76                REGION=${REGION:-"us-east-1"}
    77  
    78                make switch-to-latest-k8s ko-build-local
    79  
    80                AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text)
    81                IMAGE_NAME=${AWS_ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com/provider-aws/cloud-controller-manager
    82                IMAGE_TAG=${VERSION}
    83  
    84                echo "Building and pushing test driver image to ${IMAGE_NAME}:${IMAGE_TAG}"
    85                aws ecr get-login-password --region "${REGION}" | docker login --username AWS --password-stdin "${AWS_ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com"
    86                docker tag "${BUILD_IMAGE}" "${IMAGE_NAME}:${IMAGE_TAG}"
    87                docker push "${IMAGE_NAME}:${IMAGE_TAG}"
    88  
    89                kubetest2 ec2 \
    90                 --build \
    91                 --region us-east-1 \
    92                 --target-build-arch linux/amd64 \
    93                 --stage provider-aws-test-infra \
    94                 --external-cloud-provider true \
    95                 --external-cloud-provider-image="${IMAGE_NAME}:${IMAGE_TAG}" \
    96                 --up \
    97                 --down \
    98                 --test=ginkgo \
    99                 -- \
   100                 --use-built-binaries true \
   101                 --parallel=30 \
   102                 --skip-regex='\[Driver:.gcepd\]|\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]'
   103            env:
   104              - name: USE_DOCKERIZED_BUILD
   105                value: "true"
   106            # docker-in-docker needs privileged mode
   107            securityContext:
   108              privileged: true
   109            resources:
   110              limits:
   111                cpu: 8
   112                memory: 10Gi
   113              requests:
   114                cpu: 8
   115                memory: 10Gi
   116  
   117    - name: pull-cloud-provider-aws-e2e-kubetest2-quick
   118      cluster: eks-prow-build-cluster
   119      skip_if_only_changed: "^docs/|^\\.github/|\\.(md)$|^(LICENSE|OWNERS)$"
   120      skip_branches:
   121        - release-\d+\.\d+  # per-release image
   122      annotations:
   123        testgrid-alert-stale-results-hours: "24"
   124        testgrid-create-test-group: "true"
   125        testgrid-num-failures-to-alert: "10"
   126        testgrid-dashboards: presubmits-ec2
   127      labels:
   128        preset-e2e-containerd-ec2: "true"
   129        preset-dind-enabled: "true"
   130        preset-aws-credential-aws-shared-testing: "true"
   131      path_alias: k8s.io/cloud-provider-aws
   132      optional: true
   133      decorate: true
   134      decoration_config:
   135        timeout: 4h
   136      extra_refs:
   137        - org: kubernetes
   138          repo: kubernetes
   139          base_ref: master
   140          path_alias: k8s.io/kubernetes
   141      spec:
   142        serviceAccountName: aws-shared-testing-role
   143        containers:
   144          - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master
   145            command:
   146              - runner.sh
   147            args:
   148              - bash
   149              - -c
   150              - |
   151                GOPROXY=direct go install sigs.k8s.io/provider-aws-test-infra/kubetest2-ec2@latest
   152  
   153                VERSION=$(git describe --dirty --tags --match='v*')
   154                BUILD_IMAGE=ko.local:${VERSION}
   155                REGION=${REGION:-"us-east-1"}
   156  
   157                make switch-to-latest-k8s ko-build-local
   158  
   159                AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text)
   160                IMAGE_NAME=${AWS_ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com/provider-aws/cloud-controller-manager
   161                IMAGE_TAG=${VERSION}
   162  
   163                echo "Building and pushing test driver image to ${IMAGE_NAME}:${IMAGE_TAG}"
   164                aws ecr get-login-password --region "${REGION}" | docker login --username AWS --password-stdin "${AWS_ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com"
   165                docker tag "${BUILD_IMAGE}" "${IMAGE_NAME}:${IMAGE_TAG}"
   166                docker push "${IMAGE_NAME}:${IMAGE_TAG}"
   167  
   168                VERSION=$(curl -Ls https://dl.k8s.io/ci/fast/latest-fast.txt)
   169                kubetest2 ec2 \
   170                 --stage https://dl.k8s.io/ci/fast/ \
   171                 --external-cloud-provider true \
   172                 --external-cloud-provider-image="${IMAGE_NAME}:${IMAGE_TAG}" \
   173                 --version $VERSION \
   174                 --up \
   175                 --down \
   176                 --test=ginkgo \
   177                 -- \
   178                 --parallel=30 \
   179                 --test-package-url=https://dl.k8s.io/ \
   180                 --test-package-dir=ci/fast \
   181                 --test-package-marker=latest-fast.txt \
   182                 --focus-regex='Pods should be submitted and removed'
   183            env:
   184              - name: USE_DOCKERIZED_BUILD
   185                value: "true"
   186            # docker-in-docker needs privileged mode
   187            securityContext:
   188              privileged: true
   189            resources:
   190              limits:
   191                cpu: 8
   192                memory: 10Gi
   193              requests:
   194                cpu: 8
   195                memory: 10Gi