Skip to content

Commit c4fa302

Browse files
committed
Add an FAQ document
This will serve as a container for more in-depth documentation to supplement the fundamental reference provided in the readme.
1 parent af98377 commit c4fa302

File tree

2 files changed

+44
-0
lines changed

2 files changed

+44
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,5 +231,6 @@ Set to `true` to cause the action to record the compiler warning count for each
231231
## Additional resources
232232

233233
- [Introductory article about **arduino/compile-sketches**](https://blog.arduino.cc/2021/04/09/test-your-arduino-projects-with-github-actions/)
234+
- [Frequently asked questions about **arduino/compile-sketches**](docs/FAQ.md#frequently-asked-questions)
234235
- [**GitHub Actions** documentation](https://docs.github.com/actions/learn-github-actions/understanding-github-actions)
235236
- [Discuss or request assistance on **Arduino Forum**](https://forum.arduino.cc/)

docs/FAQ.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Frequently Asked Questions
2+
3+
## How can I install dependencies of a boards platform?
4+
5+
### Managed Dependencies
6+
7+
The Arduino **Boards Manager** system installs tool dependencies along with a platform. When you specify a [**Boards Manager**-sourced platform dependency](../README.md#boards-manager) via the action's [`platforms` input](../README.md#platforms) the managed platform dependencies are installed automatically.
8+
9+
If an alternative [platform dependency source](../README.md#supported-platform-sources) is used this automatic tool dependency installation does not occur. The convenient way to install the tool dependencies in this case is to install a **Boards Manager**-sourced platform that has a dependency on the required tools in addition to the target platform from the alternative source.
10+
11+
---
12+
13+
**Example:**
14+
15+
```yaml
16+
- uses: arduino/compile-sketches@v1
17+
with:
18+
platforms: |
19+
# Use Boards Manager to install the latest release of the platform to get the toolchain.
20+
- name: arduino:avr
21+
# Overwrite the Boards Manager installation with the development version of the platform.
22+
- source-url: https://github.com/arduino/ArduinoCore-avr.git
23+
name: arduino:avr
24+
```
25+
26+
---
27+
28+
### External Dependencies
29+
30+
Arduino boards platforms typically bundle all dependencies. However, there are some platforms that require the user to manually install dependencies on their system in order to use the platform.
31+
32+
The **arduino/compile-sketches** action runs in the same environment as the rest of the steps of the [workflow job](https://docs.github.com/actions/using-jobs/using-jobs-in-a-workflow), which means you can simply perform the dependency installation in a prior [step](https://docs.github.com/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsteps) of the job.
33+
34+
---
35+
36+
**Example:**
37+
38+
```yaml
39+
- run: <some dependency installation command>
40+
- uses: arduino/compile-sketches@v1
41+
```
42+
43+
---

0 commit comments

Comments
 (0)