You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by lb...@apache.org on 2019/01/31 14:06:54 UTC
[camel-k] branch master updated: chore(maven): simplify maven model
This is an automated email from the ASF dual-hosted git repository.
lburgazzoli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git
The following commit(s) were added to refs/heads/master by this push:
new e415310 chore(maven): simplify maven model
e415310 is described below
commit e4153106bb59cb5e2d9f8e3ed0eeee2b27d14b2c
Author: lburgazzoli <lb...@gmail.com>
AuthorDate: Wed Jan 30 18:01:15 2019 +0100
chore(maven): simplify maven model
---
pkg/builder/builder_steps.go | 17 +--
pkg/builder/builder_steps_test.go | 28 ++--
pkg/builder/builder_utils.go | 20 ++-
pkg/builder/springboot/generator.go | 23 ++-
pkg/util/maven/maven_project.go | 158 ++-------------------
.../{maven_project.go => maven_project_types.go} | 138 +++---------------
pkg/util/maven/maven_test.go | 72 +++++-----
7 files changed, 95 insertions(+), 361 deletions(-)
diff --git a/pkg/builder/builder_steps.go b/pkg/builder/builder_steps.go
index 555befc..fe90b78 100644
--- a/pkg/builder/builder_steps.go
+++ b/pkg/builder/builder_steps.go
@@ -47,9 +47,7 @@ func GenerateProject(ctx *Context) error {
// Repositories
//
- ctx.Project.Repositories = maven.Repositories{
- Repositories: make([]maven.Repository, 0, len(ctx.Request.Repositories)),
- }
+ ctx.Project.Repositories = make([]maven.Repository, 0, len(ctx.Request.Repositories))
for i, r := range ctx.Request.Repositories {
repo := maven.NewRepository(r)
@@ -57,15 +55,14 @@ func GenerateProject(ctx *Context) error {
repo.ID = fmt.Sprintf("repo-%03d", i)
}
- ctx.Project.Repositories.Repositories = append(ctx.Project.Repositories.Repositories, repo)
+ ctx.Project.Repositories = append(ctx.Project.Repositories, repo)
}
//
// set-up dependencies
//
- deps := &ctx.Project.Dependencies
- deps.AddGAV("org.apache.camel.k", "camel-k-runtime-jvm", version.Version)
+ ctx.Project.AddDependencyGAV("org.apache.camel.k", "camel-k-runtime-jvm", version.Version)
for _, d := range ctx.Request.Dependencies {
switch {
@@ -76,7 +73,7 @@ func GenerateProject(ctx *Context) error {
artifactID = "camel-" + artifactID
}
- deps.AddGAV("org.apache.camel", artifactID, "")
+ ctx.Project.AddDependencyGAV("org.apache.camel", artifactID, "")
case strings.HasPrefix(d, "camel-k:"):
artifactID := strings.TrimPrefix(d, "camel-k:")
@@ -84,16 +81,16 @@ func GenerateProject(ctx *Context) error {
artifactID = "camel-" + artifactID
}
- deps.AddGAV("org.apache.camel.k", artifactID, version.Version)
+ ctx.Project.AddDependencyGAV("org.apache.camel.k", artifactID, version.Version)
case strings.HasPrefix(d, "mvn:"):
mid := strings.TrimPrefix(d, "mvn:")
gav := strings.Replace(mid, "/", ":", -1)
- deps.AddEncodedGAV(gav)
+ ctx.Project.AddEncodedDependencyGAV(gav)
case strings.HasPrefix(d, "runtime:"):
artifactID := strings.Replace(d, "runtime:", "camel-k-runtime-", 1)
- deps.AddGAV("org.apache.camel.k", artifactID, version.Version)
+ ctx.Project.AddDependencyGAV("org.apache.camel.k", artifactID, version.Version)
default:
return fmt.Errorf("unknown dependency type: %s", d)
}
diff --git a/pkg/builder/builder_steps_test.go b/pkg/builder/builder_steps_test.go
index ad31eb9..eebf28c 100644
--- a/pkg/builder/builder_steps_test.go
+++ b/pkg/builder/builder_steps_test.go
@@ -44,18 +44,18 @@ func TestGenerateProject(t *testing.T) {
assert.Nil(t, err)
- assert.Equal(t, 1, len(ctx.Project.DependencyManagement.Dependencies.Dependencies))
- assert.Equal(t, "org.apache.camel", ctx.Project.DependencyManagement.Dependencies.Dependencies[0].GroupID)
- assert.Equal(t, "camel-bom", ctx.Project.DependencyManagement.Dependencies.Dependencies[0].ArtifactID)
- assert.Equal(t, "2.22.1", ctx.Project.DependencyManagement.Dependencies.Dependencies[0].Version)
- assert.Equal(t, "pom", ctx.Project.DependencyManagement.Dependencies.Dependencies[0].Type)
- assert.Equal(t, "import", ctx.Project.DependencyManagement.Dependencies.Dependencies[0].Scope)
-
- assert.Equal(t, 2, len(ctx.Project.Repositories.Repositories))
- assert.Equal(t, "apache-snapshots", ctx.Project.Repositories.Repositories[0].ID)
- assert.False(t, ctx.Project.Repositories.Repositories[0].Releases.Enabled)
- assert.True(t, ctx.Project.Repositories.Repositories[0].Snapshots.Enabled)
- assert.Equal(t, "ops4j-snapshots", ctx.Project.Repositories.Repositories[1].ID)
- assert.False(t, ctx.Project.Repositories.Repositories[1].Releases.Enabled)
- assert.True(t, ctx.Project.Repositories.Repositories[1].Snapshots.Enabled)
+ assert.Equal(t, 1, len(ctx.Project.DependencyManagement.Dependencies))
+ assert.Equal(t, "org.apache.camel", ctx.Project.DependencyManagement.Dependencies[0].GroupID)
+ assert.Equal(t, "camel-bom", ctx.Project.DependencyManagement.Dependencies[0].ArtifactID)
+ assert.Equal(t, "2.22.1", ctx.Project.DependencyManagement.Dependencies[0].Version)
+ assert.Equal(t, "pom", ctx.Project.DependencyManagement.Dependencies[0].Type)
+ assert.Equal(t, "import", ctx.Project.DependencyManagement.Dependencies[0].Scope)
+
+ assert.Equal(t, 2, len(ctx.Project.Repositories))
+ assert.Equal(t, "apache-snapshots", ctx.Project.Repositories[0].ID)
+ assert.False(t, ctx.Project.Repositories[0].Releases.Enabled)
+ assert.True(t, ctx.Project.Repositories[0].Snapshots.Enabled)
+ assert.Equal(t, "ops4j-snapshots", ctx.Project.Repositories[1].ID)
+ assert.False(t, ctx.Project.Repositories[1].Releases.Enabled)
+ assert.True(t, ctx.Project.Repositories[1].Snapshots.Enabled)
}
diff --git a/pkg/builder/builder_utils.go b/pkg/builder/builder_utils.go
index 1c5153d..493728b 100644
--- a/pkg/builder/builder_utils.go
+++ b/pkg/builder/builder_utils.go
@@ -50,20 +50,16 @@ func NewProject(ctx *Context) maven.Project {
Version: version.Version,
Properties: ctx.Request.Platform.Build.Properties,
DependencyManagement: maven.DependencyManagement{
- Dependencies: maven.Dependencies{
- Dependencies: []maven.Dependency{
- {
- GroupID: "org.apache.camel",
- ArtifactID: "camel-bom",
- Version: ctx.Request.Platform.Build.CamelVersion,
- Type: "pom",
- Scope: "import",
- },
+ Dependencies: []maven.Dependency{
+ {
+ GroupID: "org.apache.camel",
+ ArtifactID: "camel-bom",
+ Version: ctx.Request.Platform.Build.CamelVersion,
+ Type: "pom",
+ Scope: "import",
},
},
},
- Dependencies: maven.Dependencies{
- Dependencies: make([]maven.Dependency, 0),
- },
+ Dependencies: make([]maven.Dependency, 0),
}
}
diff --git a/pkg/builder/springboot/generator.go b/pkg/builder/springboot/generator.go
index e107a51..670c213 100644
--- a/pkg/builder/springboot/generator.go
+++ b/pkg/builder/springboot/generator.go
@@ -34,9 +34,7 @@ func GenerateProject(ctx *builder.Context) error {
// Repositories
//
- ctx.Project.Repositories = maven.Repositories{
- Repositories: make([]maven.Repository, 0, len(ctx.Request.Repositories)),
- }
+ ctx.Project.Repositories = make([]maven.Repository, 0, len(ctx.Request.Repositories))
for i, r := range ctx.Request.Repositories {
repo := maven.NewRepository(r)
@@ -44,20 +42,14 @@ func GenerateProject(ctx *builder.Context) error {
repo.ID = fmt.Sprintf("repo-%03d", i)
}
- ctx.Project.Repositories.Repositories = append(ctx.Project.Repositories.Repositories, repo)
+ ctx.Project.Repositories = append(ctx.Project.Repositories, repo)
}
//
// set-up dependencies
//
- deps := &ctx.Project.Dependencies
-
- //
- // common
- //
-
- deps.Add(maven.Dependency{
+ ctx.Project.AddDependency(maven.Dependency{
GroupID: "org.apache.camel.k",
ArtifactID: "camel-k-runtime-spring-boot",
Version: version.Version,
@@ -96,7 +88,7 @@ func GenerateProject(ctx *builder.Context) error {
artifactID = "camel-" + artifactID
}
- deps.Add(maven.Dependency{
+ ctx.Project.AddDependency(maven.Dependency{
GroupID: "org.apache.camel",
ArtifactID: artifactID + "-starter",
Version: ctx.Request.Platform.Build.CamelVersion,
@@ -132,12 +124,12 @@ func GenerateProject(ctx *builder.Context) error {
artifactID = "camel-" + artifactID
}
- deps.AddGAV("org.apache.camel.k", artifactID, version.Version)
+ ctx.Project.AddDependencyGAV("org.apache.camel.k", artifactID, version.Version)
case strings.HasPrefix(d, "mvn:"):
mid := strings.TrimPrefix(d, "mvn:")
gav := strings.Replace(mid, "/", ":", -1)
- deps.AddEncodedGAV(gav)
+ ctx.Project.AddEncodedDependencyGAV(gav)
case strings.HasPrefix(d, "runtime:"):
if d == "runtime:jvm" {
// common
@@ -149,8 +141,9 @@ func GenerateProject(ctx *builder.Context) error {
}
artifactID := strings.Replace(d, "runtime:", "camel-k-runtime-", 1)
+ dependency := maven.NewDependency("org.apache.camel.k", artifactID, version.Version)
- deps.AddGAV("org.apache.camel.k", artifactID, version.Version)
+ ctx.Project.AddDependency(dependency)
default:
return fmt.Errorf("unknown dependency type: %s", d)
}
diff --git a/pkg/util/maven/maven_project.go b/pkg/util/maven/maven_project.go
index e965677..3c5aa4d 100644
--- a/pkg/util/maven/maven_project.go
+++ b/pkg/util/maven/maven_project.go
@@ -18,84 +18,34 @@ limitations under the License.
package maven
import (
- "encoding/xml"
"strings"
)
-// Project represent a maven project
-type Project struct {
- XMLName xml.Name
- XMLNs string `xml:"xmlns,attr"`
- XMLNsXsi string `xml:"xmlns:xsi,attr"`
- XsiSchemaLocation string `xml:"xsi:schemaLocation,attr"`
- ModelVersion string `xml:"modelVersion"`
- GroupID string `xml:"groupId"`
- ArtifactID string `xml:"artifactId"`
- Version string `xml:"version"`
- Properties Properties `xml:"properties,omitempty"`
- DependencyManagement DependencyManagement `xml:"dependencyManagement"`
- Dependencies Dependencies `xml:"dependencies"`
- Repositories Repositories `xml:"repositories"`
- PluginRepositories PluginRepositories `xml:"pluginRepositories"`
-}
-
-// DependencyManagement represent maven's dependency management block
-type DependencyManagement struct {
- Dependencies Dependencies `xml:"dependencies"`
-}
-
-// Dependencies --
-type Dependencies struct {
- Dependencies []Dependency `xml:"dependency"`
-}
-
-// Add a dependency to maven's dependencies
-func (deps *Dependencies) Add(dep Dependency) {
- for _, d := range deps.Dependencies {
+// AddDependency a dependency to maven's dependencies
+func (p *Project) AddDependency(dep Dependency) {
+ for _, d := range p.Dependencies {
// Check if the given dependency is already included in the dependency list
if d == dep {
return
}
}
- deps.Dependencies = append(deps.Dependencies, dep)
+ p.Dependencies = append(p.Dependencies, dep)
}
-// AddGAV a dependency to maven's dependencies
-func (deps *Dependencies) AddGAV(groupID string, artifactID string, version string) {
- deps.Add(NewDependency(groupID, artifactID, version))
+// AddDependencyGAV a dependency to maven's dependencies
+func (p *Project) AddDependencyGAV(groupID string, artifactID string, version string) {
+ p.AddDependency(NewDependency(groupID, artifactID, version))
}
-// AddEncodedGAV a dependency to maven's dependencies
-func (deps *Dependencies) AddEncodedGAV(gav string) {
+// AddEncodedDependencyGAV a dependency to maven's dependencies
+func (p *Project) AddEncodedDependencyGAV(gav string) {
if d, err := ParseGAV(gav); err == nil {
// TODO: error handling
- deps.Add(d)
+ p.AddDependency(d)
}
}
-// Exclusion represent a maven's dependency exlucsion
-type Exclusion struct {
- GroupID string `xml:"groupId"`
- ArtifactID string `xml:"artifactId"`
-}
-
-// Exclusions --
-type Exclusions struct {
- Exclusions []Exclusion `xml:"exclusion"`
-}
-
-// Dependency represent a maven's dependency
-type Dependency struct {
- GroupID string `xml:"groupId"`
- ArtifactID string `xml:"artifactId"`
- Version string `xml:"version,omitempty"`
- Type string `xml:"type,omitempty"`
- Classifier string `xml:"classifier,omitempty"`
- Scope string `xml:"scope,omitempty"`
- Exclusions *Exclusions `xml:"exclusions,omitempty"`
-}
-
// NewDependency create an new dependency from the given gav info
func NewDependency(groupID string, artifactID string, version string) Dependency {
return Dependency{
@@ -107,25 +57,6 @@ func NewDependency(groupID string, artifactID string, version string) Dependency
}
}
-// Repositories --
-type Repositories struct {
- Repositories []Repository `xml:"repository"`
-}
-
-// PluginRepositories --
-type PluginRepositories struct {
- Repositories []Repository `xml:"pluginRepository"`
-}
-
-// Repository --
-type Repository struct {
- ID string `xml:"id"`
- Name string `xml:"name,omitempty"`
- URL string `xml:"url"`
- Snapshots RepositoryPolicy `xml:"snapshots,omitempty"`
- Releases RepositoryPolicy `xml:"releases,omitempty"`
-}
-
//
// NewRepository parse the given repo url ang generated the related struct.
//
@@ -164,72 +95,3 @@ func NewRepository(repo string) Repository {
return r
}
-
-// RepositoryPolicy --
-type RepositoryPolicy struct {
- Enabled bool `xml:"enabled"`
- UpdatePolicy string `xml:"updatePolicy,omitempty"`
-}
-
-// Build --
-type Build struct {
- Plugins Plugins `xml:"plugins,omitempty"`
-}
-
-// Plugin --
-type Plugin struct {
- GroupID string `xml:"groupId"`
- ArtifactID string `xml:"artifactId"`
- Version string `xml:"version,omitempty"`
- Executions Executions `xml:"executions"`
-}
-
-// Plugins --
-type Plugins struct {
- Plugins []Plugin `xml:"plugin"`
-}
-
-// Execution --
-type Execution struct {
- ID string `xml:"id"`
- Phase string `xml:"phase"`
- Goals Goals `xml:"goals,omitempty"`
-}
-
-// Executions --
-type Executions struct {
- Executions []Execution `xml:"execution"`
-}
-
-// Goals --
-type Goals struct {
- Goals []string `xml:"goal"`
-}
-
-// Properties --
-type Properties map[string]string
-
-type propertiesEntry struct {
- XMLName xml.Name
- Value string `xml:",chardata"`
-}
-
-// MarshalXML --
-func (m Properties) MarshalXML(e *xml.Encoder, start xml.StartElement) error {
- if len(m) == 0 {
- return nil
- }
-
- err := e.EncodeToken(start)
- if err != nil {
- return err
- }
-
- for k, v := range m {
- if err := e.Encode(propertiesEntry{XMLName: xml.Name{Local: k}, Value: v}); err != nil {
- return err
- }
- }
-
- return e.EncodeToken(start.End())
-}
diff --git a/pkg/util/maven/maven_project.go b/pkg/util/maven/maven_project_types.go
similarity index 52%
copy from pkg/util/maven/maven_project.go
copy to pkg/util/maven/maven_project_types.go
index e965677..999b91e 100644
--- a/pkg/util/maven/maven_project.go
+++ b/pkg/util/maven/maven_project_types.go
@@ -19,7 +19,6 @@ package maven
import (
"encoding/xml"
- "strings"
)
// Project represent a maven project
@@ -34,44 +33,9 @@ type Project struct {
Version string `xml:"version"`
Properties Properties `xml:"properties,omitempty"`
DependencyManagement DependencyManagement `xml:"dependencyManagement"`
- Dependencies Dependencies `xml:"dependencies"`
- Repositories Repositories `xml:"repositories"`
- PluginRepositories PluginRepositories `xml:"pluginRepositories"`
-}
-
-// DependencyManagement represent maven's dependency management block
-type DependencyManagement struct {
- Dependencies Dependencies `xml:"dependencies"`
-}
-
-// Dependencies --
-type Dependencies struct {
- Dependencies []Dependency `xml:"dependency"`
-}
-
-// Add a dependency to maven's dependencies
-func (deps *Dependencies) Add(dep Dependency) {
- for _, d := range deps.Dependencies {
- // Check if the given dependency is already included in the dependency list
- if d == dep {
- return
- }
- }
-
- deps.Dependencies = append(deps.Dependencies, dep)
-}
-
-// AddGAV a dependency to maven's dependencies
-func (deps *Dependencies) AddGAV(groupID string, artifactID string, version string) {
- deps.Add(NewDependency(groupID, artifactID, version))
-}
-
-// AddEncodedGAV a dependency to maven's dependencies
-func (deps *Dependencies) AddEncodedGAV(gav string) {
- if d, err := ParseGAV(gav); err == nil {
- // TODO: error handling
- deps.Add(d)
- }
+ Dependencies []Dependency `xml:"dependencies>dependency,omitempty"`
+ Repositories []Repository `xml:"repositories>repository,omitempty"`
+ PluginRepositories []Repository `xml:"pluginRepositories>pluginRepository,omitempty"`
}
// Exclusion represent a maven's dependency exlucsion
@@ -85,6 +49,11 @@ type Exclusions struct {
Exclusions []Exclusion `xml:"exclusion"`
}
+// DependencyManagement represent maven's dependency management block
+type DependencyManagement struct {
+ Dependencies []Dependency `xml:"dependencies>dependency,omitempty"`
+}
+
// Dependency represent a maven's dependency
type Dependency struct {
GroupID string `xml:"groupId"`
@@ -96,27 +65,6 @@ type Dependency struct {
Exclusions *Exclusions `xml:"exclusions,omitempty"`
}
-// NewDependency create an new dependency from the given gav info
-func NewDependency(groupID string, artifactID string, version string) Dependency {
- return Dependency{
- GroupID: groupID,
- ArtifactID: artifactID,
- Version: version,
- Type: "jar",
- Classifier: "",
- }
-}
-
-// Repositories --
-type Repositories struct {
- Repositories []Repository `xml:"repository"`
-}
-
-// PluginRepositories --
-type PluginRepositories struct {
- Repositories []Repository `xml:"pluginRepository"`
-}
-
// Repository --
type Repository struct {
ID string `xml:"id"`
@@ -126,45 +74,6 @@ type Repository struct {
Releases RepositoryPolicy `xml:"releases,omitempty"`
}
-//
-// NewRepository parse the given repo url ang generated the related struct.
-//
-// The repository can be customized by appending @instruction to the repository
-// uri, as example:
-//
-// http://my-nexus:8081/repository/publicc@id=my-repo@snapshots
-//
-// Will enable snapshots and sets the repo it to my-repo
-//
-func NewRepository(repo string) Repository {
- r := Repository{
- URL: repo,
- Releases: RepositoryPolicy{
- Enabled: true,
- },
- Snapshots: RepositoryPolicy{
- Enabled: false,
- },
- }
-
- if idx := strings.Index(repo, "@"); idx != -1 {
- r.URL = repo[:idx]
-
- for _, attribute := range strings.Split(repo[idx+1:], "@") {
- switch {
- case attribute == "snapshots":
- r.Snapshots.Enabled = true
- case attribute == "noreleases":
- r.Releases.Enabled = false
- case strings.HasPrefix(attribute, "id="):
- r.ID = attribute[3:]
- }
- }
- }
-
- return r
-}
-
// RepositoryPolicy --
type RepositoryPolicy struct {
Enabled bool `xml:"enabled"`
@@ -173,37 +82,22 @@ type RepositoryPolicy struct {
// Build --
type Build struct {
- Plugins Plugins `xml:"plugins,omitempty"`
+ Plugins []Plugin `xml:"plugins>plugin,omitempty"`
}
// Plugin --
type Plugin struct {
- GroupID string `xml:"groupId"`
- ArtifactID string `xml:"artifactId"`
- Version string `xml:"version,omitempty"`
- Executions Executions `xml:"executions"`
-}
-
-// Plugins --
-type Plugins struct {
- Plugins []Plugin `xml:"plugin"`
+ GroupID string `xml:"groupId"`
+ ArtifactID string `xml:"artifactId"`
+ Version string `xml:"version,omitempty"`
+ Executions []Execution `xml:"executions>execution,omitempty"`
}
// Execution --
type Execution struct {
- ID string `xml:"id"`
- Phase string `xml:"phase"`
- Goals Goals `xml:"goals,omitempty"`
-}
-
-// Executions --
-type Executions struct {
- Executions []Execution `xml:"execution"`
-}
-
-// Goals --
-type Goals struct {
- Goals []string `xml:"goal"`
+ ID string `xml:"id"`
+ Phase string `xml:"phase"`
+ Goals []string `xml:"goals>goal,omitempty"`
}
// Properties --
diff --git a/pkg/util/maven/maven_test.go b/pkg/util/maven/maven_test.go
index c09485c..ff2ce0d 100644
--- a/pkg/util/maven/maven_test.go
+++ b/pkg/util/maven/maven_test.go
@@ -88,54 +88,46 @@ func TestPomGeneration(t *testing.T) {
ArtifactID: "camel-k-integration",
Version: "1.0.0",
DependencyManagement: DependencyManagement{
- Dependencies: Dependencies{
- Dependencies: []Dependency{
- {
- GroupID: "org.apache.camel",
- ArtifactID: "camel-bom",
- Version: "2.22.1",
- Type: "pom",
- Scope: "import",
- },
- },
- },
- },
- Dependencies: Dependencies{
Dependencies: []Dependency{
{
- GroupID: "org.apache.camel.k",
- ArtifactID: "camel-k-runtime-jvm",
- Version: "1.0.0",
+ GroupID: "org.apache.camel",
+ ArtifactID: "camel-bom",
+ Version: "2.22.1",
+ Type: "pom",
+ Scope: "import",
},
},
},
- Repositories: Repositories{
- Repositories: []Repository{
- {
- ID: "central",
- URL: "https://repo.maven.apache.org/maven2",
- Snapshots: RepositoryPolicy{
- Enabled: false,
- },
- Releases: RepositoryPolicy{
- Enabled: true,
- UpdatePolicy: "never",
- },
+ Dependencies: []Dependency{
+ {
+ GroupID: "org.apache.camel.k",
+ ArtifactID: "camel-k-runtime-jvm",
+ Version: "1.0.0",
+ },
+ },
+ Repositories: []Repository{
+ {
+ ID: "central",
+ URL: "https://repo.maven.apache.org/maven2",
+ Snapshots: RepositoryPolicy{
+ Enabled: false,
+ },
+ Releases: RepositoryPolicy{
+ Enabled: true,
+ UpdatePolicy: "never",
},
},
},
- PluginRepositories: PluginRepositories{
- Repositories: []Repository{
- {
- ID: "central",
- URL: "https://repo.maven.apache.org/maven2",
- Snapshots: RepositoryPolicy{
- Enabled: false,
- },
- Releases: RepositoryPolicy{
- Enabled: true,
- UpdatePolicy: "never",
- },
+ PluginRepositories: []Repository{
+ {
+ ID: "central",
+ URL: "https://repo.maven.apache.org/maven2",
+ Snapshots: RepositoryPolicy{
+ Enabled: false,
+ },
+ Releases: RepositoryPolicy{
+ Enabled: true,
+ UpdatePolicy: "never",
},
},
},