Skip to content

Commit

Permalink
patch: Add GHA Build Test Deploy workflows
Browse files Browse the repository at this point in the history
Changelog-entry: Add GHA Build Test Deploy workflows
Signed-off-by: Vipul Gupta (@vipulgupta2048) <vipulgupta2048@gmail.com>
  • Loading branch information
vipulgupta2048 committed Oct 4, 2024
1 parent 4ee1c11 commit d4e1d19
Show file tree
Hide file tree
Showing 7 changed files with 348 additions and 17 deletions.
17 changes: 0 additions & 17 deletions .github/workflows/build_and_deploy.yml

This file was deleted.

58 changes: 58 additions & 0 deletions .github/workflows/jetson-agx-orin-devkit-64gb.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Nvidia Jetson AGX Orin 64GB Devkit"

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


jobs:
yocto:
name: Yocto
uses: balena-os/balena-yocto-scripts/.github/workflows/yocto-build-deploy.yml@v1.25.47
# 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: jetson-agx-orin-devkit-64gb
# worker_type defaults to testbot
# worker_fleets defaults to balena/testbot-rig,balena/testbot-rig-partners,balena/testbot-rig-x86,balena/testbot-rig-partners-x86
test_matrix: >
{
"test_suite": ["os","cloud","hup"],
"environment": ["bm.balena-dev.com"],
"runs_on": [["ubuntu-latest"]]
}
# 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' }}
58 changes: 58 additions & 0 deletions .github/workflows/jetson-agx-orin-devkit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Nvidia Jetson AGX Orin Devkit"

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


jobs:
yocto:
name: Yocto
uses: balena-os/balena-yocto-scripts/.github/workflows/yocto-build-deploy.yml@v1.25.47
# 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: jetson-agx-orin-devkit
# worker_type defaults to testbot
# worker_fleets defaults to balena/testbot-rig,balena/testbot-rig-partners,balena/testbot-rig-x86,balena/testbot-rig-partners-x86
test_matrix: >
{
"test_suite": ["os","cloud","hup"],
"environment": ["bm.balena-dev.com"],
"runs_on": [["ubuntu-latest"]]
}
# 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' }}
58 changes: 58 additions & 0 deletions .github/workflows/jetson-orin-nano-devkit-nvme.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Nvidia Jetson Orin Nano 8GB (SD) Devkit NVME"

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


jobs:
yocto:
name: Yocto
uses: balena-os/balena-yocto-scripts/.github/workflows/yocto-build-deploy.yml@v1.25.47
# 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: jetson-orin-nano-devkit-nvme
# worker_type defaults to testbot
# worker_fleets defaults to balena/testbot-rig,balena/testbot-rig-partners,balena/testbot-rig-x86,balena/testbot-rig-partners-x86
test_matrix: >
{
"test_suite": ["os","cloud","hup"],
"environment": ["bm.balena-dev.com"],
"runs_on": [["ubuntu-latest"]]
}
# 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' }}
58 changes: 58 additions & 0 deletions .github/workflows/jetson-orin-nano-seeed-j3010.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Seeed ReComputer J3010"

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


jobs:
yocto:
name: Yocto
uses: balena-os/balena-yocto-scripts/.github/workflows/yocto-build-deploy.yml@v1.25.47
# 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: jetson-orin-nano-seeed-j3010
# worker_type defaults to testbot
# worker_fleets defaults to balena/testbot-rig,balena/testbot-rig-partners,balena/testbot-rig-x86,balena/testbot-rig-partners-x86
test_matrix: >
{
"test_suite": ["os","cloud","hup"],
"environment": ["balena-cloud.com"],
"runs_on": [["ubuntu-latest"]]
}
# 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' }}
58 changes: 58 additions & 0 deletions .github/workflows/jetson-orin-nx-seeed-j4012.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Nvidia Jetson Orin NX in Seeed ReComputer J4012"

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


jobs:
yocto:
name: Yocto
uses: balena-os/balena-yocto-scripts/.github/workflows/yocto-build-deploy.yml@v1.25.47
# 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: jetson-orin-nx-seeed-j4012
# worker_type defaults to testbot
# worker_fleets defaults to balena/testbot-rig,balena/testbot-rig-partners,balena/testbot-rig-x86,balena/testbot-rig-partners-x86
test_matrix: >
{
"test_suite": ["os","cloud","hup"],
"environment": ["balena-cloud.com"],
"runs_on": [["ubuntu-latest"]]
}
# 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' }}
58 changes: 58 additions & 0 deletions .github/workflows/jetson-orin-nx-xavier-nx-devkit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Nvidia Jetson Orin NX in Xavier NX Devkit NVME"

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


jobs:
yocto:
name: Yocto
uses: balena-os/balena-yocto-scripts/.github/workflows/yocto-build-deploy.yml@v1.25.47
# 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: jetson-orin-nx-xavier-nx-devkit
# worker_type defaults to testbot
# worker_fleets defaults to balena/testbot-rig,balena/testbot-rig-partners,balena/testbot-rig-x86,balena/testbot-rig-partners-x86
test_matrix: >
{
"test_suite": ["os","cloud","hup"],
"environment": ["bm.balena-dev.com"],
"runs_on": [["ubuntu-latest"]]
}
# 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' }}

0 comments on commit d4e1d19

Please sign in to comment.