Commit Graph

73 Commits

Author SHA1 Message Date
Riku Isokoski
81bc16fd92 workflow: Buildsize comment when simulator fails
The workflow checks that the buildsize comparison succeeds. The download
artifact step also checks that all of the main workflow succeeds. This
isn't necessary, and causes the comment not to be created when the
simulator build fails. This change disabled the success conclusion
requirement.
2023-01-31 22:38:17 +02:00
Riku Isokoski
cb91943f12 workflow: Updated workflow comment for all
The previous version failed, because it looked for the check from the
branch in the fork, but looked for it in the main repo. Now uses the sha
to get the commit on which checks were run.

Previous description

This works by uploading the data from the main workflow with low
permissions as an artifact, then downloading the data in a workflow with
higher permissions to post the comment.

Third party actions are fixed at a commit, in case they get compromised.

Also set the build-firmware VM to ubuntu-22.04, which was missed when
updating workflow deps earlier.
2023-01-31 21:56:24 +02:00
Riku Isokoski
3e964e20ac Revert "workflow: Comment build size on all PRs"
This reverts commit 012c3d25f3.
2023-01-31 09:33:56 +02:00
Riku Isokoski
012c3d25f3 workflow: Comment build size on all PRs
This works by uploading the data from the main workflow with low
permissions as an artifact, then downloading the data in a workflow with
higher permissions to post the comment.

Third party actions are fixed at a commit, in case they get compromised.

Also set the build-firmware VM to ubuntu-22.04, which was missed when
updating workflow deps earlier.
2023-01-31 09:21:02 +02:00
Riku Isokoski
056b0f5b3f build-size-workflow: Fix when base gets updated
The github.event.pull_request.base.sha in the workflow doesn't get
updated when there are new commits in the base branch. Instead always
checkout the branch to check the sha manually and cache only the build.

