Collection of reusable GitHub actions to automate your workflows for embedded projects with Arm processors and/or CMSIS components.
This action activates an
Arm user based license
using the armlm
license manager.
- name: Activate Arm license
uses: ARM-software/cmsis-actions/armlm@v1
with:
code: <personal product code>
server: <custom license server>
product: KEMDK-COM0
inputs | default value | description |
---|---|---|
code: |
n/a | License activation code (takes precedence over server/product). |
server: |
n/a | Get a product license from the server specified by a URL. |
product: |
KEMDK-COM0 | Get a license for the specified product from the server (default MDK Community Edition). |
The action can be either called with a
license activation code:
or a license server:
with product:
specification.
Without any inputs
, it activates a license for the Keil MDK - Community Edition which is a free-to-use,
non-commercial license which can be used for evaluation.
-
github.com/Arm-Examples/AVH_CI_Template actives a Keil MDK - Community Edition as it uses no inputs.
-
github.com/ARM-software/CMSIS_6 actives a commerical product using a license activation code that is provided via a GitHub secret.
This action can be used to install vcpkg into the current runner environment.
- name: Install vcpkg
uses: ARM-software/cmsis-actions/setup-vcpkg@v1
This action installs a development environment with the tools described in the file vcpkg-configuration.json
.
The tools are downloaded from the Arm Tools Artifactory.
Refer to CMSIS-Toolbox - Installation - vcpkg - Setup using CLI installation guide
for more information.
- name: Setup vcpkg environment
uses: ARM-software/cmsis-actions/vcpkg@v1
with:
config: "./vcpkg-configuration.json"
vcpkg-downloads: "${{ github.workspace }}/.vcpkg/downloads"
cache: "-"
inputs | default value | description |
---|---|---|
config: |
"./vcpkg-configuration.json" | Path and filename of the vcpkg configuration file. |
vcpkg-downloads: |
"${{ github.workspace }}/.vcpkg/downloads" | Download folder for vcpkg tool artifacts |
cache: |
"-" (no cache used) | Create a cache with a key to store tool artifacts. |
The activated environment is preserved into $GITHUB_PATH
and $GITHUB_ENV
so that it can be used by subsequent steps. The cache is based on
actions/cache and improves workflow execution time.
-
github.com/Arm-Examples/AVH_CI_Template uses
vcpkg
to install the required tools. -
https://github.com/ARM-software/CMSIS-FreeRTOS uses
vcpkg
with a cache. As there are multiple test executions, the workflow execution speed is improved.