name: Nightly-Build # workflow used to upload built binaries to s3 on: workflow_dispatch: inputs: runner_label: type: string default: "auto-provisioned" description: "runner label" commit_sha: type: string default: "" jobs: build_and_test: strategy: fail-fast: false matrix: build_preset: ["relwithdebinfo", "release-asan"] runs-on: [ self-hosted, auto-provisioned, "${{ format('build-preset-{0}', matrix.build_preset) }}" ] name: Build and test ${{ matrix.build_preset }} steps: - name: Checkout uses: actions/checkout@v4 with: ref: ${{ inputs.commit_sha }} fetch-depth: 2 - name: Setup ydb access uses: ./.github/actions/setup_ci_ydb_service_account_key_file_credentials with: ci_ydb_service_account_key_file_credentials: ${{ secrets.CI_YDB_SERVICE_ACCOUNT_KEY_FILE_CREDENTIALS }} - name: Build and test uses: ./.github/actions/build_and_test_ya with: build_preset: ${{ matrix.build_preset }} build_target: "ydb/apps/ydbd" increment: false run_tests: false put_build_results_to_cache: false secs: ${{ format('{{"TESTMO_TOKEN2":"{0}","AWS_KEY_ID":"{1}","AWS_KEY_VALUE":"{2}","REMOTE_CACHE_USERNAME":"{3}","REMOTE_CACHE_PASSWORD":"{4}"}}', secrets.TESTMO_TOKEN2, secrets.AWS_KEY_ID, secrets.AWS_KEY_VALUE, secrets.REMOTE_CACHE_USERNAME, secrets.REMOTE_CACHE_PASSWORD ) }} vars: ${{ format('{{"AWS_BUCKET":"{0}","AWS_ENDPOINT":"{1}","REMOTE_CACHE_URL":"{2}","TESTMO_URL":"{3}","TESTMO_PROJECT_ID":"{4}"}}', vars.AWS_BUCKET, vars.AWS_ENDPOINT, vars.REMOTE_CACHE_URL_YA, vars.TESTMO_URL, vars.TESTMO_PROJECT_ID ) }} - name: Setup s3cmd uses: ./.github/actions/s3cmd with: s3_bucket: "ydb-builds" s3_endpoint: ${{ vars.AWS_ENDPOINT }} s3_key_id: ${{ secrets.AWS_KEY_ID }} s3_key_secret: ${{ secrets.AWS_KEY_VALUE }} - name: sync results to s3 and publish links shell: bash run: | set -x s3cmd sync --follow-symlinks --acl-public --no-progress --stats --no-check-md5 "ydb/apps/ydbd/ydbd" "s3://ydb-builds/${{ github.ref_name }}/${{ matrix.build_preset }}/ydbd" -d