armbian-build/.github/workflows
Igor Pecovnik 810ff67c90 chore: cleanup mirror_to_codeberg.yml workflow
- Remove redundant daily cron schedule (already runs on push to main)
- Add concurrency control to cancel old runs
- Improve formatting and add clarifying comments
- Add push trigger for main branch
2025-12-26 15:42:35 +01:00
..
analyze-pr-kernel-security.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
announce-merge.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
announce-pr.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
auto-label-pr.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
build-pr-artifacts.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
check-pr-pictures.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
cleanup-workflow-logs.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
create-jira-ticket.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
help-forked.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
label-pr-on-approval.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
lint-pr-scripts.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
listen-pr-review.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
mirror_to_codeberg.yml chore: cleanup mirror_to_codeberg.yml workflow 2025-12-26 15:42:35 +01:00
README.md GH Actions: Update README.md on how to create and use ARMBIAN_SELF_DISPATCH_TOKEN 2024-03-09 20:03:52 +01:00
rewrite-kernel-config-files.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
scorecard.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
sync-board-list.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
sync-labels.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
sync-maintainers-status.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
sync-tools.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
welcome-issue-first-time.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00
welcome-pr-first-time.yml chore: standardize workflow names 2025-12-25 12:00:52 +01:00

Runners requirements

  • big (6-16 cores, 64Gb SSD, 16Gb memory, 2Gb swap)
  • small (4 cores, 64Gb SSD, 8Gb memory, 2Gb swap)

Preparation

Adding x86 runner to your Jammy VM (check here if any changes):

$ mkdir actions-runner 
$ cd actions-runner
$ curl -o actions-runner-linux-x64-2.294.0.tar.gz -L https://github.com/actions/runner/releases/download/v2.294.0/actions-runner-linux-x64-2.294.0.tar.gz
$ tar xzf ./actions-runner-linux-x64-2.294.0.tar.gz

Configuration

Once asked, tag your runner accordingly:

  • small
  • big
  • arm64

Start the configuration experience

$ ./config.sh --url https://github.com/armbian --token XXXXXXXXXXXXXXXXXXXXXXXXXXX

You need to get a valid token from our DevOps team to proceed.

Create startup scripts

sudo ./svc.sh install # install
sudo ./svc.sh start   # start
sudo ./svc.sh status  # check

Use workflows in forked repositories

forked-helper.yml workflow helper can help to run custom workflows on the forked repositories.

  1. Create a fine-grained Personal Access Token (PAT) with the repo scope and store it as a secret. It needs the following permissions on the target repositories:
    • contents: read & write
    • metadata: read only (automatically selected when selecting the contents permission)
  2. Create a secret named ARMBIAN_SELF_DISPATCH_TOKEN on your repository with security_events permissions. To do this, head to your forked repository, go to Settings on the top bar, select Secrets and variables and then Actions. From here you can create a new repository secret.
    • Name: ARMBIAN_SELF_DISPATCH_TOKEN
    • Secret: Paste your fine-grained Personal Access Token that you created in step 1 here
  3. Helper will dispatch repository_dispatch event armbian on push, release, deployment, pull_request and workflow_dispatch events. All needed event details you can find in client_payload property of the event.
  4. Create empty default branch in forked repository
  5. Create workflow with repository_dispatch in default branch.
  6. Run any need actions in this workflow.

Workflow example:

name: Test Armbian dispatch

on:
  repository_dispatch:
    types: ["armbian"]

jobs:
  show-dispatch:
    name: Show dispatch event details
    runs-on: ubuntu-latest
    steps:
      - uses: hmarr/debug-action@v2