armbian-build/.github/workflows
Werner ac01365708
fix pr being announce multiple times (#7070)
by limiting action to pr opening.
2024-08-12 19:04:25 +02:00
..
build-board-list.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +02:00
build-train.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +02:00
forked-helper.yml actions: forked-helper: Don't escape multiline strings 2024-07-18 11:43:38 +02:00
labels-from-yml.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +02:00
merge-announce.yml Send summaries of PR and merges to main chat (#7060) 2024-08-11 09:29:12 +02:00
open-jira-ticket.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +02:00
pr-announce.yml fix pr being announce multiple times (#7070) 2024-08-12 19:04:25 +02:00
pr-auto-labeler.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +02:00
pr-build-artifacts.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +02:00
pr-kernel-security-analysis.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +02:00
pr-lint-scripts.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +02: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
scorecard.yml build(deps): bump actions/upload-artifact from 4.3.4 to 4.3.5 2024-08-05 20:38:00 +02:00
update-tools.yml actions: Create workflow to update shell tools via auto-PR 2024-07-18 11:54:02 +02: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