-
Notifications
You must be signed in to change notification settings - Fork 11
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added snphost CI PR test workflow to perform snphost cargo tests on the self-hosted runner for a new PR, updated PR or after SNP kernel update on the self-hosted runner Signed-off-by: Harika Nittala <[email protected]>
- Loading branch information
1 parent
b2bfb06
commit e62617b
Showing
1 changed file
with
73 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
name: snphost CI PR test | ||
|
||
on: | ||
pull_request_target: | ||
types: | ||
- reopened | ||
- opened | ||
- edited | ||
- synchronize | ||
workflow_dispatch: | ||
inputs: | ||
pull_request_number: | ||
description: 'Specify the pull request number' | ||
pull_request_branch: | ||
description: 'Specify pull request source branch' | ||
|
||
jobs: | ||
host_firmware_tests: | ||
runs-on: self-hosted | ||
steps: | ||
- name: Checkout Repository | ||
uses: actions/checkout@v3 | ||
|
||
- name: Verify if SNP is enabled on the host | ||
run: | | ||
source ./.github/workflows/snp_function_declarations.sh | ||
verify_snp_host | ||
- name: Set the PR number and PR branch environment based on GH Action event type | ||
run: | | ||
event_pr_number='' | ||
event_pr_branch='' | ||
if [ ${{ github.event_name }} == "pull_request_target" ]; then | ||
event_pr_number=${{ github.event.pull_request.number }} | ||
event_pr_branch=${{ github.event.pull_request.head.ref }} | ||
elif [ ${{ github.event_name }} == "workflow_dispatch" ]; then | ||
event_pr_number=${{ github.event.inputs.pull_request_number }} | ||
event_pr_branch=${{ github.event.inputs.pull_request_branch }} | ||
fi | ||
echo "pr_number=${event_pr_number}" >> $GITHUB_ENV | ||
echo "pr_branch=${event_pr_branch}" >> $GITHUB_ENV | ||
- name: Show the GH environment variable current values | ||
run: | | ||
echo "GH Action PR number = ${{ env.pr_number }}" | ||
echo "GH Action PR branch = ${{ env.pr_branch }}" | ||
- name: Run snphost cargo test on the host | ||
run: | | ||
set -e | ||
# Check and install dependencies on the host | ||
source ./.github/workflows/snp_function_declarations.sh | ||
check_rust_on_host | ||
cd ${HOME}/ | ||
git clone https://github.com/LakshmiSaiHarika/snphost.git | ||
cd ${HOME}/snphost | ||
# Checkout the PR branch | ||
if [[ ${{ github.event_name }} == "pull_request_target" || ${{ github.event_name }} == "workflow_dispatch" ]]; then | ||
git fetch origin pull/${{ env.pr_number }}/head:${{ env.pr_branch }} | ||
git switch ${{ env.pr_branch }} | ||
fi | ||
# Perform cargo test on the host | ||
cargo test | ||
- name: snphost post cleanup tasks | ||
if: always() | ||
run: rm -rf ${HOME}/snphost |