The ownership fix seems to still be necessary
2023-01-28 17:58:43 +02:00
Jean-François Milants
6f6ea68aca Add a link to the "Ideas" (feature requests) Discussions board in the Github contact links. 2023-01-12 22:46:49 +02:00
Riku Isokoski
61698b6e19
Tweaked issue forms (#1267)
When people suggest a solution to a generic issue they encounter, they have to open a feature request, which is not optimal. Submitting an issue through this new form will require writing about the issue that led to the idea, which will make it easier to discuss different solutions.
2023-01-12 22:46:30 +02:00
Riku Isokoski
7508dd74ee
Update workflow dependencies (#1504)
* Update workflow dependencies

ubuntu-latest vm has been updated from 20.04 to 22.04.
To avoid sudden issues, use 22.04 explicitly.
CMake doesn't need to be updated on 22.04, but ninja must be installed separately in the simulator workflow.
actions/checkout@v2 uses deprecated Node.js 12.
Update to v3 which uses 16
2023-01-12 22:04:25 +02:00
Riku Isokoski
09db67e003 workflow: echo build diffs for viewing without the comment 2023-01-07 20:58:18 +02:00
Riku Isokoski
dca11812c2 workflows: Disable build size comment in fork PRs
Due to a security concern, comments can only be created in the context
of branches in the repo. PRs from forks can't get the comment.

https://github.com/peter-evans/create-pull-request/blob/main/docs/concepts-guidelines.md#restrictions-on-repository-forks
https://securitylab.github.com/research/github-actions-preventing-pwn-requests/
2023-01-07 20:58:18 +02:00
Riku Isokoski
028d40860d workflows: Add build size comparison workflow
Add .github/workflows/getSize.sh to extract sizes of sections from the
objfile

build-firmware uses getSize.sh to output the section sizes.

get-base-ref-size job added, which builds the base branch of the PR and
outputs the section sizes. Caches are used to avoid unnecessary builds
when the base branch hasn't been updated.

leave-build-size-comment job added, which creates or updates a comment
on the PR with the build size information from other jobs.
2023-01-07 18:56:15 +02:00
Riku Isokoski
499f0875d3 workflows: Update workflow dependency
The workaround is no longer necessary
2023-01-07 18:56:15 +02:00
Finlay Davidson
eda96ffadc Update clang-{format,tidy} to 14
Also add configuration options only available in 13 and 14.
Fixes warning about -fstack-usage in clang-tidy check.
2023-01-04 17:15:33 +01:00
NeroBurner
4ab99d0d4b
CI: disable BUILD_RESOURCES for InfiniSim as already done in firmware (#1366) 2022-10-11 22:30:51 +02:00
Jean-François Milants
6dd67eb5a2 CI worklow "build-firmware" : add the infinitime-resources packages to the build artifacts. 2022-10-11 17:25:40 +02:00
Riku Isokoski
318a97c218 Fix docker issue 2022-10-10 17:52:36 +02:00
Riku Isokoski
73918ce8af Add clang-tidy check to display warnings on GitHub 2022-10-10 17:52:36 +02:00
mashuptwice
4fdb06acd9 Merge remote-tracking branch 'upstream/develop' into workflow-ignore-md 2022-08-25 11:34:12 +02:00
mashuptwice
4940cbda7a removed lv_sim.yml 2022-08-25 11:30:11 +02:00
mashuptwice
5c253c10a8 Merge remote-tracking branch 'upstream/develop' into workflow-ignore-md 2022-08-25 10:56:09 +02:00
Riku Isokoski
f53e75063b
Merge CI to deduplicate events (#1279) 2022-08-25 08:32:46 +03:00
Riku Isokoski
e02b58bf1b
Move all images to doc. Remove old images. (#1282) 2022-08-21 14:42:53 +03:00
mashuptwice
d00a5d1e37 workflow: ignore changes in *.md files 2022-08-11 01:42:17 +02:00
Finlay Davidson
fdad3fc985 Fix Docker workflow not pushing on manual trigger
Also fix issue where workflow fails on pull requests when the
user who made the pull request doesn't have the secrets set.
Also allow other workflows to be triggered manually.
Also don't trigger any workflows on pull requests to master, as
there shouldn't be any pull requests against master.
2022-07-19 11:53:56 +02:00
Jean-François Milants
2497749715 Merge branch 'develop' of github.com:JF002/Pinetime into develop 2022-07-09 12:19:54 +02:00
Jean-François Milants
fa17ae2098 Add 'workflow_dispatch' in the workflow file for Docker image generation to allow manually starting the workflow. 2022-07-09 12:19:38 +02:00
Finlay Davidson
358690d08b Docker workflow use separate username for login 2022-07-09 12:05:46 +02:00
Finlay Davidson
27b73470f2 Only build Docker Images on develop, not master 2022-07-08 17:13:47 +02:00
Finlay Davidson
c3bd04f497 Make Docker workflow push to latest and commit sha 2022-07-08 17:13:47 +02:00
Finlay Davidson
1b971eebae Don't try to cache to Docker Hub on pull request 2022-07-08 17:13:47 +02:00
Finlay Davidson
6a0aec0850 Use either a secret or infinitime as username
Uses either the DOCKER_HUB_USERNAME secret or just infinitime as
the username for pushing to and pulling from Docker Hub.
2022-07-08 17:13:47 +02:00
Finlay Davidson
4ee3e51605 Require event_name to be push for Docker Hub
Instead of just checking if it's not pull_request
2022-07-08 17:13:47 +02:00
Finlay Davidson
b089fc2c61 Hardcode the Docker Hub username as infinitime
This is so that pull requests that modify the docker image but
don't have the DOCKER_HUB_USERNAME secret set won't fail.
2022-07-08 17:13:47 +02:00
FintasticMan
6c23aa5626 Create GH Actions workflow to build Docker image 2022-07-08 17:13:47 +02:00
Riku Isokoski
b9f5a0745d
Don't build the firmware when only docs were modified (#1198) 2022-07-05 09:22:29 +03:00
FintasticMan
a1385cb481
Minor changes to clang-format workflow (#1177) 2022-06-11 22:45:11 +03:00
Riku Isokoski
0fabba1c9a Remove extra linebreaks 2022-05-27 17:52:26 +02:00
Riku Isokoski
a2218dd4ad Unzip DFU, so the artifact doesn't need to be unzipped by the user. 2022-05-27 17:52:26 +02:00
Riku Isokoski
619477cbd1 Rename uploaded files with source branch in workflows 2022-05-27 17:52:26 +02:00
Riku Isokoski
cc2d5c39ce Cleanup workflows 2022-05-27 17:52:26 +02:00
Jean-François Milants
1ffca52715 Edit workflow to use the new docker image : infinitime/infinitime-build. 2022-05-26 11:35:25 +02:00
Jean-François Milants
123c801f17 Add comment about the workaround that was needed in the github workflow. 2022-05-26 11:35:25 +02:00
Jean-François Milants
831f93cd92 The main build workflow for GitHub Actions now uses the infinitime-build docker image to build the firmware. This allows to avoid the duplication of the build logic in Docker and Github workflow format.
The Dockerfile has been slightly adapted (remove the USER instructions). Docker images are now published in DockerHub (jf002/infinitime-build).
2022-05-26 11:35:25 +02:00
Riku Isokoski
6171c9d45d Only test format when it is wanted 2022-05-16 23:25:47 +02:00
Riku Isokoski
a6fcdec0f8 Don't allow test-format.sh to be run locally 2022-05-16 23:25:47 +02:00
FintasticMan
8485cdb54d Only run lv_sim GH Actions on push to develop and master 2022-05-14 12:21:35 +02:00
Yehoshua Pesach Wallach
78267eec40 fongen: don't pre-build fonts 2022-05-10 22:20:02 +02:00
Yehoshua Pesach Wallach
2ccf88c03c fontgen: lock version at current 2022-05-10 22:20:02 +02:00
Yehoshua Pesach Wallach
e39f183efe fontgen: make simulator build fonts too 2022-05-10 22:20:02 +02:00
Yehoshua Pesach Wallach
b9fbee1007 Added lv_font_conv to workflow main 2022-05-10 22:20:02 +02:00