armbian-build/.github/workflows
Igor Pečovnik 1fcdf63c4e
Look only for bash shebang (#4928)
* Look only for bash shebang

We have some Python scripts now so we need to move that out

* Extend script to cover ignored files and use internal tool for checking the rest

Signed-off-by: Igor <igor@armbian.com>

---------

Signed-off-by: Igor <igor@armbian.com>
2023-03-15 16:22:14 +01:00
..
forked-helper.yml
kernel-security-analysis-pr.yml Improve filelist filtering to check only files that are interested for this (#4919) 2023-03-08 11:20:05 +01:00
labeler.yml
lint-scripts-pr.yml Look only for bash shebang (#4928) 2023-03-15 16:22:14 +01:00
open-jira-ticket.yml Open a Jira ticket when GitHub issue is raised (#4887) 2023-03-02 19:09:55 +01:00
README.md Update documentation for prepare self hosted runner (#4053) 2022-08-08 08:18:30 +02:00
rebase.yml Bump cirrus-actions/rebase from 1.7 to 1.8 (#4592) 2022-12-20 10:35:51 +01:00
scorecard.yml build(deps): bump actions/upload-artifact from 3.0.0 to 3.1.2 2023-02-22 07:18:41 +00: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. Set ARMBIAN_SELF_DISPATCH_TOKEN secret on your repository with security_events permissions.
  2. 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.
  3. Create empty default branch in forked repository
  4. Create workflow with repository_dispatch in default branch.
  5. 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