blob: 46c26ecde37bb1950c4d672a384b49d3c9728d96 [file] [log] [blame]
Luis Hector Chavezdca9dd72018-06-12 12:56:30 -07001# -*- coding: utf-8 -*-
Chris Sosa76e44b92013-01-31 12:11:38 -08002# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
6"""Module contains a list of artifact name related constants and methods."""
7
8############ Artifact Names ############
9
Chris Sosa6b0c6172013-08-05 17:01:33 -070010# Note these are the available 'artifacts' that are known to the devserver. If
11# you just need to stage a file from gs directly, use the files api. See the
12# stage documentation for more info.
13
Chris Sosa76e44b92013-01-31 12:11:38 -080014#### Update payload names. ####
15
16# The name of artifact to stage a full update payload.
17FULL_PAYLOAD = 'full_payload'
18
19# The name of the artifact to stage all delta payloads for a build.
20DELTA_PAYLOADS = 'delta_payloads'
21
22# The payload containing stateful data not stored on the rootfs of the image.
23STATEFUL_PAYLOAD = 'stateful'
24
25#### The following are the names of images to stages. ####
26
27# The base image i.e. the image without any test/developer enhancements.
28BASE_IMAGE = 'base_image'
29
30# The recovery image - the image used to recover a chromiumos device.
31RECOVERY_IMAGE = 'recovery_image'
32
Luis Hector Chavezdca9dd72018-06-12 12:56:30 -070033# The image that has been signed and can be pushed to regular Chrome OS users.
34SIGNED_IMAGE = 'signed_image'
35
Chris Sosa76e44b92013-01-31 12:11:38 -080036# The test image - the base image with both develolper and test enhancements.
37TEST_IMAGE = 'test_image'
38
Chris Sosa75490802013-09-30 17:21:45 -070039# The developer image - the base image with developer enhancements.
40DEV_IMAGE = 'dev_image'
41
David Riley0655bab2017-11-02 10:44:26 -070042# The name of artifact to stage a quick provision payload.
43QUICK_PROVISION = 'quick_provision'
44
Chris Sosa76e44b92013-01-31 12:11:38 -080045#### Autotest related packages. ####
46
47# Autotest -- the main autotest directory without the test_suites subdir.
48AUTOTEST = 'autotest'
49
Simran Basiea0590d2014-10-29 11:31:26 -070050# Control Files -- the autotest control files without the test_suites subdir.
51CONTROL_FILES = 'control_files'
52
53# Autotest Packages-- the autotest packages subdirectory.
54AUTOTEST_PACKAGES = 'autotest_packages'
55
Simran Basi6459bba2015-02-04 14:47:23 -080056# Autotest Server Package.
57AUTOTEST_SERVER_PACKAGE = 'autotest_server_package'
58
Chris Sosa76e44b92013-01-31 12:11:38 -080059# Test Suites - just the test suites control files from the autotest directory.
60TEST_SUITES = 'test_suites'
61
62# AU Suite - The control files for the autotest autoupdate suite.
63AU_SUITE = 'au_suite'
64
Chris Sosa968a1062013-08-02 17:42:50 -070065# AU Suite - The control files for the paygen autoupdate suite (depends
66# on channel defined in devserver_constants).
67PAYGEN_AU_SUITE_TEMPLATE = 'paygen_au_%(channel)s_suite'
Chris Sosa5d1b0792013-07-31 10:54:52 -070068
Chris Sosa76e44b92013-01-31 12:11:38 -080069#### Miscellaneous artifacts. ####
70
71# Firmware tarball.
72FIRMWARE = 'firmware'
73
74# Tarball containing debug symbols for the given build.
75SYMBOLS = 'symbols'
76
Dan Shi55d0f972016-10-04 11:45:00 -070077# A compressed tarball containing only sym files of debug symbols for the
78# given build.
79SYMBOLS_ONLY = 'symbols_only'
80
beepsc3d0f872013-07-31 21:50:40 -070081# The factory test image.
82FACTORY_IMAGE = 'factory_image'
Chris Sosa76e44b92013-01-31 12:11:38 -080083
Mike Frysingera0e6a282016-09-01 17:29:08 -040084# The factory shim image.
85FACTORY_SHIM_IMAGE = 'factory_shim_image'
86
Justin Giorgib7590522017-02-07 13:36:24 -080087#### Libiota Artifacts. These are in the same namespace as the above. ####
88
89# Archive with test binaries for flashing to the DUT.
90LIBIOTA_TEST_BINARIES = 'libiota_test_binaries'
91
92# Utilities required for managing the DUT.
93LIBIOTA_BOARD_UTILS = 'libiota_board_utils'
94
Gabe Black3b567202015-09-23 14:07:59 -070095#### Android artifacts. These are in a different namespace from the above. ####
96
97# Various android images stored in a zip file (including boot and system).
98# For example, shamu-img-2284311.zip contains boot.img, cache.img, recovery.img,
99# system.img and userdata.img. fastboot can use the zip file to update the dut
100# in a single command. Therefore, devserver does not unzip the zip file to avoid
101# unnecessary load on the devserver.
102ANDROID_ZIP_IMAGES = 'zip_images'
103
104# Radio image.
105ANDROID_RADIO_IMAGE = 'radio_image'
106
107# Bootloader image.
108ANDROID_BOOTLOADER_IMAGE = 'bootloader_image'
109
110# fastboot, utility to flash image to Android device.
111ANDROID_FASTBOOT = 'fastboot'
112
113# Test zip file for Android build, e.g., shamu-tests-2284311.zip
114ANDROID_TEST_ZIP = 'test_zip'
115
Dan Shi74136ae2015-12-01 14:40:06 -0800116# Zip file of vendor partitions used by Brillo device.
117ANDROID_VENDOR_PARTITION_ZIP = 'vendor_partitions'
118
Simran Basi05be7212016-03-16 13:08:23 -0700119# Zip file of native tests used by Android devices.
120ANDROID_NATIVETESTS_ZIP = 'nativetests'
Ralph Nathan6c7fe5e2016-06-22 15:50:10 -0700121ANDROID_CONTINUOUS_NATIVE_TESTS_ZIP = 'continuous_native_tests'
Justin Giorgibb32ac42016-08-04 10:34:35 -0700122ANDROID_CONTINUOUS_INSTRUMENTATION_TESTS_ZIP = (
123 'continuous_instrumentation_tests')
Justin Giorgi4faa8902016-08-19 19:54:30 -0700124ANDROID_CTS_ZIP = 'android-cts'
Simran Basi05be7212016-03-16 13:08:23 -0700125
Justin Giorgi576c1542016-06-24 08:24:20 -0700126# Zip file including all target files and images
127ANDROID_TARGET_FILES_ZIP = 'target_files'
128
129# Zip file containing DTB for emulators
130ANDROID_DTB_ZIP = 'dtb'
131
Satoshi Niwa5e3ed5e2018-06-25 16:03:33 +0900132# Zip file containing push_to_device.py and tools it depends on
133ANDROID_PUSH_TO_DEVICE_ZIP = 'push_to_device_zip'
134
Chris Sosa76e44b92013-01-31 12:11:38 -0800135# In general, downloading one artifact usually indicates that the caller will
136# want to download other artifacts later. The following map explicitly defines
137# this relationship. Specifically:
138# If X is requested, all items in Y should also get triggered for download.
Dan Shi6c2b2a22016-03-04 15:52:19 -0800139CROS_REQUESTED_TO_OPTIONAL_MAP = {
Simran Basi4243a862014-12-12 12:48:33 -0800140 TEST_SUITES: [CONTROL_FILES, AUTOTEST_PACKAGES],
Chris Sosa76e44b92013-01-31 12:11:38 -0800141}
Dan Shi6c2b2a22016-03-04 15:52:19 -0800142# Launch Control builds do not support autotest package.
143ANDROID_REQUESTED_TO_OPTIONAL_MAP = {
144 TEST_SUITES: [CONTROL_FILES],
145}
Dan Shi2f136862016-02-11 15:38:38 -0800146
147# Map between the artifact name and the folder after it's unzipped.
148ARTIFACT_UNZIP_FOLDER_MAP = {
149 ANDROID_TEST_ZIP: 'DATA',
150}