aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/multi-arch-test-build.yml
Commit message (Collapse)AuthorAge
* ci: set correct arch for rootfs testsPaul Spooren2024-03-15
| | | | | | | | | | | | | With the commit 01e5cfc "CI: Add target/arch tags (no suffix) for snapshot images"[1] the os/platform is set for all images, which is usually different from what the GitHub action runner uses (x86). The Docker deamon still tries to fetch the x86 version and fails. This commit explicitly sets the fitting arch. [1]: https://github.com/openwrt/docker/commit/01e5cfccd73a72ecab730496607c7c22b904f366 Signed-off-by: Paul Spooren <mail@aparcar.org>
* ci: bump checkout/upload-artifact to v4Tianling Shen2024-01-29
| | | | | | | Fix Node.js 16 deprecation warning. Ref: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/ Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* CI: Update sdk action, always upload artifactsJeffery To2023-11-08
| | | | | | | | | | The updated version of gh-action-sdk will return compiled packages and build logs for both build success and build errors. This ensures these artifacts are always uploaded. This also sets the V environment variable to enable verbose build output. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* CI: update build architecturesTianling Shen2023-06-16
| | | | | | | | | | - armvirt target has been renamed to armsr (Arm SystemReady) [1]. - armsr-armv8 has been switched to aarch64_generic architecture [2]. 1. https://github.com/openwrt/openwrt/commit/40b02a230167626def69389452f19b7109aaeac1 2. https://github.com/openwrt/openwrt/commit/e0f06ddc23b2503a1791ae7e97b02e2647e8a70d Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* CI: Add build test for riscv64_riscv64Jeffery To2023-06-02
| | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* CI: Sort build architectures in alphabetical orderJeffery To2023-06-02
| | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* CI: add concurrency rules to skip redundant buildChristian Marangi2023-05-26
| | | | | | | Add concurrency rules to skip redundant build to skip extra build test on force push on pull request. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* CI: Do package run-tests only if target packages were builtJeffery To2023-05-10
| | | | | | | | | | Currently, the package run-test phase will fail for PRs that only add/update host-only packages, as no target packages (*.ipk) are built. This checks if any target packages are built before attempting the run-tests. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* CI: Run "apt-get update" before installing signify-openbsdJeffery To2023-05-10
| | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* CI: Enable runtime_test for mips_24kcVan Waholtz2023-05-01
| | | | Signed-off-by: Van Waholtz <brvphoenix@gmail.com>
* CI: Add local feed for CI-built packagesJeffery To2023-04-19
| | | | | | | | | | | | | | | | | | | | | | | To test each package, the CI-built target package (ipk) file is installed, but currently the target package's dependencies are installed from the standard opkg feeds. There are cases when the CI-built target packages should be installed/tested together: * If a pull request contains several new packages that depend on each other, the test step will fail as the new dependencies cannot be found in the current packages feed. * If a pull request upgrades a source package that builds several target packages that depend on each other, the test step may fail due to the version/ABI mismatch between a newer target package and the older dependencies installed from the packages feed. This sets up a local feed for the CI-built packages so that dependencies are also installed from the same set of packages. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* CI: update build architecturesTianling Shen2023-03-13
| | | | | | | | | | Removed arc_archs - archs38 was marked as source-only [1]. Renamed powerpc_8540 to powerpc_8548 [2]. 1. https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=c01641bcc7236d2e2de3ea65444b0cf2898df351 2. https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=2cad88b99fdae9766de84e6c1cb56f111eb53748 Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* ci: update github actions to v3Christian Marangi2022-10-25
| | | | | | | Update checkout and upload-artifact action to v3 to mute nodejs deprecation warning. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ci: Use openwrt/gh-action-sdk@v5Jeffery To2022-05-31
| | | | | | | The previous build errors with v5 have been fixed. This version builds packages as a normal user instead of as root. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* Revert "ci: Use openwrt/gh-action-sdk@v5"Rosen Penev2022-05-18
| | | | This reverts commit 7b7265293f953c71a65099ecbdbfbaf5f14bf4f8.
* ci: Use openwrt/gh-action-sdk@v5Jeffery To2022-05-18
| | | | | | This version builds packages as a normal user instead of as root. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* ci: Look for changed packages in the PR branch onlyJeffery To2022-05-14
| | | | | | Fixes https://github.com/openwrt/packages/issues/15267. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* ci: use openwrt/gh-action-sdk@v4Petr Štetiar2022-03-24
| | | | | | | In order to use feeds from GH mirror for GH actions, thus saving a lot of resources being wasted. While at it fix whitespace issue. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* CI: fix runtime testing for non master branchPaul Spooren2022-01-14
| | | | | | | The runtime testing always ran on master branch aka snapshots since the branch wasn't passed over to the container execution! Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: do not crash during PKG-INFO generation if there are no packagesPeter van Dijk2021-11-09
| | | | Signed-off-by: Peter van Dijk <peter.van.dijk@powerdns.com>
* CI: add PKG-INFO metadata filePeter van Dijk2021-11-08
| | | | Signed-off-by: Peter van Dijk <peter.van.dijk@powerdns.com>
* artifacts: use git commit sha in namePeter van Dijk2021-11-05
| | | | Signed-off-by: Peter van Dijk <peter.van.dijk@powerdns.com>
* github-ci: also build mipsel_24kc / mt7621Kevin David2021-10-09
| | | | | | Signed-off-by: Kevin David <kevin.p.david@gmail.com> This seems like a fairly popular configuration and is at least handy for me for temporary testing.
* CI: update SDK action to v3Paul Spooren2021-10-09
| | | | | | No also check mirror hashes and badly formated init files Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: revert adding of *depending* packagesPaul Spooren2021-03-25
| | | | | | | | | | | | | | | | | | While the idea may make sense the current implementation is faulty. Problem is that OpenWrt uses the folder name of packages within the build system while `opkg` spits out the actual packages names. An example, compiling the packages of folder `vim` (`make package/vim/compile`) creates a package called `xxd`, where `make package/xxd/compile` would fail. The current implementation uses `opkg` to figure out dependent packages, but the resulting names do not match the above mentioned folders. Revert this for now until we come up with a better implementation to avoid false positive CI failures. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: test build dependent packagesPaul Spooren2021-03-23
| | | | | | | | | | | | | | By using OPKGs `whatdepends` all packages dependent on a library are printed. Use that feature to obtain packages which a version change may break and build them as well. Change "default" packages to contain a lib on which other packages depend, instead of compiling `tmux` compile `attendedsysupgrade-common` on which other packages depend. Ignore any LuCI packages which only contains translations. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: reformat extra long linePaul Spooren2021-03-23
| | | | | | Better readability on split screens. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: define matrix individually and add targetsPaul Spooren2021-03-23
| | | | | | | This allows more specific definition per test, like on which target packages should be compiled. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: fix handling of release branchesPaul Spooren2021-03-01
| | | | | | | | | | The "changed package" logic triggers all packages changed since `origin/master` while for releases branches all changes since e.g. `origin/openwrt-21.02` should be considered. First figure out the active branch, then find changed packages. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: enhance package detection logicIlya Lipnitskiy2021-02-23
| | | | Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
* CI: switch back to ARCHSRosen Penev2020-12-30
| | | | | | | Upstream wants to remove ARC700. That and currently, ARC700 is not compiling with glibc. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* CI: use SDK depending on destination branchPaul Spooren2020-12-28
| | | | | | | Not only use snapshot SDKs for master test but whatever destination branch is used. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: test aarch64_cortex-a53 instead of _genericPaul Spooren2020-12-15
| | | | | | | The aarch64_cortex-a53 architecture is used by more targets and should therefore be tested rather than the relatively rare _generic one. Signed-off-by: Paul Spooren <mail@aparcar.org>
* github: test i386_pentium-mmx instead of pentium4Rosen Penev2020-12-10
| | | | | | | It seems the former causes more compilation failures due to not having SSE. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* CI: fix CVE-2020-15228Josef Schlehofer2020-10-16
| | | | | | | More details: https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/ Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* actions: remove arm_cortex-a9_neonRosen Penev2020-10-09
| | | | | | | This is the second ARM NEON target that is tested. It's unlikely that one will fail and the other succeed. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* CI: get rid of the arc_archs buildbotRosen Penev2020-09-29
| | | | | | Both ARC platforms are not useful. One is enough for uClibc-ng. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* CI: run also on test.sh changesPaul Spooren2020-09-17
| | | | | | | | | | | | | The CI only tests packages if a Makefile changed, e.g. containing a version or release bump. This covers package related files as at least the package release must change whenever a file was touched. The `test.sh` file is a runtime test used to verify working packages within OpenWrt containers. This file can independently change and will never be included in the package ipk files, therefore trigger the CI on its changes as well. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: add runtime tests for packagesPaul Spooren2020-09-16
| | | | | | | | | | | | | | | | | | | | | Additional to manual runtime tests this CI addition runs a custom test script per package. Ideally this lowers the errors of package bumps, something which is time consuming when done manually for multiple architectures. This CI uses the official OpenWrt containers and tries to install and run compiled packages. The run depends on the content of `test.sh`, which is an `ash` script. It's called with the *packge name* and *package version* as arguments. This allows different behaviour if a single package generates multiple IPK files. The version is usable for the most trivial runtime check, e.g. `tmux -V | grep "$2"`. The current approach uses the qus project[1] which contains multiple QEMU binaries to run various architectures. [1]: https://github.com/dbhi/qus Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: add compile test for arc_archsPaul Spooren2020-09-12
| | | | | | | A package recently failed building exclusively for this architecture, therefore test it as well. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: fix compilation of all packagesPaul Spooren2020-09-08
| | | | | | | | By using `feeds install -d y` the CI tries to install e.g. `libcxx` which fails, unrelated to the tested packages. Now follow the approach of the current CircleCI implementation. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: fix artifact folder and add more test SDKsPaul Spooren2020-09-05
| | | | | | | | | | | | | | | | | The CI adds the `packages.git` repository to the `feeds.conf`, which makes the repository redundant. Once called `packages` including the upstream status, once `packages_ci` (previously `action`) including the PRs changes. This commit changes the binary artifact folder from `packages` to `packages_ci`, as the SDK choses packages from the modified PR branch over the `packages` branch. Also add additional targets to test, as each target only takes a few minutes to test: aarch64_cortex-a53, arm_cortex-a15_neon-vfpv4 and i386_pentium4. Signed-off-by: Paul Spooren <mail@aparcar.org>
* CI: use GitHub action for Pull RequestsPaul Spooren2020-09-04
Test all GitHub pull requests for multiple architectures and store build logs and created packages. This is the first commit of a series of patches to simplify the life of maintainers. Signed-off-by: Paul Spooren <mail@aparcar.org>