consul/.github/workflows/test-integrations-windows.yml

1209 lines
50 KiB
YAML
Raw Normal View History

Envoy Integration Test Windows (#18007) * [CONSUL-395] Update check_hostport and Usage (#40) * [CONSUL-397] Copy envoy binary from Image (#41) * [CONSUL-382] Support openssl in unique test dockerfile (#43) * [CONSUL-405] Add bats to single container (#44) * [CONSUL-414] Run Prometheus Test Cases and Validate Changes (#46) * [CONSUL-410] Run Jaeger in Single container (#45) * [CONSUL-412] Run test-sds-server in single container (#48) * [CONSUL-408] Clean containers (#47) * [CONSUL-384] Rebase and sync fork (#50) * [CONSUL-415] Create Scenarios Troubleshooting Docs (#49) * [CONSUL-417] Update Docs Single Container (#51) * [CONSUL-428] Add Socat to single container (#54) * [CONSUL-424] Replace pkill in kill_envoy function (#52) * [CONSUL-434] Modify Docker run functions in Helper script (#53) * [CONSUL-435] Replace docker run in set_ttl_check_state & wait_for_agent_service_register functions (#55) * [CONSUL-438] Add netcat (nc) in the Single container Dockerfile (#56) * [CONSUL-429] Replace Docker run with Docker exec (#57) * [CONSUL-436] Curl timeout and run tests (#58) * [CONSUL-443] Create dogstatsd Function (#59) * [CONSUL-431] Update Docs Netcat (#60) * [CONSUL-439] Parse nc Command in function (#61) * [CONSUL-463] Review curl Exec and get_ca_root Func (#63) * [CONSUL-453] Docker hostname in Helper functions (#64) * [CONSUL-461] Test wipe volumes without extra cont (#66) * [CONSUL-454] Check ports in the Server and Agent containers (#65) * [CONSUL-441] Update windows dockerfile with version (#62) * [CONSUL-466] Review case-grpc Failing Test (#67) * [CONSUL-494] Review case-cfg-resolver-svc-failover (#68) * [CONSUL-496] Replace docker_wget & docker_curl (#69) * [CONSUL-499] Cleanup Scripts - Remove nanoserver (#70) * [CONSUL-500] Update Troubleshooting Docs (#72) * [CONSUL-502] Pull & Tag Envoy Windows Image (#73) * [CONSUL-504] Replace docker run in docker_consul (#76) * [CONSUL-505] Change admin_bind * [CONSUL-399] Update envoy to 1.23.1 (#78) * [CONSUL-510] Support case-wanfed-gw on Windows (#79) * [CONSUL-506] Update troubleshooting Documentation (#80) * [CONSUL-512] Review debug_dump_volumes Function (#81) * [CONSUL-514] Add zipkin to Docker Image (#82) * [CONSUL-515] Update Documentation (#83) * [CONSUL-529] Support case-consul-exec (#86) * [CONSUL-530] Update Documentation (#87) * [CONSUL-530] Update default consul version 1.13.3 * [CONSUL-539] Cleanup (#91) * [CONSUL-546] Scripts Clean-up (#92) * [CONSUL-491] Support admin_access_log_path value for Windows (#71) * [CONSUL-519] Implement mkfifo Alternative (#84) * [CONSUL-542] Create OS Specific Files for Envoy Package (#88) * [CONSUL-543] Create exec_supported.go (#89) * [CONSUL-544] Test and Build Changes (#90) * Implement os.DevNull * using mmap instead of disk files * fix import in exec-unix * fix nmap open too many arguemtn * go fmt on file * changelog file * fix go mod * Update .changelog/17694.txt Co-authored-by: Dhia Ayachi <dhia@hashicorp.com> * different mmap library * fix bootstrap json * some fixes * chocolatey version fix and image fix * using different library * fix Map funciton call * fix mmap call * fix tcp dump * fix tcp dump * windows tcp dump * Fix docker run * fix tests * fix go mod * fix version 16.0 * fix version * fix version dev * sleep to debug * fix sleep * fix permission issue * fix permission issue * fix permission issue * fix command * fix command * fix funciton * fix assert config entry status command not found * fix command not found assert_cert_has_cn * fix command not found assert_upstream_missing * fix command not found assert_upstream_missing_once * fix command not found get_upstream_endpoint * fix command not found get_envoy_public_listener_once * fix command not found * fix test cases * windows integration test workflow github * made code similar to unix using npipe * fix go.mod * fix dialing of npipe * dont wait * check size of written json * fix undefined n * running * fix dep * fix syntax error * fix workflow file * windows runner * fix runner * fix from json * fix runs on * merge connect envoy * fix cin path * build * fix file name * fix file name * fix dev build * remove unwanted code * fix upload * fix bin name * fix path * checkout current branch * fix path * fix tests * fix shell bash for windows sh files * fix permission of run-test.sh * removed docker dev * added shell bash for tests * fix tag * fix win=true * fix cd * added dev * fix variable undefined * removed failing tests * fix tcp dump image * fix curl * fix curl * tcp dump path * fix tcpdump path * fix curl * fix curl install * stop removing intermediate containers * fix tcpdump docker image * revert -rm * --rm=false * makeing docker image before * fix tcpdump * removed case consul exec * removed terminating gateway simple * comment case wasm * removed data dog * comment out upload coverage * uncomment case-consul-exec * comment case consul exec * if always * logs * using consul 1.17.0 * fix quotes * revert quotes * redirect to dev null * Revert version * revert consul connect * fix version * removed envoy connect * not using function * change log * docker logs * fix logs * restructure bad authz * rmeoved dev null * output * fix file descriptor * fix cacert * fix cacert * fix ca cert * cacert does not work in windows curl * fix func * removed docker logs * added sleep * fix tls * commented case-consul-exec * removed echo * retry docker consul * fix upload bin * uncomment consul exec * copying consul.exe to docker image * copy fix * fix paths * fix path * github workspace path * latest version * Revert "latest version" This reverts commit 5a7d7b82d9e7553bcb01b02557ec8969f9deba1d. * commented consul exec * added ssl revoke best effort * revert best effort * removed unused files * rename var name and change dir * windows runner * permission * needs setup fix * swtich to github runner * fix file path * fix path * fix path * fix path * fix path * fix path * fix build paths * fix tag * nightly runs * added matrix in github workflow, renamed files * fix job * fix matrix * removed brackes * from json * without using job matrix * fix quotes * revert job matrix * fix workflow * fix comment * added comment * nightly runs * removed datadog ci as it is already measured in linux one * running test * Revert "running test" This reverts commit 7013d15a23732179d18ec5d17336e16b26fab5d4. * pr comment fixes * running test now * running subset of test * running subset of test * job matrix * shell bash * removed bash shell * linux machine for job matrix * fix output * added cat to debug * using ubuntu latest * fix job matrix * fix win true * fix go test * revert job matrix --------- Co-authored-by: Jose Ignacio Lorenzo <74208929+joselo85@users.noreply.github.com> Co-authored-by: Franco Bruno Lavayen <cocolavayen@gmail.com> Co-authored-by: Ivan K Berlot <ivanberlot@gmail.com> Co-authored-by: Ezequiel Fernández Ponce <20102608+ezfepo@users.noreply.github.com> Co-authored-by: joselo85 <joseignaciolorenzo85@gmail.com> Co-authored-by: Ezequiel Fernández Ponce <ezequiel.fernandez@southworks.com> Co-authored-by: Dhia Ayachi <dhia@hashicorp.com>
2023-07-21 14:56:00 +00:00
# Copyright (c) HashiCorp, Inc.
# SPDX-License-Identifier: MPL-2.0
name: test-integrations-windows
on:
schedule:
# * is a special character in YAML so you have to quote this string
# Run nightly at 12AM UTC/8PM EST/5PM PST.
- cron: '0 0 * * *'
env:
TEST_RESULTS_DIR: /tmp/test-results
TEST_RESULTS_ARTIFACT_NAME: test-results
CONSUL_LICENSE: ${{ secrets.CONSUL_LICENSE }}
GOTAGS: ${{ endsWith(github.repository, '-enterprise') && 'consulent' || '' }}
GOTESTSUM_VERSION: "1.9.0"
CONSUL_BINARY_UPLOAD_NAME: consul.exe
# strip the hashicorp/ off the front of github.repository for consul
CONSUL_LATEST_IMAGE_NAME: ${{ endsWith(github.repository, '-enterprise') && github.repository || 'consul' }}
GOPRIVATE: github.com/hashicorp # Required for enterprise deps
jobs:
setup:
runs-on: ubuntu-latest
name: Setup
outputs:
compute-small: ${{ steps.runners.outputs.compute-small }}
compute-medium: ${{ steps.runners.outputs.compute-medium }}
compute-large: ${{ steps.runners.outputs.compute-large }}
compute-xl: ${{ steps.runners.outputs.compute-xl }}
enterprise: ${{ steps.runners.outputs.enterprise }}
steps:
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
- id: runners
run: .github/scripts/get_runner_classes_windows.sh
dev-build:
uses: ./.github/workflows/reusable-dev-build-windows.yml
with:
runs-on: ${{ needs.setup.outputs.compute-xl }}
repository-name: ${{ github.repository }}
uploaded-binary-name: 'consul.exe'
secrets:
elevated-github-token: ${{ secrets.ELEVATED_GITHUB_TOKEN }}
# NOTE: Jobs needs to be added here manually. Jobs when run together on windows fails intermittently.
# So they are run independently of each other.
envoy-integration-test:
needs:
- setup
- dev-build
runs-on: ${{ fromJSON(needs.setup.outputs.compute-large) }}
permissions:
id-token: write # NOTE: this permission is explicitly required for Vault auth.
contents: read
strategy:
fail-fast: false
matrix:
envoy-version: [ "1.23.10", "1.24.8", "1.25.7", "1.26.2" ]
xds-target: [ "server", "client" ]
env:
ENVOY_VERSION: ${{ matrix.envoy-version }}
XDS_TARGET: ${{ matrix.xds-target }}
AWS_LAMBDA_REGION: us-west-2
steps:
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
- uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1
with:
go-version-file: 'go.mod'
- name: Fetch binary
uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2
with:
name: '${{ env.CONSUL_BINARY_UPLOAD_NAME }}'
path: ${{ github.workspace }}
- name: Restore mode+x
run: chmod +x ${{ github.workspace }}\consul.exe
- name: Setup TcpDump Docker Image
shell: bash
run: |
cd test/integration/connect/envoy
curl -sSL "https://asheshvidyut-bucket.s3.ap-southeast-2.amazonaws.com/tcpdump.exe" -o tcpdump.exe
docker build -t envoy-tcpdump -f Dockerfile-tcpdump-windows .
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@4b4e9c3e2d4531116a6f8ba8e71fc6e2cb6e6c8c # v2.5.0
- name: Docker build consul
run: docker build -t windows/consul -f Dockerfile-windows .
- name: Docker build consul local
shell: bash
run: cd build-support/windows && ./build-consul-local-images.sh
- name: Docker build consul dev
shell: bash
run: cd build-support/windows && ./build-consul-dev-image.sh
# https://hashicorp.atlassian.net/browse/NET-4973
# ^ Ticket to figure out why grouping test case is failing on Windows Machine
- name: Envoy Integration Tests for windows case-api-gateway-http-hostnames
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-api-gateway-http-hostnames"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-api-gateway-http-hostnames" -win=true
- name: Envoy Integration Tests for windows case-api-gateway-http-simple
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-api-gateway-http-simple"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-api-gateway-http-simple" -win=true
- name: Envoy Integration Tests for windows case-api-gateway-http-splitter-targets
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-api-gateway-http-splitter-targets"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-api-gateway-http-splitter-targets" -win=true
- name: Envoy Integration Tests for windows case-api-gateway-http-tls-overlapping-hosts
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-api-gateway-http-tls-overlapping-hosts"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-api-gateway-http-tls-overlapping-hosts" -win=true
- name: Envoy Integration Tests for windows case-api-gateway-tcp-conflicted
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-api-gateway-tcp-conflicted"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-api-gateway-tcp-conflicted" -win=true
- name: Envoy Integration Tests for windows case-api-gateway-tcp-simple
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-api-gateway-tcp-simple"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-api-gateway-tcp-simple" -win=true
- name: Envoy Integration Tests for windows case-api-gateway-tcp-tls-overlapping-hosts
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-api-gateway-tcp-tls-overlapping-hosts"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-api-gateway-tcp-tls-overlapping-hosts" -win=true
- name: Envoy Integration Tests for windows case-badauthz
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-badauthz"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-badauthz" -win=true
- name: Envoy Integration Tests for windows case-basic
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-basic"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-basic" -win=true
- name: Envoy Integration Tests for windows case-centralconf
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-centralconf"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-centralconf" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-cluster-peering-failover
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-cluster-peering-failover"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-cluster-peering-failover" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-dc-failover-gateways-none
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-dc-failover-gateways-none"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-dc-failover-gateways-none" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-dc-failover-gateways-remote
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-dc-failover-gateways-remote"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-dc-failover-gateways-remote" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-defaultsubset
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-defaultsubset"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-defaultsubset" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-features
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-features"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-features" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-subset-onlypassing
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-subset-onlypassing"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-subset-onlypassing" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-subset-redirect
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-subset-redirect"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-subset-redirect" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-svc-failover
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-svc-failover"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-svc-failover" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-svc-redirect-http
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-svc-redirect-http"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-svc-redirect-http" -win=true
- name: Envoy Integration Tests for windows case-cfg-resolver-svc-redirect-tcp
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-resolver-svc-redirect-tcp"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-resolver-svc-redirect-tcp" -win=true
- name: Envoy Integration Tests for windows case-cfg-router-features
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-router-features"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-router-features" -win=true
- name: Envoy Integration Tests for windows case-cfg-splitter-cluster-peering
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-splitter-cluster-peering"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-splitter-cluster-peering" -win=true
- name: Envoy Integration Tests for windows case-cfg-splitter-features
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-splitter-features"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-splitter-features" -win=true
- name: Envoy Integration Tests for windows case-cfg-splitter-peering-ingress-gateways
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cfg-splitter-peering-ingress-gateways"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cfg-splitter-peering-ingress-gateways" -win=true
# This test runs fine on windows machine but fails on CI
# Task to be picked later on - https://hashicorp.atlassian.net/browse/NET-4972
# - name: Envoy Integration Tests for windows case-consul-exec
# if: always()
# shell: bash
# env:
# GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
# GOTESTSUM_FORMAT: standard-verbose
# COMPOSE_INTERACTIVE_NO_CLI: 1
# LAMBDA_TESTS_ENABLED: "true"
# # tput complains if this isn't set to something.
# TERM: ansi
# run: |
# #shellcheck disable=SC2001
# echo "Running Integration Test case-consul-exec"
# # shellcheck disable=SC2001
# go test -v -timeout=30m -tags integration \
# ./test/integration/connect/envoy -run="TestEnvoy/case-consul-exec" -win=true
- name: Envoy Integration Tests for windows case-cross-peer-control-plane-mgw
if: always()
shell: bash
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cross-peer-control-plane-mgw"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cross-peer-control-plane-mgw" -win=true
- name: Envoy Integration Tests for windows case-cross-peers
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cross-peers"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cross-peers" -win=true
- name: Envoy Integration Tests for windows case-cross-peers-http
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cross-peers-http"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cross-peers-http" -win=true
- name: Envoy Integration Tests for windows case-cross-peers-http-router
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cross-peers-http-router"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cross-peers-http-router" -win=true
- name: Envoy Integration Tests for windows case-cross-peers-resolver-redirect-tcp
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-cross-peers-resolver-redirect-tcp"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-cross-peers-resolver-redirect-tcp" -win=true
- name: Envoy Integration Tests for windows case-dogstatsd-udp
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-dogstatsd-udp"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-dogstatsd-udp" -win=true
- name: Envoy Integration Tests for windows case-envoyext-ratelimit
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-envoyext-ratelimit"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-envoyext-ratelimit" -win=true
- name: Envoy Integration Tests for windows case-expose-checks
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-expose-checks"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-expose-checks" -win=true
- name: Envoy Integration Tests for windows case-gateway-without-services
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-gateway-without-services"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-gateway-without-services" -win=true
- name: Envoy Integration Tests for windows case-gateways-local
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-gateways-local"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-gateways-local" -win=true
- name: Envoy Integration Tests for windows case-gateways-remote
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-gateways-remote"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-gateways-remote" -win=true
- name: Envoy Integration Tests for windows case-grpc
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-grpc"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-grpc" -win=true
- name: Envoy Integration Tests for windows case-http
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-http"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-http" -win=true
- name: Envoy Integration Tests for windows case-http-badauthz
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-http-badauthz"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-http-badauthz" -win=true
- name: Envoy Integration Tests for windows case-ingress-gateway-grpc
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-ingress-gateway-grpc"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-ingress-gateway-grpc" -win=true
- name: Envoy Integration Tests for windows case-ingress-gateway-http
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-ingress-gateway-http"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-ingress-gateway-http" -win=true
- name: Envoy Integration Tests for windows case-ingress-gateway-multiple-services
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-ingress-gateway-multiple-services"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-ingress-gateway-multiple-services" -win=true
- name: Envoy Integration Tests for windows case-ingress-gateway-peering-failover
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-ingress-gateway-peering-failover"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-ingress-gateway-peering-failover" -win=true
- name: Envoy Integration Tests for windows case-ingress-gateway-simple
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-ingress-gateway-simple"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-ingress-gateway-simple" -win=true
- name: Envoy Integration Tests for windows case-ingress-mesh-gateways-resolver
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-ingress-mesh-gateways-resolver"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-ingress-mesh-gateways-resolver" -win=true
- name: Envoy Integration Tests for windows case-l7-intentions
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-l7-intentions"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-l7-intentions" -win=true
- name: Envoy Integration Tests for windows case-multidc-rsa-ca
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-multidc-rsa-ca"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-multidc-rsa-ca" -win=true
- name: Envoy Integration Tests for windows case-prometheus
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-prometheus"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-prometheus" -win=true
- name: Envoy Integration Tests for windows case-property-override
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-property-override"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-property-override" -win=true
- name: Envoy Integration Tests for windows case-stats-proxy
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-stats-proxy"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-stats-proxy" -win=true
- name: Envoy Integration Tests for windows case-statsd-udp
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-statsd-udp"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-statsd-udp" -win=true
- name: Envoy Integration Tests for windows case-terminating-gateway-hostnames
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-terminating-gateway-hostnames"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-terminating-gateway-hostnames" -win=true
- name: Envoy Integration Tests for windows case-terminating-gateway-simple
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-terminating-gateway-simple"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-terminating-gateway-simple" -win=true
- name: Envoy Integration Tests for windows case-terminating-gateway-without-services
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-terminating-gateway-without-services"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-terminating-gateway-without-services" -win=true
- name: Envoy Integration Tests for windows case-upstream-config
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-upstream-config"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-upstream-config" -win=true
- name: Envoy Integration Tests for windows case-wanfed-gw
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-wanfed-gw"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-wanfed-gw" -win=true
- name: Envoy Integration Tests for windows case-ingress-gateway-sds
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-ingress-gateway-sds"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-ingress-gateway-sds" -win=true
- name: Envoy Integration Tests for windows case-lua
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-lua"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-lua" -win=true
- name: Envoy Integration Tests for windows case-terminating-gateway-subsets
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-terminating-gateway-subsets"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-terminating-gateway-subsets" -win=true
# Skipping this because - https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/wasm_filter
# - name: Envoy Integration Tests for windows case-wasm
# shell: bash
# env:
# GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
# GOTESTSUM_FORMAT: standard-verbose
# COMPOSE_INTERACTIVE_NO_CLI: 1
# LAMBDA_TESTS_ENABLED: "true"
# # tput complains if this isn't set to something.
# TERM: ansi
# run: |
# # shellcheck disable=SC2001
# echo "Running Integration Test case-wasm"
# # shellcheck disable=SC2001
# go test -v -timeout=30m -tags integration \
# ./test/integration/connect/envoy -run="TestEnvoy/case-wasm" -win=true
# Skipping because of - cacert is not available in curl windows
# https://www.phillipsj.net/posts/windows-curl-and-self-signed-certs/
# - name: Envoy Integration Tests for windows case-ingress-gateway-tls
# shell: bash
# if: always()
# env:
# GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
# GOTESTSUM_FORMAT: standard-verbose
# COMPOSE_INTERACTIVE_NO_CLI: 1
# LAMBDA_TESTS_ENABLED: "true"
# # tput complains if this isn't set to something.
# TERM: ansi
# run: |
# # shellcheck disable=SC2001
# echo "Running Integration Test case-ingress-gateway-tls"
# # shellcheck disable=SC2001
# go test -v -timeout=30m -tags integration \
# ./test/integration/connect/envoy -run="TestEnvoy/case-ingress-gateway-tls" -win=true
- name: Envoy Integration Tests for windows case-mesh-to-lambda
shell: bash
if: always()
env:
GOTESTSUM_JUNITFILE: ${{ env.TEST_RESULTS_DIR }}/results.xml
GOTESTSUM_FORMAT: standard-verbose
COMPOSE_INTERACTIVE_NO_CLI: 1
LAMBDA_TESTS_ENABLED: "true"
# tput complains if this isn't set to something.
TERM: ansi
run: |
# shellcheck disable=SC2001
echo "Running Integration Test case-mesh-to-lambda"
# shellcheck disable=SC2001
go test -v -timeout=30m -tags integration \
./test/integration/connect/envoy -run="TestEnvoy/case-mesh-to-lambda" -win=true
# NOTE: ENT specific step as we store secrets in Vault.
- name: Authenticate to Vault
if: ${{ endsWith(github.repository, '-enterprise') }}
id: vault-auth
run: vault-auth
# NOTE: ENT specific step as we store secrets in Vault.
- name: Fetch Secrets
if: ${{ endsWith(github.repository, '-enterprise') }}
id: secrets
uses: hashicorp/vault-action@v2.5.0
with:
url: ${{ steps.vault-auth.outputs.addr }}
caCertificate: ${{ steps.vault-auth.outputs.ca_certificate }}
token: ${{ steps.vault-auth.outputs.token }}
secrets: |
kv/data/github/${{ github.repository }}/datadog apikey | DATADOG_API_KEY;
- name: Prepare datadog-ci
shell: bash
if: ${{ !endsWith(github.repository, '-enterprise') }}
run: |
curl -L --fail "https://github.com/DataDog/datadog-ci/releases/download/v2.17.2/datadog-ci_win-x64.exe" --output "C:/datadog-ci"
chmod +x C:/datadog-ci
- name: Upload coverage
# do not run on forks
if: github.event.pull_request.head.repo.full_name == github.repository
env:
DATADOG_API_KEY: "${{ endsWith(github.repository, '-enterprise') && env.DATADOG_API_KEY || secrets.DATADOG_API_KEY }}"
DD_ENV: ci
run: C:/datadog-ci junit upload --service "$GITHUB_REPOSITORY" $TEST_RESULTS_DIR/results.xml
test-integrations-success:
needs:
- envoy-integration-test
runs-on: 'ubuntu-latest'
if: ${{ always() }}
steps:
- name: evaluate upstream job results
run: |
# exit 1 if failure or cancelled result for any upstream job
if printf '${{ toJSON(needs) }}' | grep -E -i '\"result\": \"(failure|cancelled)\"'; then
printf "Tests failed or workflow cancelled:\n\n${{ toJSON(needs) }}"
exit 1
fi