Skip to content

Commit 493be97

Browse files
committed
Drop legacy Classic builds
The Classic builds served for a while as an introduction to classic embedded systems, with a user managed read-writable /etc. Today we decided to firmly take the plunge into the future with NETCONF and focus on our core platforms aarch64 and x86_64 (for Qemu). The reasons are several: reduce overhead, simplify build and release work, as well as manual testing, since Classic builds do not have any automated regression testing. The Classic builds may be resurrected later in a dedicated project. Signed-off-by: Joachim Wiberg <[email protected]>
1 parent d34e852 commit 493be97

33 files changed

+24
-1981
lines changed

.github/workflows/build.yml

+6-16
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,11 @@ on:
88

99
jobs:
1010
build:
11-
name: Build ${{ matrix.platform }} ${{ matrix.variant }}
11+
name: Build Infix ${{ matrix.platform }}
1212
runs-on: ubuntu-latest
1313
strategy:
1414
matrix:
1515
platform: [aarch64, x86_64]
16-
variant: [netconf, classic]
1716
fail-fast: false
1817
steps:
1918
- name: Maintenance
@@ -25,11 +24,7 @@ jobs:
2524
- name: Set Build Variables
2625
id: vars
2726
run: |
28-
if [ "${{ matrix.variant }}" = "netconf" ]; then
29-
target=${{ matrix.platform }}
30-
else
31-
target=${{ matrix.platform }}-${{ matrix.variant }}
32-
fi
27+
target=${{ matrix.platform }}
3328
echo "dir=infix-$target" >> $GITHUB_OUTPUT
3429
echo "tgz=infix-$target.tar.gz" >> $GITHUB_OUTPUT
3530
if [ "$target" = x86_64 ]; then
@@ -41,9 +36,8 @@ jobs:
4136
uses: actions/cache@v4
4237
with:
4338
path: dl/
44-
key: dl-${{ matrix.variant }}-${{ hashFiles('.git/modules/buildroot/HEAD', 'configs/*', 'package/*/*.hash') }}
39+
key: dl-${{ hashFiles('.git/modules/buildroot/HEAD', 'configs/*', 'package/*/*.hash') }}
4540
restore-keys: |
46-
dl-${{ matrix.variant }}-
4741
dl-
4842
- name: Restore Cache of .ccache/
4943
uses: actions/cache@v4
@@ -55,11 +49,7 @@ jobs:
5549
ccache-
5650
- name: Configure & Build
5751
run: |
58-
if [ "${{ matrix.variant }}" = "netconf" ]; then
59-
target=${{ matrix.platform }}_defconfig
60-
else
61-
target=${{ matrix.platform }}_${{ matrix.variant }}_defconfig
62-
fi
52+
target=${{ matrix.platform }}_defconfig
6353
echo "Building $target ..."
6454
sudo mkdir ${{ steps.vars.outputs.out }}
6555
sudo chown $(id -un):$(id -gn) ${{ steps.vars.outputs.out }}
@@ -73,14 +63,14 @@ jobs:
7363
ln -s ${{ steps.vars.outputs.dir }} images
7464
tar chfz ${{ steps.vars.outputs.tgz }} ${{ steps.vars.outputs.dir }}
7565
- name: Test
76-
if: matrix.platform == 'x86_64' && matrix.variant == 'netconf'
66+
if: matrix.platform == 'x86_64'
7767
run: |
7868
export O=${{ steps.vars.outputs.out }}
7969
make test-qeneth
8070
- uses: actions/upload-artifact@v4
8171
with:
8272
path: ${{ steps.vars.outputs.out }}/${{ steps.vars.outputs.tgz }}
83-
name: artifact-${{ matrix.variant }}-${{ matrix.platform }}
73+
name: artifact-${{ matrix.platform }}
8474
release:
8575
if: ${{github.repository_owner == 'kernelkit' && github.ref_name == 'main'}}
8676
name: Upload Latest Build

.github/workflows/release.yml

