Disclaimer The information provided in this tutorial is subject to change without notice and does not represent a commitment on any part of IAR. While the information contained herein is useful as reference for DevOps Engineers willing to implement CI/CD using IAR Tools, IAR assumes no responsibility for any errors, omissions or particular implementations.
From a CI/CD perspective, the IAR Build Tools for Arm comes with everything you need to build embedded firmware projects from the command line. This tutorial provides a simple example with general guidelines on how to set up a CI/CD pipeline using GitHub Actions while taking advantage of the so-called GitHub self-hosted runners.
In case you need an introduction on how to get started with GitHub, use Quickstart.
Before you begin, you will need to download and install the following:
- IAR Build Tools for Arm 9.50.1 for Ubuntu 22.04 x64 (
bxarm-9.50.1.deb
)- IAR customers can download it directly from IAR MyPages. If you do not have a license, contact sales.
You also will need:
- A GitHub organization account
- or a GitHub enterprise account.
Under your organization's GitHub account:
- Go to Import repository.
- Fill Your old repository's clone URL with this repository's URL.
- Set the Repository name as of your liking.
- Make it 🔘 Private. Why?
- Finally click Begin import.
Once the importing process is complete, a message will show up Your new repository <organization>/<repo> is ready
. The message will provide a link to jump to the new repository.
On your private repository, navigate to the .github/workflows/bxarm.yml
workflow file. This file uses the GitHub-flavored YAML syntax to describe a pipeline containing multiple jobs found in a typical embedded firmware project.
Refer to the .github/workflows/bxarm.yml
workflow file for detailed comments.
With GitHub Actions is straightforward enabling a self-hosted runner on a Linux build node where the IAR Build Tools for Arm was installed:
- Navigate to your Organization's (
<org>
) settings page to setup a new runnerhttps://github.com/<org>/settings/actions/runners/new
. - Select
Linux
as the Operating System. - Select the
x64
Architecture. - Follow the GitHub-provided instructions on the page to download and configure the runner1.
You can have as many parallel build nodes with runners as your license allows you to. Contact sales for expanding your build capacity.
How do I make the runner to survive a reboot?
In order to learn how to install the runner as a service, use this link.Use the public issue tracker:
- If you found an issue or have a suggestion specifically related to this tutorial, do not forget to take a look at earlier issues.
- If creating a new issue, please describe it in detail.
Do not use the public issue tracker:
- If you need technical support. The public issue tracker is not a support forum.
- If you have license issues. Contact IAR Customer Care.
- If you have tools issues. Contact IAR Tech Support.
This tutorial provided an overview on how to get started with the IAR Build Tools for Arm on GitHub Actions using Linux runners, from where development teams can immediately benefit from holistic feedbacks these modern workflows provide to quickly build, analyze, test and deploy with quality.
Follow us
on GitHub to get updates about tutorials like this and more.
Footnotes
-
From the default installation, the runners become available organization-wide, for all its repositories. These can be grouped and managed as desired. ↩