Commit Graph

104 Commits

Author SHA1 Message Date
Ricardo Pardini
efeb4d19e2
[PR] multiple fixes for the eval + PIPESTATUS construct (#3280)
- try this on your bash shell:
  - `ONEVAR="testing" eval 'bash -c "echo value once $ONEVAR && false && echo value twice $ONEVAR"' '| grep value'  '| grep value' ; echo ${PIPESTATUS[*]}`
  - Notice how PIPESTATUS has only one element. and it is always true, although we failed explicitly with false in the middle of the bash.
  - That is because eval itself is considered a single command, no matter how many pipes you put in there, you'll get a single value, the return code of the LAST pipe.
  - Lets export the value of the pipe inside eval so we know outside what happened:
  - `ONEVAR="testing" eval 'bash -e -c "echo value once $ONEVAR && false && echo value twice $ONEVAR"' '| grep value'  '| grep value' ';EVALPIPE=(${PIPESTATUS[@]})' ; echo ${EVALPIPE[*]}`
- also: pass LC_ALL=C LANG=C to avoid locale warnings

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>
2021-11-22 11:04:38 +01:00
Igor Pečovnik
2a47ad5c78
Add support for next Ubuntu LTS (#3234)
* Add support for next Ubuntu LTS

* Update build-cache.yml

* Update build-cache.yml

* Update build-cache.yml

* Update build-cache.yml

* Jammy repository creation

* Enable docker build support on Jammy
2021-11-09 18:15:04 +01:00
Igor Pecovnik
e02753ecf9
Backend - optimise images compression method 2021-10-29 16:53:54 +02:00
Igor Pecovnik
83217ea30c
CI runners support - take more memory from host 2021-10-15 00:12:25 +02:00
Igor Pečovnik
84ef3d5289
Extending free memory detection to swap (#3195)
Host machines with 4Gb physical memory are unable to build all images. During workiin on CI improvements it was noticed that runners with just 4Gb of memory are unable to create rootfs cache or make an images even that should be sufficient. Memory reservations are set very conservatively and we can keep that since adding a swap into the equation proves to be enough. If host machine is running Armbian (which will be in most cases) our ZRAM / ZSWAP memory management takes care of securing that extra needed memory.
2021-10-14 00:01:23 +02:00
Igor Pečovnik
e8c5d07a89
Switch to matrix jobs scheduler and upload build logs (#3157) 2021-09-26 08:42:24 +02:00
Vyacheslav
3ab1bff470
Fix gpg signing when sudo unavailable. (#3100)
Signed-off-by: Vyacheslav Bocharov <devel@lexina.in>
2021-09-02 21:57:41 +02:00
Igor Pečovnik
d256411e2d
Do compress and sign operation in the temp folder (#3079) 2021-08-04 16:55:35 -04:00
lanefu
894cb29ca7
Feature/get_log_path/ (#3064)
* custom log path of debug/ via LOG_SUBPATH=
2021-07-27 07:24:06 -04:00
Igor Pecovnik
bc19b9beab Change the way how RC images are build
RC images are neither beta neither stable. If we use this parameter, they are put into subdir RC. If they are made from beta or not, we choose with other BETA=yes parameter
2021-07-22 12:34:54 +02:00
Igor Pečovnik
cbcad64f1c
Typo - missing space in IF statement 2021-07-22 08:24:17 +02:00
lanefu
b1d82308db
RC upload flag (#3027)
* RC upload flag

* Update build-all-ng.sh

* Try RC Images

Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
2021-07-19 20:36:46 -04:00
Igor Pečovnik
a7e16da2ce
Add Ubuntu Impish (#3006) 2021-07-14 08:45:30 +02:00
Lane Jennison
6ee2ce463a additional post image hook to assist in img conversion to qcow2 for virtual-qemu image 2021-07-11 14:03:22 -04:00
Igor Pečovnik
1f2e97febf
Remove Ubuntu Groovy from codebase (#2952) 2021-07-03 21:58:08 +02:00
Igor Pečovnik
ef2800c374
Adding autoremove function (#2950)
Calling apt-get autoremove right before closing image. This is handy when we need to cleanup after uninstalling some packages.
2021-07-01 18:51:16 +02:00
The-going
92b8320edd
Packaging (#2935)
* kbuild: deb-pkg: do not build linux-headers package if CONFIG_MODULES=n

Since commit 269a535ca931 ("modpost: generate vmlinux.symvers and
reuse it for the second modpost"), with CONFIG_MODULES disabled,
"make deb-pkg" (or "make bindeb-pkg") fails with:

find: ‘Module.symvers’: No such file or directory

If CONFIG_MODULES is disabled, it doesn't really make sense to build
the linux-headers package.

Author: Masahiro Yamada <masahiroy@kernel.org>
Date:   Wed Oct 14 03:38:19 2020 +0900
Upstream commit bac977cbc0d6731fb8e67c2be0e4acbd959e10b3

Fixes: 269a535ca931 ("modpost: generate vmlinux.symvers and reuse it for the second modpost")
Reported-by: Josh Triplett <josh@joshtriplett.org>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* mkdebian: fix: build a package for version 5.13

upstream commit 82526ef43399a7556b860538041802042b3872c1
Author: Masahiro Yamada <masahiroy@kernel.org>
Date:   Tue Apr 20 02:05:05 2021 +0900

    kbuild: deb-pkg: change the source package name to linux-upstream

    Change the source package name from 'linux-$(KERNELRELEASE)' to
    'linux-upstream'.

    Initially, I tried to use 'linux' to be aligned with the Debian
    kernel package, but Ben suggested 'linux-upstream' so that it is
    clearly distinguished from distribution packages. [1]

    The filenames will be changed as follows:

    [Before]
      linux-5.12.0-rc3+_5.12.0-rc3+-1.dsc
      linux-5.12.0-rc3+_5.12.0-rc3+.orig.tar.gz
      linux-5.12.0-rc3+_5.12.0-rc3+-1.diff.gz

    [After]
      linux-upstream_5.12.0-rc3+-1.dsc
      linux-upstream_5.12.0-rc3+.orig.tar.gz
      linux-upstream_5.12.0-rc3+-1.diff.gz

    Commit 3716001bcb7f ("deb-pkg: add source package") introduced
    KDEB_SOURCENAME. If you are unhappy with the default name, you can
    override it via KDEB_SOURCENAME.

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* Search by template when updating initramfs

Search by pattern first, then use in the command.
If unsuccessful then exit by mistake.

Fix:
depmod: WARNING:
could not open modules.order at /var/tmp/mkinitramfs_bp3vP5/lib/modules/5.13.0-sunxi64:
 No such file or directory
could not open modules.builtin at /var/tmp/mkinitramfs_bp3vP5/lib/modules/5.13.0-sunxi64:
 No such file or directory
When a valid directory lib/modules/5.13.0-rc6-sunxi64
Or when the user added a localversion to the configuration file
and valid directory lib/modules/5.13.0-rt7-sunxi64

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* Code Cleanup: kernel build: Removing EXTRAVERSION Cleanup

This was intended for the EDGE kernel and is no longer required.
Moreover, this code is not working.

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
2021-06-29 20:18:52 +02:00
Igor Pečovnik
fcb8b6f195
Code cleaning attempts (#2925)
* Move function run_on_sdcard to more appropriate location

* Focus on bash headers, unify, adjust (c)

* Adjust (c) to range

* Cleanup compile.sh

* Cleaning main

* Build all, main configs

* fine tunning

* Improve readme
2021-06-26 23:36:47 +02:00
Igor Pecovnik
cdea7ae389 Making more conservative parallel build numbers 2021-06-13 15:53:33 +02:00
Igor Pecovnik
4d51b19596 Enable building desktop images 2021-06-13 11:56:37 +02:00
Igor Pecovnik
e94cbfae47 Optimisations for image compression when building in parallel 2021-06-13 11:06:40 +02:00
Igor Pecovnik
af5c4b4b3a Fixing permissions on runner 2021-06-12 20:56:01 +02:00
Igor Pecovnik
43f65852bf Typo 2021-06-12 20:44:57 +02:00
Igor Pecovnik
d4deca4de3 Bugfix for actions 2021-06-12 19:19:15 +02:00
Igor Pecovnik
b012a8a754 Another method for signing images 2021-06-12 16:20:46 +02:00
Igor Pecovnik
72406c4c17 backend: we need to sign images with sudo 2021-06-07 14:26:42 +02:00
Oleg
88b525117e
fix unmount (#2874) 2021-06-04 19:41:42 +02:00
Igor Pecovnik
541dc71692 Fixes for rootfs cache creation 2021-06-03 21:38:57 +00:00
Igor Pecovnik
abbc67f0d2 Moved i3wm from Hirsute to Focal and make a link from Hirsute
- removed broken packages within
- enable 32bit - it builds it
- fixed small cosmetic issue in 1st stage of deboostrap
2021-05-16 15:10:56 +02:00
Igor Pecovnik
84d7079c5d Bump with roofs cache and small cache recreation optimisation 2021-05-13 21:30:06 +02:00
Przemysław Sztoch
486a821a55
VENDOR, rock-pi-n10, RM_LIST for armbian-config/zsh, Static MAC for networkd (#2789)
* VENDOR, rock-pi-n10, RM_LIST for armbian-config/zsh

VENDOR parameter in configuration
zsh is the best of course...
Static MAC for networkd

ROCK Pi N10 (Radxa) - Initial support, knwon bugs:
- Problem with poweroff (kernel panic).
- DeviceTree is not fully verified, I suspect missing and unnecessary
entries.
- No support for NPU
- u-boot without NVME support
- I have doubts if I chose the right preboot loader for RK3399Pro, NPU
  and installed DDR memory.

* New RK3399Pro boot preloaders.

* rootfs checksum, DEBOOTSTRAP_LIST fix, output.log fix

Repaired checksum for rootfs
Added use PACKAGE_LIST_RM to purge DEBOOTSTRAP_LIST
Better logging to output.log
Fix for new host distribution detection (ie Debian Bullseye).
ubootdebs as new cleaning option
2021-05-11 21:50:14 +02:00
Igor Pečovnik
76ef27621f
Backend improvements (#2812)
* Backend improvements

When making images, show with green color if image already exists.

* Few fixes
2021-05-09 17:00:31 +02:00
Igor Pečovnik
d3997fe64c
Cache creation improvements (#2806) 2021-05-05 20:49:25 +02:00
Igor Pečovnik
9b0dd2b839
Fix broken Docker support (#2804)
* lsb-release package is getting deprecated

It is not present on Hirsute anymore so we better remove its dependency

* - remove lsb-release dependency from docker
- exit if Docker version is too low (check works only on Ubuntu builds, else doesn't do anything)

Reference: https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1916485

* Cleanup

* Remove quotes for proper pkg install

* Automatically upgrade Docker engine

* Missing python dependencies

* Bugfix - debian name is not just one word

* Put this back

* provoke error

* Revert

* Adjust Github runner to make bionic and focal and compile u-boot for test

* Adjust cron

* Remove Bionic, cron back to 14 days

* Change to ubuntu-latest
2021-05-02 18:06:38 +02:00
Przemyslaw Sztoch
738996ea33 Better user path config and support for etworkd
add user path for configuration scan
check for NetworkManager/networkd
support for bullseye

(i.e. path: config/cli and files: packages, packages.remove)
2021-04-09 10:27:52 +02:00
Oleg
71dc41f0ba
add extlinux.conf (#2722)
* add extlinux.conf

* - make sure armbianEnv is not added - we don't need variables for NAME_KERNEL and NAME_INITRD. This is not going to change - also MAIN_CMDLINE could at least be renamed so its clear to belong to EXT configuration. Elsewhere this doesn't apply since we have boot scripts

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2021-03-18 16:57:45 +01:00
Igor Pecovnik
cc19adfebd Build all optimisations 2021-03-15 01:58:33 +01:00
Jannis
c145303c7c
Increase number of inodes during FS creation (#2678) 2021-03-06 21:10:29 +01:00
Igor Pečovnik
2e594375a9
Improve cache and toolchain download (#2665)
* Improve cache and toolchain download

* Cleanup
2021-02-26 18:27:21 +01:00
Igor Pečovnik
3a74abe43d
Merge desktop branch (#2662)
Co-authored-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Richard Neese <r.neese@gmail.com>
Co-authored-by: iav <iav@iav.lv>
Co-authored-by: lanefu <lanefu@users.noreply.github.com>
Co-authored-by: Werner <EvilOlaf@users.noreply.github.com>
Co-authored-by: Oleg <balbes-150@yandex.ru>
Co-authored-by: Lane Jennison <lane@lane-fu.com>
Co-authored-by: JMCC <jmcc1@gmx.com>
2021-02-24 18:19:09 +01:00
Igor Pecovnik
32f018471f Revert "Internal: improve rootfs cache creation"
This reverts commit 04f8d5049d.
2021-02-22 22:35:49 +01:00
Lukas Pirl
4e25b7257b
remove mount option "nodiratime" where "noatime" is given (#2645)
mount option "noatime" implies "nodiratime", see, e.g.:
https://github.com/torvalds/linux/blob/v5.11/fs/inode.c#L1807-L1808
2021-02-22 21:49:04 +01:00
Igor Pecovnik
04f8d5049d Internal: improve rootfs cache creation 2021-02-20 00:48:44 +01:00
Pander
e7a7dd9338
proposal purging residual packages (#2644)
* proposal purging residual packages

* Bugfix

Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
2021-02-20 00:44:26 +01:00
Igor Pecovnik
705bbd431b Bump rootfs cache - it was recreated
- tweak buil all images
- add more info to the error
2021-01-25 13:23:39 +01:00
Igor Pecovnik
e2d5c3abfc Backend - don't compress more then one image at once
Compressing consumes a lot of memory we don't have. This tweaks should help to build much more images at once.
2021-01-24 21:30:25 +01:00
Igor Pecovnik
928a8f25b9 Backend - directory created too deep 2020-12-24 11:51:53 +01:00
Igor Pecovnik
fdd305e52f Several backend fixes and improvemetens
Affected:

- repository old packages purging
- multiple image making
2020-12-23 18:19:30 +01:00
Igor Pecovnik
b10b0454a5 Set image compression levels to maximum
This feature is used mainly by us or other distributors. An internal function. Compression time and CPU usage for this process is significantly increased but the size of the daily batch was decreased from 80Gb -> 50Gb. Mitigate upload speed bottleneck.
2020-12-22 12:54:04 +01:00
Igor Pecovnik
7aabbb6628 Console setup which is not run on a console is skipped
Adding "--force" to conduct the operation
2020-12-11 00:30:25 +01:00