Skip to content

J-Androids/fetch_artifact

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fetch Artifact

Fetch artifact is a tool for downloading artifacts from Android's continuous integration service.

Options

  • target: Required - The target you would like to download the artifact from.
  • artifact: Required - The artifact to download.
  • Required: either build_id or branch, but not both
    • When only build_id is provided, the script would download the artifact from that build_id.
    • When only branch is provided, the script would download the artifact from the last known good build of that branch.
  • output: Optional - If you would like the contents of the file to be written to a specific file.
  • client_id: Optional - If authorization is required to download the artifact, please set this parameter as your OAuth2.0 Client ID.
  • secret: Optional - If authorization is required to download the artifact, please set this parameter as your OAuth2.0 Client secret.
  • port: Optional - If you would like to specify the OAuth callback port to listen on. Default: 10502
  • project_id: Optional - The project id being used to access the fetch APIs.
  • -: Optional - If you would like the contents of the file to be written to stdout (must be the last arg)

Example usage

fetch_artifact -target=aosp_arm64-userdebug -build_id=7000390 -artifact=COPIED

Streaming contents to stdout

fetch_artifact -target=aosp_arm64-userdebug -build_id=7000390 -artifact=COPIED -

Get the latest successful build's artifact without specifying a build_id

fetch_artifact -target=aosp_arm64-trunk_staging-userdebug -branch=aosp-main -artifact=COPIED

Using OAuth to fetch restricted artifacts

In this case, you might need to create an OAuth 2.0 Client ID for a web application and set the redirect URI to http://localhost:<port>(default port: 10502).

fetch_artifact -target=<restricted_target> -build_id=<id> -artifact=COPIED -client_id=<OAuth_client_id> -secret=<OAuth_client_secret>

If you are accessing the fetch APIs from a different project than your OAuth client, you will need to specify the -project_id flag:

fetch_artifact -target=<restricted_target> -build_id=<id> -artifact=COPIED -client_id=<OAuth_client_id> -secret=<OAuth_client_secret> -project_id=<project_id>

Development

Building

OUT_DIR=out ./build

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •