@@ -129,6 +129,8 @@ jobs:
129129 - provide-runner
130130 with :
131131 runner_kind : self-hosted
132+ runner_instance_id : ${{ needs.provide-runner.outputs.instance-id }}
133+ runner_ipv4 : ${{ needs.provide-runner.outputs.runner_local_ipv4 }}
132134 runner_label : ${{ needs.provide-runner.outputs.label }}
133135 build_target : ${{ needs.provide-runner.outputs.large_tests == 'yes' && 'cloud/blockstore/apps/,cloud/filestore/apps/,cloud/disk_manager/,cloud/tasks/,cloud/storage/' || 'cloud/tasks' }}
134136 test_target : ${{ needs.provide-runner.outputs.large_tests == 'yes' && 'cloud/blockstore/,cloud/filestore/,cloud/disk_manager/,cloud/tasks/,cloud/storage/' || 'cloud/tasks' }}
@@ -146,3 +148,44 @@ jobs:
146148 number_of_retries : ${{ inputs.number_of_retries }}
147149 truncate_enabled : ${{ contains(github.event.pull_request.labels.*.name, 'disable_truncate') && 'no' || 'yes' }}
148150 secrets : inherit
151+
152+ release-runner :
153+ name : Release self-hosted runner (${{ inputs.build_preset }}) [id=${{ needs.provide-runner.outputs.instance-id }} local_ip=${{ needs.provide-runner.outputs.runner_local_ipv4 }} ip=${{ needs.provide-runner.outputs.runner_ipv4 }}]
154+ needs :
155+ - provide-runner
156+ - build-and-test
157+ runs-on : ubuntu-latest
158+ if : always()
159+ steps :
160+ - name : checkout PR
161+ uses : actions/checkout@v4
162+ if : github.event.pull_request.head.sha != ''
163+ with :
164+ submodules : false
165+ sparse-checkout : ' .github'
166+ ref : ${{ github.event.pull_request.head.sha }}
167+ fetch-depth : ${{ !contains(github.event.pull_request.labels.*.name, 'rebase') && 1 || 0 }}
168+ - name : rebase PR
169+ if : ${{ github.event.pull_request.head.sha != '' && contains(github.event.pull_request.labels.*.name, 'rebase') }}
170+ shell : bash
171+ run : |
172+ git config user.email "robot-nbs@nebius.com"
173+ git config user.name "Robot NBS"
174+ git fetch origin ${{ github.event.pull_request.base.ref }}
175+ git rebase origin/${{ github.event.pull_request.base.ref }}
176+ - name : checkout
177+ uses : actions/checkout@v4
178+ if : github.event.pull_request.head.sha == ''
179+ with :
180+ submodules : false
181+ sparse-checkout : ' .github'
182+ - name : Stop runner
183+ uses : ./.github/actions/nebius_runner_remove
184+ timeout-minutes : 60
185+ with :
186+ service_account_key : ${{ secrets.NEW_NEBIUS_SA_JSON_CREDENTIALS }}
187+ token : ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
188+ repo_owner : ${{ github.repository_owner }}
189+ repo : ${{ github.event.repository.name }}
190+ vm_parent_id : ${{ vars.NEBIUS_PARENT_ID }}
191+ vm_id : ${{ needs.provide-runner.outputs.instance-id }}
0 commit comments