Using `make container` or, if you don't have automake/gmake on your host
system, `./scripts/container.sh` will build an image for the current
branch your are on and drop you into a shell running inside a container
using that image.
From there all tooling required to work on Gluon is available.
Supports both podman (preferred) and docker.
(cherry picked from commit 6728c4a103)
Currently we do not perform CI firmware builds on the next-2102 branch.
Build Gluon for all branches starting with "next" to increase the
coverage of our build tests.
Signed-off-by: David Bauer <mail@david-bauer.net>
* apt is meant for user interactive usage. apt does not guarantee a stable CLI.
* set DEBIAN_FRONTEND=noninteractive to tell apt-get that no user interaction is wanted
The performance benefit the cache brought was due to a broken sources
CDN mirror handling in OpenWrt.
The cache brings no measurable performance benefit. Disable it to slim
down the pipeline steps.
This adds the ability to cache OpenWrt dependencies on a per-target
base. Artifacts over 10MB are excluded, as GitHub imposes a limit of 5G
of available space per repository cache. This affects mostly
linux(-firmware) and gcc / gdb.
The goal is to reduce the total amount of requests necessary to fetch
dependencies.
Do not mix two different HTTP libraries in one script. This fixes a
warning:
/var/lib/jenkins/slave.py:82: DeprecationWarning: URLopener style of invoking requests is deprecated. Use newer urlopen functions/methods
This simple implementation has the disadvantage that it stores the whole
file in RAM, but this isn't an issue for the 1.5MB slave.jar.
Fixes a warning:
/usr/local/lib/python3.7/dist-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made to host 'build.ffh.zone'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
Rsync is a requirement for OpenWrt master and therefore our next
branch. Currently builds on x86-64 error out due to missing rsync:
/bin/sh: 1: rsync: not found