in common/utils.go [73:99]
func DownloadAgent(client *s3.Client, cliArgs *cli.CliArgs) *string {
arch := cliArgs.TargetPlatform.Arch
// map target arch to the s3 bucket
if cliArgs.TargetPlatform.Arch == constants.AMD64 || cliArgs.TargetPlatform.Arch == constants.X86_64 || cliArgs.TargetPlatform.Arch == constants.X64 {
arch = constants.X64
} else if cliArgs.TargetPlatform.Arch == constants.I386 || cliArgs.TargetPlatform.Arch == constants.X86 {
arch = constants.X86
} else if cliArgs.TargetPlatform.Arch == constants.ARM64 || cliArgs.TargetPlatform.Arch == constants.ARMV8 {
arch = constants.ARMV8
}
agentBucket := fmt.Sprintf("sagemaker-edge-release-store-us-west-2-%s-%s", cliArgs.TargetPlatform.Os, arch)
s3Prefix := "Releases/"
release := GetAgentRelease(client, &agentBucket, &s3Prefix)
agentFile := aws.DownloadFileFromS3(client, &agentBucket, &release.s3Location)
if strings.HasSuffix(*agentFile, "gz") {
untar(agentFile, &cliArgs.AgentDirectory)
} else if strings.HasSuffix(*agentFile, "zip") {
unzip(agentFile, &cliArgs.AgentDirectory)
} else {
log.Fatal("Unsupported agent format!")
}
return agentFile
}