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