mirror of
https://github.com/status-im/consul.git
synced 2025-01-24 12:40:17 +00:00
2a8bf5df61
* wasm integration tests for local and remote wasm files refactoring and cleanup for wasm testing remove wasm debug logging PR feedback, wasm build lock correct path pattern for wasm build files Add new helper function to minimize changes to existing test code Remove extra param mod tidy add custom service setup to test lib add wait until static server sidecar can reach nginx sidecar Doc comments PR feedback Update workflows to compile wasm for integration tests Fix docker build path Fix package name for linter Update makefile, fix redeclared function Update expected wasm filename Debug test ls in workflow remove pwd in favor of relative path more debugging Build wasm in compatability tests as well Build wasm directly in ci rather than in container Debug tinygo and llvm version Change wasm file extension Remove tinygo debugging Remove extra comments * Add compiled wasm and build instructions
61 lines
2.0 KiB
Go
61 lines
2.0 KiB
Go
// Copyright (c) HashiCorp, Inc.
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
package topology
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
|
|
"github.com/hashicorp/consul/api"
|
|
libassert "github.com/hashicorp/consul/test/integration/consul-container/libs/assert"
|
|
libcluster "github.com/hashicorp/consul/test/integration/consul-container/libs/cluster"
|
|
libservice "github.com/hashicorp/consul/test/integration/consul-container/libs/service"
|
|
)
|
|
|
|
// CreateServices
|
|
func CreateServices(t *testing.T, cluster *libcluster.Cluster, protocol string) (libservice.Service, libservice.Service) {
|
|
node := cluster.Agents[0]
|
|
client := node.GetClient()
|
|
|
|
// Register service as HTTP
|
|
serviceDefault := &api.ServiceConfigEntry{
|
|
Kind: api.ServiceDefaults,
|
|
Name: libservice.StaticServerServiceName,
|
|
Protocol: protocol,
|
|
}
|
|
|
|
ok, _, err := client.ConfigEntries().Set(serviceDefault, nil)
|
|
require.NoError(t, err, "error writing HTTP service-default")
|
|
require.True(t, ok, "did not write HTTP service-default")
|
|
|
|
// Create a service and proxy instance
|
|
serviceOpts := &libservice.ServiceOpts{
|
|
Name: libservice.StaticServerServiceName,
|
|
ID: "static-server",
|
|
HTTPPort: 8080,
|
|
GRPCPort: 8079,
|
|
}
|
|
|
|
if protocol == "grpc" {
|
|
serviceOpts.RegisterGRPC = true
|
|
}
|
|
|
|
// Create a service and proxy instance
|
|
_, serverConnectProxy, err := libservice.CreateAndRegisterStaticServerAndSidecar(node, serviceOpts)
|
|
require.NoError(t, err)
|
|
|
|
libassert.CatalogServiceExists(t, client, fmt.Sprintf("%s-sidecar-proxy", libservice.StaticServerServiceName), nil)
|
|
libassert.CatalogServiceExists(t, client, libservice.StaticServerServiceName, nil)
|
|
|
|
// Create a client proxy instance with the server as an upstream
|
|
clientConnectProxy, err := libservice.CreateAndRegisterStaticClientSidecar(node, "", false, false)
|
|
require.NoError(t, err)
|
|
|
|
libassert.CatalogServiceExists(t, client, fmt.Sprintf("%s-sidecar-proxy", libservice.StaticClientServiceName), nil)
|
|
|
|
return serverConnectProxy, clientConnectProxy
|
|
}
|