Skip to content
Closed
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
8 changes: 4 additions & 4 deletions config/blobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ jq/jq-1.8.1-linux-amd64.tgz:
size: 993240
object_id: e8793d0d-eec7-4b5e-78ba-656714b86ca2
sha: sha256:8f502a0c127e2de360f05071a6806bdc033df10c958c1a2b0bcfe089b1c74e39
proxy/envoy-ff3fe7f0bb9e4ac6a283ea38bf9ee3f375530d56-1.35.3.tgz:
size: 29060798
object_id: 3538ac10-35fc-4025-4a8f-148c1599fa0a
sha: sha256:2f6bc2bbadb688b0f2d45085a8b0aec43341d9e9b0ce1dfcb1ba1687d683392b
proxy/envoy-dc2d3098ae5641555f15c71d5bb5ce0060a8015c-1.36.2.tgz:
size: 29544204
object_id: bc4a6c9a-8305-4a02-7faf-3ce1d08c3df1
sha: sha256:50a9bed2f7a78c15d404b71ed2b0fd53b2a7ccebb3f6543e454a3842248cc495
tar/tar-1737494392.tgz:
size: 547142
object_id: 8244d6bf-af0b-483b-4635-95f453c04215
Expand Down
2 changes: 1 addition & 1 deletion packages/proxy/packaging
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@ set -e

# Install envoy binary
cd proxy
tar -xzf envoy-ff3fe7f0bb9e4ac6a283ea38bf9ee3f375530d56-1.35.3.tgz
tar -xzf envoy-dc2d3098ae5641555f15c71d5bb5ce0060a8015c-1.36.2.tgz
mv envoy ${BOSH_INSTALL_TARGET}
2 changes: 1 addition & 1 deletion packages/proxy/spec
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ name: proxy
dependencies: []

