go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/analysis/result-ingestion/service-result-ingestion.yaml (about)

     1  # Copyright 2022 The LUCI Authors.
     2  #
     3  # Licensed under the Apache License, Version 2.0 (the "License");
     4  # you may not use this file except in compliance with the License.
     5  # You may obtain a copy of the License at
     6  #
     7  #      http://www.apache.org/licenses/LICENSE-2.0
     8  #
     9  # Unless required by applicable law or agreed to in writing, software
    10  # distributed under the License is distributed on an "AS IS" BASIS,
    11  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  # See the License for the specific language governing permissions and
    13  # limitations under the License.
    14  
    15  runtime: go121
    16  instance_class: F4
    17  service: result-ingestion
    18  service_account: ${SERVICE_ACCOUNT}
    19  
    20  automatic_scaling:
    21    target_throughput_utilization: 0.90
    22    target_cpu_utilization: 0.90
    23    # Limited to 5 to ensure GAE remains within memory limits.
    24    max_concurrent_requests: 5
    25  
    26  # Note: this is interpreted by gae.py, it maps the app ID being deployed to
    27  # values of ${...} vars.
    28  # Reference: https://chromium.googlesource.com/infra/luci/luci-go/+/HEAD/examples/appengine/helloworld_v2/app.yaml
    29  #
    30  # This configuration is only used for developer testing. The
    31  # configuration used for development and production instances is
    32  # contained in the infradata/gae repo. Refer to LUCI GAE Automatic
    33  # Deployment for more (go/luci/how_to_deploy.md) (Googlers only).
    34  #
    35  # IMPORTANT: Keep in sync between app.yaml and service-result-ingestion.yaml.
    36  # IMPORTANT: Keep in sync with app.star files in
    37  # https://chrome-internal.googlesource.com/infradata/gae/+/refs/heads/main/apps/luci-analysis/
    38  # and in
    39  # https://chrome-internal.googlesource.com/infradata/gae/+/refs/heads/main/apps/weetbix/
    40  luci_gae_vars:
    41    luci-analysis-dev:
    42      AUTH_SERVICE_HOST: chrome-infra-auth-dev.appspot.com
    43      CONFIG_SERVICE_HOST: config.luci.app
    44      TS_MON_ACCOUNT: app-engine-metric-publishers@prodx-mon-chrome-infra.google.com.iam.gserviceaccount.com
    45      OAUTH_CLIENT_ID: 171536942974-su83vlacqnbccpm2h32ki6gs5a2hi7eo.apps.googleusercontent.com
    46      OAUTH_CLIENT_SECRET: sm://oauth-client-secret
    47      OAUTH_REDIRECT_URL: https://luci-analysis-dev.appspot.com/auth/openid/callback
    48      ROOT_SECRET: sm://root-secret
    49      TINK_AEAD_KEY: sm://tink-aead-primary
    50      SPANNER_DB: projects/luci-analysis-dev/instances/dev/databases/luci-analysis-dev
    51      DISABLE_PROJECT_SCOPED_AUTH: TRUE
    52      BUGANIZER_MODE: disable
    53      BUGANIZER_ENDPOINT_BASE: placeholder-issuetracker-c2p
    54      BUGANIZER_ENDPOINT_OAUTH_SCOPE: https://www.googleapis.com/auth/placeholder
    55      BUGANIZER_TEST_COMPONENT_ID: 12345
    56      BUGANIZER_TEST_MODE: false
    57      BUGANIZER_SELF_EMAIL: email@google.com
    58      SERVICE_ACCOUNT: luci-analysis-dev-service@luci-analysis-dev.iam.gserviceaccount.com
    59      PROFILING_PROBABILITY: "0.25"
    60  
    61  # IMPORTANT: Except for /static, keep in sync between app.yaml and service-result-ingestion.yaml.
    62  handlers:
    63  - url: /_ah/push-handlers/.*
    64    script: auto
    65    login: admin
    66    secure: always
    67  
    68  - url: /.*
    69    script: auto
    70    secure: always
    71  
    72  # IMPORTANT: Keep in sync between app.yaml and service-result-ingestion.yaml.
    73  entrypoint: >
    74    main
    75    -auth-service-host ${AUTH_SERVICE_HOST}
    76    -config-service-host ${CONFIG_SERVICE_HOST}
    77    -ts-mon-account ${TS_MON_ACCOUNT}
    78    -encrypted-cookies-client-id ${OAUTH_CLIENT_ID}
    79    -frontend-client-id ${OAUTH_CLIENT_ID}
    80    -encrypted-cookies-client-secret ${OAUTH_CLIENT_SECRET}
    81    -encrypted-cookies-expose-state-endpoint
    82    -encrypted-cookies-redirect-url ${OAUTH_REDIRECT_URL}
    83    -encrypted-cookies-tink-aead-key ${TINK_AEAD_KEY}
    84    -root-secret ${ROOT_SECRET}
    85    -spanner-database ${SPANNER_DB}
    86    -disable-project-scoped-auth=${DISABLE_PROJECT_SCOPED_AUTH}
    87    -buganizer-mode=${BUGANIZER_MODE}
    88    -buganizer-endpoint-base=${BUGANIZER_ENDPOINT_BASE}
    89    -buganizer-endpoint-oauth-scope=${BUGANIZER_ENDPOINT_OAUTH_SCOPE}
    90    -buganizer-test-component-id=${BUGANIZER_TEST_COMPONENT_ID}
    91    -buganizer-self-email=${BUGANIZER_SELF_EMAIL}
    92    -buganizer-test-mode=${BUGANIZER_TEST_MODE}
    93    -profiling-probability=${PROFILING_PROBABILITY}