armbian-build/.github/workflows
Werner da899b2c93
attempt to fix pr announce for all contributors (#7081)
The earlier attempt seem to limit announces to repository members for some reason.
This attempt limits to the repo only, therefore forks should not be affected.
Not sure if it works, but there is only one way to find out.
2024-08-13 17:41:10 +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 attempt to fix pr announce for all contributors (#7081) 2024-08-13 17:41:10 +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.5 to 4.3.6 2024-08-13 12:20:02 +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