AndroidBuildArtifactHelper

public class AndroidBuildArtifactHelper
extends Object

java.lang.Object
   ↳ com.google.android.tradefed.build.AndroidBuildArtifactHelper


用于查询 Android Build API 以获取 build 制品的辅助类。

摘要

常量

String BUILD_ATTEMPT_LATEST

String PLATFORM_LINUX

String PLATFORM_MAC

String PLATFORM_MAC_ARM64

公共构造函数

AndroidBuildArtifactHelper(String buildEnv)

AndroidBuildArtifactHelper 的构造函数。

AndroidBuildArtifactHelper(String buildEnv, boolean strictMode)
AndroidBuildArtifactHelper(String buildEnv, boolean strictMode, boolean throwOnQueryFailure)

公共方法

RemoteBuildInfo queryForBuild(Build build, String branch, String buildId, String buildFlavor, String os, String pattern, Set<String> exclusionPatterns)

通过 buildartifact.list API 调用执行实际查询以获取 build 制品信息。

RemoteBuildInfo queryForBuild(Build build, String branch, String buildId, String buildFlavor, String os)
RemoteBuildInfo queryForBuildById(String branch, String buildId, String buildFlavor, String os, String pattern, Set<String> exclusionPatterns)

按分支、build id 和 build flavor 查询 build 制品信息。

RemoteBuildInfo queryForLatestBuild(String branch, String buildFlavor, String os, String pattern)

按分支和 build 变种查询 build 制品信息:如果存在最新的成功 build,则使用该 build,否则返回 null

RemoteBuildInfo queryForLatestBuild(String branch, String buildFlavor, String os)

按分支和 build 变种查询 build 制品信息:如果存在最新的成功 build,则使用该 build,否则返回 null

受保护的方法

Build getBuild(String branch, String buildId, String buildFlavor, String os)
List<String> getBuildArtifactList(String buildId, String buildFlavor, String os, String pattern, Set<String> exclusionPatterns)
static String getBuildFlavor(String buildFlavor, String os)

此功能的最初目的是支持带有“fastboot”后缀的目标。

Build getLatestBuild(String branch, String buildFlavor, String os)
RemoteBuildInfo queryForBuild(String branch, String buildId, String buildFlavor, String os, String pattern, Set<String> exclusionPatterns)

常量

BUILD_ATTEMPT_LATEST

public static final String BUILD_ATTEMPT_LATEST

常量值: "latest"

PLATFORM_LINUX

protected static final String PLATFORM_LINUX

常量值: "linux"

PLATFORM_MAC

protected static final String PLATFORM_MAC

常量值: "mac"

PLATFORM_MAC_ARM64

protected static final String PLATFORM_MAC_ARM64

常量值: "mac_arm64"

公共构造函数

AndroidBuildArtifactHelper

public AndroidBuildArtifactHelper (String buildEnv)

AndroidBuildArtifactHelper 的构造函数。

参数
buildEnv String:要使用的 Build API 环境。

抛出
com.android.tradefed.build.BuildRetrievalError
BuildRetrievalError

AndroidBuildArtifactHelper

public AndroidBuildArtifactHelper (String buildEnv, 
                boolean strictMode)

参数
buildEnv String

strictMode boolean

抛出
BuildRetrievalError

AndroidBuildArtifactHelper

public AndroidBuildArtifactHelper (String buildEnv, 
                boolean strictMode, 
                boolean throwOnQueryFailure)

参数
buildEnv String

strictMode boolean

throwOnQueryFailure boolean

抛出
BuildRetrievalError

公共方法

queryForBuild

public RemoteBuildInfo queryForBuild (Build build, 
                String branch, 
                String buildId, 
                String buildFlavor, 
                String os, 
                String pattern, 
                Set<String> exclusionPatterns)

通过 buildartifact.list API 调用执行实际查询,以获取 build 制品信息。

参数
build Build:可选的 Build 元数据实例,以防之前已进行 build.get 调用来获取 buildId buildFlavor 所述的 build 信息;当为 null 时,将进行新的 build.get;当不为 null 时,不会针对 buildIdbuildFlavor 执行其他一致性检查

exclusionPatterns Set:仅在没有正模式时适用

返回
RemoteBuildInfo

抛出
BuildRetrievalError

queryForBuild

public RemoteBuildInfo queryForBuild (Build build, 
                String branch, 
                String buildId, 
                String buildFlavor, 
                String os)

参数
build Build

branch String

buildId String

buildFlavor String

os String

返回
RemoteBuildInfo

抛出
BuildRetrievalError

queryForBuildById

public RemoteBuildInfo queryForBuildById (String branch, 
                String buildId, 
                String buildFlavor, 
                String os, 
                String pattern, 
                Set<String> exclusionPatterns)

按分支、build id 和 flavor 查询 build 制品信息。

请注意,此处的 branch 参数是可选的:它旨在实现与旧版启动控制查询格式的向后兼容性。实际查询是通过 build ID 和 build 版本进行的,如果提供的分支参数与 build 的实际分支冲突,即使可以找到 build,也会返回 null 响应。

参数
exclusionPatterns Set:仅在没有正模式时应用

返回
RemoteBuildInfo

抛出
BuildRetrievalError

queryForLatestBuild

public RemoteBuildInfo queryForLatestBuild (String branch, 
                String buildFlavor, 
                String os, 
                String pattern)

按分支和 build 变种查询 build 制品信息:如果存在最新的成功 build,则使用该 build,否则返回 null

返回
RemoteBuildInfo

抛出
BuildRetrievalError

queryForLatestBuild

public RemoteBuildInfo queryForLatestBuild (String branch, 
                String buildFlavor, 
                String os)

按分支和 build 变种查询 build 制品信息:如果存在最新的成功 build,则使用该 build,否则返回 null

返回
RemoteBuildInfo

抛出
BuildRetrievalError

受保护的方法

getBuild

protected Build getBuild (String branch, 
                String buildId, 
                String buildFlavor, 
                String os)

参数
branch String

buildId String

buildFlavor String

os String

返回
Build

抛出
BuildRetrievalError

getBuildArtifactList

protected List<String> getBuildArtifactList (String buildId, 
                String buildFlavor, 
                String os, 
                String pattern, 
                Set<String> exclusionPatterns)

参数
buildId String

buildFlavor String

os String

pattern String

exclusionPatterns Set

返回
List<String>

抛出
BuildRetrievalError

getBuildFlavor

protected static String getBuildFlavor (String buildFlavor, 
                String os)

此功能的最初目的是支持带有“fastboot”后缀的目标。此逻辑不再被视为相关,未来可能会移除,以免造成混淆。我们暂时保留此方法,以避免向 build flavor 添加意外的后缀。请参阅 (b/448820244)

参数
buildFlavor String

os String

返回
String

getLatestBuild

protected Build getLatestBuild (String branch, 
                String buildFlavor, 
                String os)

参数
branch String

buildFlavor String

os String

返回
Build

抛出
BuildRetrievalError

queryForBuild

protected RemoteBuildInfo queryForBuild (String branch, 
                String buildId, 
                String buildFlavor, 
                String os, 
                String pattern, 
                Set<String> exclusionPatterns)

参数
branch String

buildId String

buildFlavor String

os String

pattern String

exclusionPatterns Set

返回
RemoteBuildInfo

抛出
BuildRetrievalError