files:
- proxy/envoy-ff3fe7f0bb9e4ac6a283ea38bf9ee3f375530d56-1.35.3.tgz
- proxy/envoy-dc2d3098ae5641555f15c71d5bb5ce0060a8015c-1.36.2.tgz
67 changes: 65 additions & 2 deletions src/code.cloudfoundry.org/inigo/cell/cell_suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,14 @@ import (
"testing"
"time"

auctioneerconfig "code.cloudfoundry.org/auctioneer/cmd/auctioneer/config"
"code.cloudfoundry.org/durationjson"
fileserverconfig "code.cloudfoundry.org/fileserver/cmd/file-server/config"
"code.cloudfoundry.org/guardian/gqt/runner"
"code.cloudfoundry.org/lager/v3"
"code.cloudfoundry.org/localip"
repconfig "code.cloudfoundry.org/rep/cmd/rep/config"
routeemitterconfig "code.cloudfoundry.org/route-emitter/cmd/route-emitter/config"
. "github.com/onsi/ginkgo/v2"
. "github.com/onsi/gomega"
"github.com/onsi/gomega/gexec"
Expand All @@ -23,12 +27,18 @@ import (
"code.cloudfoundry.org/bbs"
bbsconfig "code.cloudfoundry.org/bbs/cmd/bbs/config"
"code.cloudfoundry.org/bbs/serviceclient"
"code.cloudfoundry.org/bbs/test_helpers"
loggingclient "code.cloudfoundry.org/diego-logging-client"
"code.cloudfoundry.org/diego-logging-client/testhelpers"
"code.cloudfoundry.org/fixtures"
"code.cloudfoundry.org/garden"
"code.cloudfoundry.org/go-loggregator/v9/rpc/loggregator_v2"
"code.cloudfoundry.org/inigo/helpers"
"code.cloudfoundry.org/inigo/helpers/certauthority"
"code.cloudfoundry.org/inigo/helpers/portauthority"
"code.cloudfoundry.org/inigo/inigo_announcement_server"
"code.cloudfoundry.org/inigo/world"
locketconfig "code.cloudfoundry.org/locket/cmd/locket/config"
)

const cellSuiteEventuallyTestTimeout = 30 * time.Second
Expand All @@ -45,6 +55,17 @@ var (
gardenRunner *runner.GardenRunner
lgr lager.Logger
suiteTempDir string

testMetricsChan chan *loggregator_v2.Envelope
signalMetricsChan chan struct{}
metronIngressSetup *test_helpers.MetronIngressSetup
testIngressServer *testhelpers.TestIngressServer

modifyFunAuctioneerLoggregatorConfig func(cfg *auctioneerconfig.AuctioneerConfig)
modifyFunRouteEmitterLoggregatorConfig func(cfg *routeemitterconfig.RouteEmitterConfig)
modifyFunRepLoggregatorConfig func(cfg *repconfig.RepConfig)
modifyFunFileServerLoggregatorConfig func(cfg *fileserverconfig.FileServerConfig)
modifyFuncBBSLoggregatorConfig func(cfg *bbsconfig.BBSConfig)
)

func overrideConvergenceRepeatInterval(conf *bbsconfig.BBSConfig) {
Expand Down Expand Up @@ -121,16 +142,47 @@ var _ = SynchronizedAfterSuite(func() {
})

var _ = BeforeEach(func() {
var err error
metronIngressSetup, err = test_helpers.StartMetronIngress()
Expect(err).NotTo(HaveOccurred())
testIngressServer = metronIngressSetup.Server
signalMetricsChan = metronIngressSetup.SignalMetricsChan
testMetricsChan = metronIngressSetup.TestMetricsChan

modifyFuncLocketLoggregatorConfig := func(cfg *locketconfig.LocketConfig) {
cfg.LoggregatorConfig = setupMetronConfig(cfg.LoggregatorConfig)
}

modifyFuncBBSLoggregatorConfig = func(cfg *bbsconfig.BBSConfig) {
cfg.LoggregatorConfig = setupMetronConfig(cfg.LoggregatorConfig)
}

modifyFunAuctioneerLoggregatorConfig = func(cfg *auctioneerconfig.AuctioneerConfig) {
cfg.LoggregatorConfig = setupMetronConfig(cfg.LoggregatorConfig)
}

modifyFunRouteEmitterLoggregatorConfig = func(cfg *routeemitterconfig.RouteEmitterConfig) {
cfg.LoggregatorConfig = setupMetronConfig(cfg.LoggregatorConfig)
}

modifyFunRepLoggregatorConfig = func(cfg *repconfig.RepConfig) {
cfg.LoggregatorConfig = setupMetronConfig(cfg.LoggregatorConfig)
}

modifyFunFileServerLoggregatorConfig = func(cfg *fileserverconfig.FileServerConfig) {
cfg.LoggregatorConfig = setupMetronConfig(cfg.LoggregatorConfig)
}

plumbing = ginkgomon.Invoke(grouper.NewOrdered(os.Kill, grouper.Members{
{Name: "initial-services", Runner: grouper.NewParallel(os.Kill, grouper.Members{
{Name: "sql", Runner: componentMaker.SQL()},
{Name: "nats", Runner: componentMaker.NATS()},
})},
{Name: "locket", Runner: componentMaker.Locket()},
{Name: "locket", Runner: componentMaker.Locket(modifyFuncLocketLoggregatorConfig)},
}))
gardenRunner = componentMaker.Garden()
gardenProcess = ginkgomon.Invoke(gardenRunner)
bbsRunner = componentMaker.BBS()
bbsRunner = componentMaker.BBS(modifyFuncBBSLoggregatorConfig)
bbsProcess = ginkgomon.Invoke(bbsRunner)

lgr = lager.NewLogger("test")
Expand All @@ -152,6 +204,9 @@ var _ = AfterEach(func() {
helpers.StopProcesses(gardenProcess)
helpers.StopProcesses(plumbing)

testIngressServer.Stop()
close(signalMetricsChan)

Expect(destroyContainerErrors).To(
BeEmpty(),
"%d containers failed to be destroyed!",
Expand Down Expand Up @@ -233,3 +288,11 @@ func CompileTestedExecutables() world.BuiltExecutables {

return builtExecutables
}

func setupMetronConfig(cfg loggingclient.Config) loggingclient.Config {
cfg.APIPort = metronIngressSetup.Port
cfg.CACertPath = fixtures.Path("CA.crt")
cfg.CertPath = fixtures.Path("metron.crt")
cfg.KeyPath = fixtures.Path("metron.key")
return cfg
}
9 changes: 5 additions & 4 deletions src/code.cloudfoundry.org/inigo/cell/converger_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,12 @@ var _ = Describe("Convergence to desired state", func() {
if runtime.GOOS == "windows" {
Skip(" not yet working on windows")
}
fileServer, fileServerStaticDir := componentMaker.FileServer()

fileServer, fileServerStaticDir := componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)

ifritRuntime = ginkgomon.Invoke(grouper.NewParallel(os.Kill, grouper.Members{
{Name: "file-server", Runner: fileServer},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter()},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter(modifyFunRouteEmitterLoggregatorConfig)},
{Name: "router", Runner: componentMaker.Router()},
}))

Expand Down Expand Up @@ -79,7 +80,7 @@ var _ = Describe("Convergence to desired state", func() {

Describe("Executor fault tolerance", func() {
BeforeEach(func() {
auctioneer = ginkgomon.Invoke(componentMaker.Auctioneer())
auctioneer = ginkgomon.Invoke(componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig))
})

Context("when an rep and converger are running", func() {
Expand Down Expand Up @@ -196,7 +197,7 @@ var _ = Describe("Convergence to desired state", func() {
By("restarting the bbs with smaller convergeRepeatInterval")
ginkgomon.Interrupt(bbsProcess)
bbsProcess = ginkgomon.Invoke(componentMaker.BBS(
overrideConvergenceRepeatInterval,
overrideConvergenceRepeatInterval, modifyFuncBBSLoggregatorConfig,
))
})

Expand Down
7 changes: 4 additions & 3 deletions src/code.cloudfoundry.org/inigo/cell/evacuation_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,19 +55,20 @@ var _ = Describe("Evacuation", func() {
}
processGuid = helpers.GenerateGuid()

fileServer, fileServerStaticDir := componentMaker.FileServer()
fileServer, fileServerStaticDir := componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)

By("restarting the bbs with smaller convergeRepeatInterval")
ginkgomon.Interrupt(bbsProcess)
bbsProcess = ginkgomon.Invoke(componentMaker.BBS(
overrideConvergenceRepeatInterval,
modifyFuncBBSLoggregatorConfig,
))

ifritRuntime = ginkgomon.Invoke(grouper.NewParallel(os.Kill, grouper.Members{
{Name: "router", Runner: componentMaker.Router()},
{Name: "file-server", Runner: fileServer},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter()},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter(modifyFunRouteEmitterLoggregatorConfig)},
}))

cellAID = "cell-a"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -126,15 +126,15 @@ var _ = Describe("InstanceIdentity", func() {
OrganizationalUnit: organizationalUnit,
}

fileServer, fileServerStaticDir = componentMaker.FileServer()
fileServer, fileServerStaticDir = componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)
archiveFiles := fixtures.GoServerApp()
archive_helper.CreateTarGZArchive(filepath.Join(fileServerStaticDir, "lrp.tgz"), archiveFiles)
archive_helper.CreateZipArchive(
filepath.Join(fileServerStaticDir, "lrp.zip"),
archiveFiles,
)

rep = componentMaker.Rep(configRepCerts)
rep = componentMaker.Rep(configRepCerts, modifyFunRepLoggregatorConfig)
logger = lagertest.NewTestLogger("metron-agent")
metronAgent = ifrit.RunFunc(func(signals <-chan os.Signal, ready chan<- struct{}) error {
close(ready)
Expand All @@ -145,11 +145,12 @@ var _ = Describe("InstanceIdentity", func() {
})

JustBeforeEach(func() {

cellGroup := grouper.Members{
{Name: "metron-agent", Runner: metronAgent},
{Name: "file-server", Runner: fileServer},
{Name: "rep", Runner: rep},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
}
terminationSignal := os.Interrupt
if runtime.GOOS == "windows" {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ var _ = Describe("LocalRouteEmitter", func() {
processGuid = helpers.GenerateGuid()

var fileServer ifrit.Runner
fileServer, fileServerStaticDir = componentMaker.FileServer()
fileServer, fileServerStaticDir = componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)

cellAID = "cell-a"
cellBID = "cell-b"
Expand All @@ -65,7 +65,7 @@ var _ = Describe("LocalRouteEmitter", func() {
ifritRuntime = ginkgomon.Invoke(grouper.NewParallel(os.Kill, grouper.Members{
{Name: "router", Runner: componentMaker.Router()},
{Name: "file-server", Runner: fileServer},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
}))

archiveFiles = fixtures.GoServerApp()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ var _ = Context("when declarative healthchecks is turned on", func() {
processGuid = helpers.GenerateGuid()

var fileServer ifrit.Runner
fileServer, fileServerStaticDir = componentMaker.FileServer()
fileServer, fileServerStaticDir = componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)

turnOnLongRunningHealthchecks := func(cfg *config.RepConfig) {
cfg.DeclarativeHealthCheckDefaultTimeout = durationjson.Duration(1 * time.Second)
Expand Down Expand Up @@ -106,8 +106,8 @@ var _ = Context("when declarative healthchecks is turned on", func() {
{Name: "file-server", Runner: fileServer},
{Name: "metron-agent", Runner: metronAgent},
{Name: "rep", Runner: componentMaker.Rep(turnOnLongRunningHealthchecks, loggregatorConfig)},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter()},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter(modifyFunRouteEmitterLoggregatorConfig)},
}))

archiveFiles = fixtures.GoServerApp()
Expand Down
11 changes: 6 additions & 5 deletions src/code.cloudfoundry.org/inigo/cell/lrp_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,13 +53,14 @@ var _ = Describe("LRP", func() {
processGuid = helpers.GenerateGuid()

var fileServer ifrit.Runner
fileServer, fileServerStaticDir = componentMaker.FileServer()

fileServer, fileServerStaticDir = componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)
ifritRuntime = ginkgomon.Invoke(grouper.NewParallel(os.Kill, grouper.Members{
{Name: "router", Runner: componentMaker.Router()},
{Name: "file-server", Runner: fileServer},
{Name: "rep", Runner: componentMaker.Rep()},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter()},
{Name: "rep", Runner: componentMaker.Rep(modifyFunRepLoggregatorConfig)},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter(modifyFunRouteEmitterLoggregatorConfig)},
}))

archiveFiles = fixtures.GoServerApp()
Expand Down Expand Up @@ -625,7 +626,7 @@ var _ = Describe("LRP", func() {
By("restarting the bbs with smaller convergeRepeatInterval")
ginkgomon.Interrupt(bbsProcess)
bbsProcess = ginkgomon.Invoke(componentMaker.BBS(
overrideConvergenceRepeatInterval,
overrideConvergenceRepeatInterval, modifyFuncBBSLoggregatorConfig,
))
})

Expand Down
6 changes: 3 additions & 3 deletions src/code.cloudfoundry.org/inigo/cell/network_env_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,17 +35,17 @@ var _ = Describe("Network Environment Variables", func() {
if runtime.GOOS == "windows" {
Skip(" not yet working on windows")
}
fileServer, fileServerStaticDir = componentMaker.FileServer()
fileServer, fileServerStaticDir = componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)
modifyRepConfig = func(*repconfig.RepConfig) {}
guid = helpers.GenerateGuid()
})

JustBeforeEach(func() {
ifritRuntime = ginkgomon.Invoke(grouper.NewParallel(os.Kill, grouper.Members{
{Name: "rep", Runner: componentMaker.Rep(modifyRepConfig)},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
{Name: "router", Runner: componentMaker.Router()},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter()},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter(modifyFunRouteEmitterLoggregatorConfig)},
{Name: "file-server", Runner: fileServer},
}))
})
Expand Down
8 changes: 5 additions & 3 deletions src/code.cloudfoundry.org/inigo/cell/placement_tags_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,17 @@ var _ = Describe("Placement Tags", func() {
guid = helpers.GenerateGuid()

var fileServer ifrit.Runner
fileServer, fileServerStaticDir := componentMaker.FileServer()

fileServer, fileServerStaticDir := componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)
modifyRepConfig := func(config *repconfig.RepConfig) {
config.PlacementTags = []string{"inigo-tag"}
config.OptionalPlacementTags = []string{"inigo-optional-tag"}
}

ifritRuntime = ginkgomon.Invoke(grouper.NewParallel(os.Interrupt, grouper.Members{
{Name: "file-server", Runner: fileServer},
{Name: "rep-with-tag", Runner: componentMaker.Rep(modifyRepConfig)},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "rep-with-tag", Runner: componentMaker.Rep(modifyRepConfig, modifyFunRepLoggregatorConfig)},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
}))

archive_helper.CreateZipArchive(
Expand Down
10 changes: 6 additions & 4 deletions src/code.cloudfoundry.org/inigo/cell/privileges_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,15 @@ var _ = Describe("Privileges", func() {
if runtime.GOOS == "windows" {
Skip(" not yet working on windows")
}
fileServer, fileServerStaticDir := componentMaker.FileServer()

fileServer, fileServerStaticDir := componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)

ifritRuntime = ginkgomon.Invoke(grouper.NewParallel(os.Kill, grouper.Members{
{Name: "router", Runner: componentMaker.Router()},
{Name: "file-server", Runner: fileServer},
{Name: "rep", Runner: componentMaker.Rep()},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter()},
{Name: "rep", Runner: componentMaker.Rep(modifyFunRepLoggregatorConfig)},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
{Name: "route-emitter", Runner: componentMaker.RouteEmitter(modifyFunRouteEmitterLoggregatorConfig)},
}))

test_helper.CreateZipArchive(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,16 +44,17 @@ var _ = Describe("Secure Downloading and Uploading", func() {
}
processGuid = helpers.GenerateGuid()

fileServer, fileServerStaticDir = componentMaker.FileServer()
fileServer, fileServerStaticDir = componentMaker.FileServer(modifyFunFileServerLoggregatorConfig)

archiveFiles = fixtures.GoServerApp()
})

JustBeforeEach(func() {

ifritRuntime = ginkgomon.Invoke(grouper.NewParallel(os.Kill, grouper.Members{
{Name: "file-server", Runner: fileServer},
{Name: "rep", Runner: componentMaker.Rep(cfgs...)},
{Name: "auctioneer", Runner: componentMaker.Auctioneer()},
{Name: "rep", Runner: componentMaker.Rep(modifyFunRepLoggregatorConfig)},
{Name: "auctioneer", Runner: componentMaker.Auctioneer(modifyFunAuctioneerLoggregatorConfig)},
}))
archive_helper.CreateZipArchive(
filepath.Join(fileServerStaticDir, "lrp.zip"),
Expand Down
Loading