Skip to content

Commit 6ebf5de

Browse files
authored
Use different namespace for elastic-agent (#723)
* Use different namespace for elastic-agent * Fix * Test: release version * Fix
1 parent 712e237 commit 6ebf5de

File tree

3 files changed

+38
-8
lines changed

3 files changed

+38
-8
lines changed

internal/install/application_configuration.go

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,15 @@ import (
1717
"github.com/elastic/elastic-package/internal/logger"
1818
)
1919

20-
const stackVersion715 = "7.15.0-SNAPSHOT"
20+
const (
21+
stackVersion715 = "7.15.0-SNAPSHOT"
22+
stackVersion820 = "8.2.0-SNAPSHOT"
23+
)
2124

22-
var elasticAgentCompleteFirstSupportedVersion = semver.MustParse(stackVersion715)
25+
var (
26+
elasticAgentCompleteFirstSupportedVersion = semver.MustParse(stackVersion715)
27+
elasticAgentCompleteOwnNamespaceVersion = semver.MustParse(stackVersion820)
28+
)
2329

2430
// ApplicationConfiguration represents the configuration of the elastic-package.
2531
type ApplicationConfiguration struct {
@@ -83,9 +89,14 @@ func selectElasticAgentImageName(version string) string {
8389
v, err := semver.NewVersion(version)
8490
if err != nil {
8591
logger.Errorf("stack version not in semver format (value: %s): %v", v, err)
86-
} else if !v.LessThan(elasticAgentCompleteFirstSupportedVersion) {
92+
return elasticAgentImageName
93+
}
94+
if !v.LessThan(elasticAgentCompleteOwnNamespaceVersion) {
8795
return elasticAgentCompleteImageName
8896
}
97+
if !v.LessThan(elasticAgentCompleteFirstSupportedVersion) {
98+
return elasticAgentCompleteLegacyImageName
99+
}
89100
return elasticAgentImageName
90101
}
91102

internal/install/application_configuration_test.go

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,29 @@ func TestSelectElasticAgentImageName_OlderStack(t *testing.T) {
2525
func TestSelectElasticAgentImageName_FirstStackWithCompleteAgent(t *testing.T) {
2626
version := stackVersion715
2727
selected := selectElasticAgentImageName(version)
28-
assert.Equal(t, selected, elasticAgentCompleteImageName)
28+
assert.Equal(t, selected, elasticAgentCompleteLegacyImageName)
2929
}
3030

3131
func TestSelectElasticAgentImageName_NextStackWithAgentComplete(t *testing.T) {
3232
version := "7.16.0-SNAPSHOT"
3333
selected := selectElasticAgentImageName(version)
34+
assert.Equal(t, selected, elasticAgentCompleteLegacyImageName)
35+
}
36+
37+
func TestSelectElasticAgentImageName_OwnNamespace(t *testing.T) {
38+
version := "8.2.0-SNAPSHOT"
39+
selected := selectElasticAgentImageName(version)
40+
assert.Equal(t, selected, elasticAgentCompleteImageName)
41+
}
42+
43+
func TestSelectElasticAgentImageName_OwnNamespace_Release(t *testing.T) {
44+
version := "8.2.0"
45+
selected := selectElasticAgentImageName(version)
46+
assert.Equal(t, selected, elasticAgentCompleteImageName)
47+
}
48+
49+
func TestSelectElasticAgentImageName_NextStackInOwnNamespace(t *testing.T) {
50+
version := "8.4.0-SNAPSHOT"
51+
selected := selectElasticAgentImageName(version)
3452
assert.Equal(t, selected, elasticAgentCompleteImageName)
3553
}

internal/install/application_configuration_yml.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,11 @@
55
package install
66

77
const (
8-
elasticAgentImageName = "docker.elastic.co/beats/elastic-agent"
9-
elasticAgentCompleteImageName = "docker.elastic.co/beats/elastic-agent-complete"
10-
elasticsearchImageName = "docker.elastic.co/elasticsearch/elasticsearch"
11-
kibanaImageName = "docker.elastic.co/kibana/kibana"
8+
elasticAgentImageName = "docker.elastic.co/beats/elastic-agent"
9+
elasticAgentCompleteLegacyImageName = "docker.elastic.co/beats/elastic-agent-complete"
10+
elasticAgentCompleteImageName = "docker.elastic.co/elastic-agent/elastic-agent-complete"
11+
elasticsearchImageName = "docker.elastic.co/elasticsearch/elasticsearch"
12+
kibanaImageName = "docker.elastic.co/kibana/kibana"
1213
)
1314

1415
const applicationConfigurationYmlFile = "config.yml"

0 commit comments

Comments
 (0)