armbian-build/.github/workflows
dependabot[bot] 48128c869f build(deps): bump actions/upload-artifact from 4.3.4 to 4.3.5
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.4 to 4.3.5.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](0b2256b8c0...89ef406dd8)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-05 20:38:00 +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
open-jira-ticket.yml actions: Run YAML formatter over all workflow files 2024-07-11 18:02:32 +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