Allow overriding the meta-balena ref for workflow dispatch #165
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
name: Generic x86_64 (GPT) | |
on: | |
# https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore | |
# https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet | |
pull_request: | |
branches: | |
- main | |
- master | |
# ESR branches glob pattern | |
- 20[0-9][0-9].[0-1]?[1470].x | |
pull_request_target: | |
branches: | |
- main | |
- master | |
push: | |
tags: | |
# Semver tags glob pattern (includes ESR in format v20YY.MM.PATCH) | |
- v[0-9]+.[0-9]+.[0-9]+\+?r?e?v?* | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
inputs: | |
force-finalize: | |
description: Force finalize of the build (implicitly enables hostapp and S3 deployments) | |
required: false | |
type: boolean | |
default: false | |
deploy-environment: | |
description: Environment to use for build and deploy | |
required: false | |
type: string | |
default: balena-staging.com+sign-api-key | |
meta-balena-ref: | |
description: meta-balena ref if not the currently pinned version | |
required: false | |
type: string | |
default: '' | |
yocto-scripts-ref: | |
description: yocto-scripts ref if not the currently pinned version | |
required: false | |
type: string | |
default: '' | |
jobs: | |
yocto: | |
name: Yocto | |
uses: balena-os/balena-yocto-scripts/.github/workflows/yocto-build-deploy.yml@kyle/qemu-debug | |
# Prevent duplicate workflow executions for pull_request (PR) and pull_request_target (PRT) events. | |
# Both PR and PRT will be triggered for the same pull request, whether it is internal or from a fork. | |
# This condition will prevent the workflow from running twice for the same pull request while | |
# still allowing it to run for all other event types. | |
if: (github.event.pull_request.head.repo.full_name == github.repository) == (github.event_name == 'pull_request') | |
secrets: inherit | |
with: | |
machine: generic-amd64 | |
# Allow manual workflow runs to force finalize without checking previous test runs | |
force-finalize: ${{ inputs.force-finalize || false }} | |
# Default to balena-staging.com for workflow dispatch, but balena-cloud.com for other events | |
deploy-environment: ${{ inputs.deploy-environment || 'balena-cloud.com+sign-api-key' }} | |
# Allow overriding the meta-balena ref for workflow dispatch events | |
meta-balena-ref: ${{ inputs.meta-balena-ref || '' }} | |
# Allow overriding the yocto-scripts ref for workflow dispatch events | |
yocto-scripts-ref: ${{ inputs.yocto-scripts-ref || '' }} | |
# Sign image for secure boot | |
sign-image: true | |
# Use QEMU workers for testing and run cloud suite against balenaCloud production | |
test_matrix: > | |
{ | |
"test_suite": ["os","cloud","hup"], | |
"environment": ["balena-cloud.com"], | |
"worker_type": ["qemu"], | |
"runs_on": [["self-hosted", "X64", "kvm", "yocto"]], | |
"secure_boot": ["sb",""] | |
} |