+5-15
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,11 @@ on:
2020
jobs:
2121
build:
2222
if: github.repository == 'kernelkit/infix' && startsWith(github.ref, 'refs/tags/')
23-
name: Build Infix ${{ github.ref_name }} [${{ matrix.platform }}-${{ matrix.variant }}]
23+
name: Build Infix ${{ github.ref_name }} [${{ matrix.platform }}]
2424
runs-on: ubuntu-latest
2525
strategy:
2626
matrix:
2727
platform: [aarch64, x86_64]
28-
variant: [netconf, classic]
2928
fail-fast: false
3029
steps:
3130
- name: Maintenance
@@ -44,21 +43,16 @@ jobs:
4443
fi
4544
echo "ver=${ver}" >> $GITHUB_OUTPUT
4645
fver=${ver#v}
47-
if [ "${{ matrix.variant }}" = "netconf" ]; then
48-
target=${{ matrix.platform }}-${fver}
49-
else
50-
target=${{ matrix.platform }}-${{ matrix.variant }}-${fver}
51-
fi
46+
target=${{ matrix.platform }}-${fver}
5247
echo "dir=infix-$target" >> $GITHUB_OUTPUT
5348
echo "tgz=infix-$target.tar.gz" >> $GITHUB_OUTPUT
5449
echo "out=/mnt/x-$target" >> $GITHUB_OUTPUT
5550
- name: Restore Cache of dl/
5651
uses: actions/cache@v4
5752
with:
5853
path: dl/
59-
key: dl-${{ matrix.variant }}-${{ hashFiles('.git/modules/buildroot/HEAD', 'configs/*', 'package/*/*.hash') }}
54+
key: dl-${{ hashFiles('.git/modules/buildroot/HEAD', 'configs/*', 'package/*/*.hash') }}
6055
restore-keys: |
61-
dl-${{ matrix.variant }}-
6256
dl-
6357
- name: Restore Cache of .ccache/
6458
uses: actions/cache@v4
@@ -72,11 +66,7 @@ jobs:
7266
env:
7367
INFIX_RELEASE: ${{ steps.vars.outputs.ver }}
7468
run: |
75-
if [ "${{ matrix.variant }}" = "netconf" ]; then
76-
target=${{ matrix.platform }}_defconfig
77-
else
78-
target=${{ matrix.platform }}_${{ matrix.variant }}_defconfig
79-
fi
69+
target=${{ matrix.platform }}_defconfig
8070
echo "Building $target ..."
8171
sudo mkdir ${{ steps.vars.outputs.out }}
8272
sudo chown $(id -un):$(id -gn) ${{ steps.vars.outputs.out }}
@@ -92,7 +82,7 @@ jobs:
9282
- uses: actions/upload-artifact@v4
9383
with:
9484
path: ${{ steps.vars.outputs.out }}/${{ steps.vars.outputs.tgz }}
95-
name: artifact-${{ matrix.variant }}-${{ matrix.platform }}
85+
name: artifact-${{ matrix.platform }}
9686
release:
9787
name: Release Infix ${{ github.ref_name }}
9888
needs: build

Config.in

-19
Original file line numberDiff line numberDiff line change
@@ -112,25 +112,6 @@ config INFIX_ARCH
112112
default "riscv64" if BR2_riscv
113113
default "x86_64" if BR2_x86_64
114114

115-
# For /etc/os-release, VARIANT & VARIANT_ID used, e.g., in mnt script
116-
choice
117-
prompt "Select variant/flavor"
118-
default INFIX_VARIANT_NETCONF
119-
120-
config INFIX_VARIANT_NETCONF
121-
bool "NETCONF"
122-
help
123-
Managed NETCONF mode, /etc is a ramdisk, all configuration is
124-
generated by sysrepo plugins using NETCONF (xml) or RESTCONF.
125-
126-
config INFIX_VARIANT_CLASSIC
127-
bool "Classic /etc mode"
128-
help
129-
User managed mode, read-write configuration files in /etc that
130-
is saved across reboots.
131-
132-
endchoice
133-
134115
menu "Packages"
135116

136117
source "$BR2_EXTERNAL_INFIX_PATH/package/Config.in"

README.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,7 @@ more information, see: [Infix in Virtual Environments](doc/virtual.md).
105105
>
106106
> For *customer specific builds* of Infix, see your product repository.
107107
108-
[^1]: NETCONF or RESTCONF, <https://datatracker.ietf.org/doc/html/rfc8040>,
109-
for more information, see [Infix Variants](doc/variant.md).
108+
[^1]: NETCONF or RESTCONF, <https://datatracker.ietf.org/doc/html/rfc8040>
110109

111110
[^2]: An immutable operating system is one with read-only file systems,
112111
atomic updates, rollbacks, declarative configuration, and workload

board/classic/post-build.sh

-13
This file was deleted.

0 commit comments

Comments
 (0)