# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.


# Job keyvals for finding debug symbols when processing crash dumps.
JOB_BUILD_KEY = 'build'
JOB_SUITE_KEY = 'suite'

# Job keyvals for builds to be installed in dut and source of server-side tests.
JOB_BUILDS_KEY = 'builds'
JOB_TEST_SOURCE_BUILD_KEY = 'test_source_build'

# Job keyval indicating whether a job is for an experimental test.
JOB_EXPERIMENTAL_KEY = 'experimental'
RETRY_ORIGINAL_JOB_ID = 'retry_original_job_id'
# Job keyval indicating the minimum duts required by the suite
SUITE_MIN_DUTS_KEY = 'suite_min_duts'

# Job keyval indicating the scheduled tests
SCHEDULED_TEST_COUNT_KEY = 'scheduled_test_count'
SCHEDULED_TEST_NAMES_KEY = 'scheduled_test_names'

# Job attribute and label names
EXPERIMENTAL_PREFIX = 'experimental_'
FWRW_BUILD = 'fwrw_build'
FWRO_BUILD = 'fwro_build'
JOB_REPO_URL = 'job_repo_url'
VERSION_PREFIX = 'cros-version:'
BOARD_PREFIX = 'board:'
MODEL_PREFIX = 'model:'
MODEL_LABEL = 'model'
DEVICE_SKU_LABEL = 'device-sku'
BRAND_CODE_LABEL = 'brand-code'
OS_PREFIX = 'os'

# Bug filing
ISSUE_OPEN = 'open'
ISSUE_CLOSED = 'closed'
ISSUE_DUPLICATE = 'Duplicate'
ISSUE_MERGEDINTO = 'mergedInto'
ISSUE_STATE = 'state'
ISSUE_STATUS = 'status'

# Timings
ARTIFACT_FINISHED_TIME = 'artifact_finished_time'
DOWNLOAD_STARTED_TIME = 'download_started_time'
PAYLOAD_FINISHED_TIME = 'payload_finished_time'

# Reimage type names
# Please be very careful in changing or adding to these, as one needs to
# maintain backwards compatibility.
REIMAGE_TYPE_OS = 'os'
REIMAGE_TYPE_FIRMWARE = 'firmware'

# TODO b:169251326 terms below are set outside of this codebase and should
# be updated when possible ("master" -> "main").
LATEST_BUILD_URL = 'gs://chromeos-image-archive/master-paladin/LATEST-master'

JOB_OFFLOAD_FAILURES_KEY = 'offload_failures_only'

GS_OFFLOADER_INSTRUCTIONS = '.GS_OFFLOADER_INSTRUCTIONS'
GS_OFFLOADER_NO_OFFLOAD = 'no_offload'

PARENT_JOB_ID = 'parent_job_id'

# Keys of keyvals inherited from a suite job to test jobs.
KEYVAL_CIDB_BUILD_ID = 'cidb_build_id'
KEYVAL_CIDB_BUILD_STAGE_ID = 'cidb_build_stage_id'
KEYVAL_BRANCH = 'branch'
KEYVAL_BUILDER_NAME = 'build_config'
KEYVAL_MAIN_BUILDER_NAME = 'main_build_config'
SUITE_NAME = 'suite'
INHERITED_KEYVALS = (
        KEYVAL_CIDB_BUILD_ID,
        KEYVAL_CIDB_BUILD_STAGE_ID,
        KEYVAL_BRANCH,
        KEYVAL_BUILDER_NAME,
        KEYVAL_MAIN_BUILDER_NAME,
        SUITE_NAME,
)
