Skip to content

Commit 5c13998

Browse files
committed
more intermediate work
1 parent ac0f535 commit 5c13998

File tree

2 files changed

+44
-17
lines changed

2 files changed

+44
-17
lines changed

dev-tools/mage/manifest/manifest.go

+2
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ func resolveManifestPackage(project tools.Project, pkg string, reqPackage string
7272
var val tools.Package
7373
var ok = true
7474

75+
log.Printf(">>>>>>>>>>>> XXX Looking for package [%s] of type [%s]", pkg, reqPackage)
76+
7577
for pkgName, _ := range project.Packages {
7678
if strings.HasPrefix(pkgName, pkg) {
7779
log.Printf(">>>>>>>>>>> XXX Package: %s <<<<", pkgName)

magefile.go

+42-17
Original file line numberDiff line numberDiff line change
@@ -971,6 +971,8 @@ var platformPackages = map[string]string{
971971

972972
func packageAgent(platforms []string, dependenciesVersion string, agentPackaging, agentBinaryTarget mg.Fn) {
973973
fmt.Println("--- Package Elastic-Agent")
974+
var manifestResponse tools.Build
975+
var err error
974976

975977
requiredPackages := []string{}
976978
for _, p := range platforms {
@@ -980,8 +982,26 @@ func packageAgent(platforms []string, dependenciesVersion string, agentPackaging
980982
log.Printf("--- Packaging dependenciesVersion[%s], %+v \n", dependenciesVersion, requiredPackages)
981983
}
982984

985+
if devtools.PackagingFromManifest {
986+
if manifestResponse, err = manifest.DownloadManifest(devtools.ManifestURL); err != nil {
987+
log.Panicf("failed to download remote manifest file %s", err)
988+
} else {
989+
if parsedVersion, err := version.ParseVersion(manifestResponse.Version); err != nil {
990+
log.Panicf("the manifest version from manifest is not semver, got %s", manifestResponse.Version)
991+
} else {
992+
// When getting the packageVersion from snapshot we should also update the env of SNAPSHOT=true which is
993+
// something that we use as an implicit parameter to various functions
994+
if parsedVersion.IsSnapshot() {
995+
os.Setenv(snapshotEnv, "true")
996+
mage.Snapshot = true
997+
}
998+
os.Setenv("BEAT_VERSION", parsedVersion.CoreVersion())
999+
}
1000+
}
1001+
}
1002+
9831003
// download/copy all the necessary dependencies for packaging elastic-agent
984-
archivePath, dropPath := collectPackageDependencies(platforms, dependenciesVersion, requiredPackages)
1004+
archivePath, dropPath := collectPackageDependencies(platforms, dependenciesVersion, requiredPackages, manifestResponse)
9851005

9861006
// cleanup after build
9871007
defer os.RemoveAll(archivePath)
@@ -997,7 +1017,7 @@ func packageAgent(platforms []string, dependenciesVersion string, agentPackaging
9971017
defer os.RemoveAll(flatPath)
9981018

9991019
// extract all dependencies from their archives into flat dir
1000-
flattenDependencies(requiredPackages, dependenciesVersion, archivePath, dropPath, flatPath)
1020+
flattenDependencies(requiredPackages, dependenciesVersion, archivePath, dropPath, flatPath, manifestResponse)
10011021

10021022
// package agent
10031023
log.Println("--- Running packaging function")
@@ -1014,25 +1034,27 @@ func packageAgent(platforms []string, dependenciesVersion string, agentPackaging
10141034
// NOTE: after the build is done the caller must:
10151035
// - delete archivePath and dropPath contents
10161036
// - unset AGENT_DROP_PATH environment variable
1017-
func collectPackageDependencies(platforms []string, packageVersion string, requiredPackages []string) (archivePath string, dropPath string) {
1037+
func collectPackageDependencies(platforms []string, packageVersion string, requiredPackages []string, manifestResponse tools.Build) (archivePath string, dropPath string) {
10181038
// if we have defined a manifest URL to package Agent from, we should be using the same packageVersion of that manifest
1019-
if devtools.PackagingFromManifest {
1020-
if manifestResponse, err := manifest.DownloadManifest(devtools.ManifestURL); err != nil {
1021-
log.Panicf("failed to download remote manifest file %s", err)
1022-
} else {
1023-
if parsedVersion, err := version.ParseVersion(manifestResponse.Version); err != nil {
1024-
log.Panicf("the manifest version from manifest is not semver, got %s", manifestResponse.Version)
1039+
/*
1040+
if devtools.PackagingFromManifest {
1041+
if manifestResponse, err := manifest.DownloadManifest(devtools.ManifestURL); err != nil {
1042+
log.Panicf("failed to download remote manifest file %s", err)
10251043
} else {
1026-
// When getting the packageVersion from snapshot we should also update the env of SNAPSHOT=true which is
1027-
// something that we use as an implicit parameter to various functions
1028-
if parsedVersion.IsSnapshot() {
1029-
os.Setenv(snapshotEnv, "true")
1030-
mage.Snapshot = true
1044+
if parsedVersion, err := version.ParseVersion(manifestResponse.Version); err != nil {
1045+
log.Panicf("the manifest version from manifest is not semver, got %s", manifestResponse.Version)
1046+
} else {
1047+
// When getting the packageVersion from snapshot we should also update the env of SNAPSHOT=true which is
1048+
// something that we use as an implicit parameter to various functions
1049+
if parsedVersion.IsSnapshot() {
1050+
os.Setenv(snapshotEnv, "true")
1051+
mage.Snapshot = true
1052+
}
1053+
os.Setenv("BEAT_VERSION", parsedVersion.CoreVersion())
10311054
}
1032-
os.Setenv("BEAT_VERSION", parsedVersion.CoreVersion())
10331055
}
10341056
}
1035-
}
1057+
*/
10361058

10371059
dropPath, found := os.LookupEnv(agentDropPath)
10381060

@@ -1189,7 +1211,8 @@ func getIndAgentGlobExpr(versionedFlatPath string, packageVersion string) string
11891211

11901212
// flattenDependencies will extract all the required packages collected in archivePath and dropPath in flatPath and
11911213
// regenerate checksums
1192-
func flattenDependencies(requiredPackages []string, packageVersion, archivePath, dropPath, flatPath string) {
1214+
func flattenDependencies(requiredPackages []string, packageVersion, archivePath, dropPath, flatPath string, manifestResponse tools.Build) {
1215+
11931216
for _, rp := range requiredPackages {
11941217
targetPath := filepath.Join(archivePath, rp)
11951218
versionedFlatPath := filepath.Join(flatPath, rp)
@@ -1198,6 +1221,8 @@ func flattenDependencies(requiredPackages []string, packageVersion, archivePath,
11981221
os.MkdirAll(versionedFlatPath, 0755)
11991222
os.MkdirAll(versionedDropPath, 0755)
12001223

1224+
log.Printf(">>>>>>>>>>>> XXX flattenDeps: requiredPackage: [%s]", rp)
1225+
12011226
// untar all
12021227
matches, err := filepath.Glob(filepath.Join(targetPath, "*tar.gz"))
12031228
if err != nil {

0 commit comments

Comments
 (0)