aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows/build_and_test_ya_provisioned.yml
blob: bbab9cf9b8571aa0c78fdb837b918957c791b9df (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
name: Ya-Build-and-Test-Provisioned

on:
  workflow_dispatch:
    inputs:
      build_target:
        type: string
        default: "ydb/"
        description: "limit build and test to specific target"
      build_preset:
        type: choice
        default: "relwithdebinfo"
        description: "Build preset"
        options:
          - debug
          - relwithdebinfo
          - release-asan
          - release-tsan
          - release-msan
      test_size:
        type: choice
        default: "small,medium,large"
        description: "test size to run"
        options:
          - small
          - small,medium
          - small,medium,large
      test_type:
        type: choice
        default: "unittest,py3test,py2test,pytest"
        description: "type of tests to run"
        options:
          - unittest
          - py3test,py2test,pytest
          - unittest,py3test,py2test,pytest
      run_build:
        type: boolean
        default: true
        description: "run build"
      run_tests:
        type: boolean
        default: true
        description: "run tests"
      test_threads:
        type: string
        default: "28"
        description: "Test threads count"
      link_threads:
        type: string
        default: "8"
        description: "link threads count"
      runner_label:
        type: string
        default: "auto-provisioned"
        description: "runner label"
      put_build_results_to_cache:
        type: boolean
        default: true
  workflow_call:
    inputs:
      build_target:
        type: string
        default: "ydb/"
      build_preset:
        type: string
        default: "relwithdebinfo"
      test_size:
        type: string
        default: "small,medium,large"
      test_type:
        type: string
        default: "unittest,py3test,py2test,pytest"
      run_build:
        type: boolean
        default: true
      run_tests:
        type: boolean
        default: true
      test_threads:
        type: string
        default: 28
        description: "Test threads count"
      link_threads:
        type: string
        default: 8
        description: "link threads count"
      runner_label:
        type: string
        default: "auto-provisioned"
      put_build_results_to_cache:
        type: boolean
        default: true
      commit_sha:
        type: string
        default: ""
jobs:
  main:
    uses: ./.github/workflows/build_and_test_ya.yml
    with:
      # FIXME: always use auto-provisioned here?
      runner_label: ${{ inputs.runner_label }}
      # naive check for -asan, -tsan, -msan
      runner_additional_label: ${{ contains(inputs.build_preset, '-') && format('build-preset-{0}', inputs.build_preset) || '' }}
      build_target: ${{ inputs.build_target }}
      build_preset: ${{ inputs.build_preset }}
      run_build: ${{ inputs.run_build }}
      run_tests: ${{ inputs.run_tests }}
      test_size: ${{ inputs.test_size }}
      test_type: ${{ inputs.test_type }}
      link_threads: ${{ inputs.link_threads }}
      test_threads: ${{ inputs.test_threads }}
      put_build_results_to_cache: ${{ inputs.put_build_results_to_cache }}
      commit_sha: ${{ inputs.commit_sha }}
    secrets: inherit