Skip to content

Component Features - Linux #42

Component Features - Linux

Component Features - Linux #42

# Component Features - Linux
#
# Validates that each component feature compiles
#
# Runs on:
# - scheduled UTC midnight Tues-Sat
# - on PR review (see comment-trigger.yml)
# - on demand from github actions UI
name: Component Features - Linux
on:
workflow_call:
workflow_dispatch:
schedule:
# At midnight UTC Tue-Sat
- cron: '0 0 * * 2-6'
jobs:
check-component-features:
# use free tier on schedule and 8 core to expedite results on demand invocation
runs-on: ${{ github.event_name == 'schedule' && 'ubuntu-latest' || 'ubuntu-20.04-8core' }}
if: github.event_name == 'pull_request_review' || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule'
steps:
- name: (PR review) Set latest commit status as pending
if: github.event_name == 'pull_request_review'
uses: myrotvorets/set-commit-status-action@v2.0.1
with:
sha: ${{ github.event.review.commit_id }}
token: ${{ secrets.GITHUB_TOKEN }}
context: Component Features - Linux
status: pending
- name: (PR review) Checkout PR branch
if: github.event_name == 'pull_request_review'
uses: actions/checkout@v3
with:
ref: ${{ github.event.review.commit_id }}
- name: Checkout branch
if: github.event_name != 'pull_request_review'
uses: actions/checkout@v3
- run: sudo -E bash scripts/environment/bootstrap-ubuntu-20.04.sh
- run: bash scripts/environment/prepare.sh
- run: echo "::add-matcher::.github/matchers/rust.json"
- run: make check-component-features
- name: (PR review) Set latest commit status as ${{ job.status }}
if: always() && github.event_name == 'pull_request_review'
uses: myrotvorets/set-commit-status-action@v2.0.1
with:
sha: ${{ github.event.review.commit_id }}
token: ${{ secrets.GITHUB_TOKEN }}
context: Component Features - Linux
status: ${{ job.status }}