Compare commits

...

1055 Commits

Author SHA1 Message Date
Vijayakumar A
3f36fe9466
Merge pull request #1047 from kumvijaya/current
T7878: Using mergify rule to handle conflict checks for private repo
2025-09-30 00:13:26 +05:30
Viacheslav Hletenko
297bbda677
Merge pull request #1046 from asklymenko/patch-5
T7873: Bump Suricata version to 7.0.10
2025-09-29 16:58:49 +03:00
Daniil Baturin
46df6532a4
Merge pull request #1038 from sever-sever/T7843
T7843: Remove accel-ppp form the packages
2025-09-29 13:07:15 +01:00
Daniil Baturin
f7d16aff94
Merge pull request #1045 from sever-sever/7870
T7870: Kernel add option CONFIG_NO_HZ_FULL
2025-09-29 13:03:23 +01:00
Christian Breunig
c4e230bc3a
Merge pull request #1048 from c-po/kernel-6.6.108
Kernel: T5887: update Linux Kernel to v6.6.108
2025-09-28 15:50:16 +02:00
Christian Breunig
1221922330 Kernel: T5887: update Linux Kernel to v6.6.108 2025-09-28 08:11:32 +02:00
kumvijaya
46d99f7df6 T7878: Using mergify rule to handle conflict checks for private repo 2025-09-27 23:44:56 +05:30
Andrii Klymenko
6b64e89d1d
T7873: Bump Suricata version to 7.0.10
Suricata 7.0.* is available in bookworm-backports repository only. It also requires libhtp2 package.
2025-09-26 20:59:39 +03:00
Viacheslav
5d135a649f T7870: Kernel add option CONFIG_NO_HZ_FULL
Add options CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU for:
 - system option kernel cpu nohz-full
 - system option kernel cpu rcu-no-cbs

Fixes:
```
kernel: Housekeeping: nohz unsupported. Build with CONFIG_NO_HZ_FULL
r14 kernel: Unknown kernel command line parameters
```
2025-09-26 12:29:58 +00:00
Daniil Baturin
137b20e425
Merge pull request #1040 from hedrok/T6516-isis-advertise-passive-only
T6516: frr: fix isisd advertise-passive-only
2025-09-25 15:33:14 +01:00
Daniil Baturin
ed29cddb7d
Merge pull request #1044 from asklymenko/patch-4
T7864: Bump HostAP version to 2.11
2025-09-25 15:27:58 +01:00
Andrii Klymenko
2196c84a54
T7864: Bump HostAP version to 2.11
Bump the HostAP package version to 2.11 to resolve security issues.
2025-09-25 16:13:56 +03:00
John Estabrook
12dbf5156a
Merge pull request #1042 from sarthurdev/kea3.0
kea: T7821: Use correct Kea unit files
2025-09-23 08:05:40 -05:00
sarthurdev
0ba324cb4f kea: T7821: Use correct Kea unit files 2025-09-22 22:31:15 +02:00
Daniil Baturin
42e39521c0
Merge pull request #1039 from jestabro/simplified-bind-mount
T7836: use /opt/vyatta/etc/config in tmptest
2025-09-22 13:43:50 +01:00
Daniil Baturin
cd42750846
Merge pull request #1041 from l0crian1/add-zerotier-binary
zerotier: T6455: Add zerotier-one to vyos-build pipeline
2025-09-22 13:38:45 +01:00
l0crian1
57267384f1 zerotier: T6455: Add symlink for build.py 2025-09-20 13:10:34 +00:00
l0crian1
0a54b1a5e2 zerotier: T6455: Add zerotier-one to vyos-build pipeline 2025-09-20 06:37:46 -04:00
Christian Breunig
83bc4273d5
Merge pull request #1037 from kumvijaya/current
T7748: Updated conflict reusable workflow reference in workflow
2025-09-20 09:22:55 +02:00
Kyrylo Yatsenko
b182d0fa48 T6516: frr: fix isisd advertise-passive-only
The patch 0008-isis-fix-advertise-passive-only-routes-install.patch
fixes installing routes even when advertise-passive-only is
enabled.

Previously active circuits were ignored completely, patch
makes isisd just not to advertise prefixes from active circuits,
but install routes from them and do all other processing.

FRR PR: https://github.com/FRRouting/frr/pull/19593
2025-09-19 23:15:40 +03:00
John Estabrook
b7f13c3739 T7836: use /opt/vyatta/etc/config in tmptest 2025-09-19 11:55:30 -05:00
Viacheslav
fafc9cfcf6 T7843: Remove accel-ppp form the packages
Remove the `accel-ppp` from the packages, as we migrated to the
`accel-ppp-ng` and do not need it anymore.
Remove build scripts and patches.
2025-09-19 09:28:36 +00:00
Viacheslav Hletenko
bdb8e4ff65
Merge pull request #1033 from sarthurdev/kea3.0
kea: T7281: Update Kea to 3.0
2025-09-18 21:12:01 +03:00
kumvijaya
e62f2e6c63 T7748: Updated conflict reusable workflow reference in workflow 2025-09-18 22:37:14 +05:30
Daniil Baturin
8dbddfdbf6
Merge pull request #1030 from hedrok/T75-remove-pmacct
T75: remove pmacct
2025-09-18 15:22:07 +01:00
Daniil Baturin
7b2d582819
Merge pull request #1035 from sarthurdev/T7825
nose: T7825: Use nose2 for unit tests
2025-09-18 11:26:35 +01:00
Daniil Baturin
9501cd7187
Merge pull request #1036 from sarthurdev/T7827
T7827: Add unionfs-fuse package
2025-09-18 11:23:45 +01:00
sarthurdev
842b119ca4 T7827: Add unionfs-fuse package 2025-09-17 22:22:05 +02:00
sarthurdev
dd71dc01eb nose: T7825: Use nose2 for unit tests 2025-09-17 22:16:28 +02:00
Daniil Baturin
d7c3843909
Merge pull request #1029 from hedrok/T6962-frr-zebra-kernel-routes
T6962: frr: fix wrong kernel routes updates
2025-09-16 15:33:54 +01:00
sarthurdev
2d31a86bb6 kea: T7821: Add Kea 3.0 arm64 repository 2025-09-15 21:09:50 +02:00
Yevhen Bondarenko
d2f3cd83fe
Merge pull request #1032 from vyos/current-pat
VD-1609: added PAT passing
2025-09-15 20:40:22 +02:00
Yevhen Bondarenko
475331a95a
added PAT passing 2025-09-15 20:27:12 +02:00
Yevhen Bondarenko
865e8d2f16
Merge pull request #1031 from sever-sever/T7824 2025-09-15 20:06:35 +02:00
sarthurdev
267fb08218 kea: T7281: Update Kea to 3.0 2025-09-15 19:07:42 +02:00
Viacheslav
eb9f9291c9 T7824: Add support for disk controllers with the kernel MPI3MR option
Add module kernel option
2025-09-15 17:01:28 +00:00
Kyrylo Yatsenko
12eec3f228 T75: remove pmacct 2025-09-15 18:37:29 +03:00
Kyrylo Yatsenko
4fbffe2efd T6962: frr: fix wrong kernel routes updates
The patch 0007-zebra-remove-kernel-route-on-last-address-deletion.patch
fixes root cause of the issue: Zebra didn't do anything on last
IPv4 address deletion though kernel in such case deletes all IPv4
routes.

FRR PR: https://github.com/FRRouting/frr/pull/19564
2025-09-15 11:35:36 +03:00
Viacheslav Hletenko
1a6747b038
Merge pull request #1028 from c-po/kernel-6.6.106
Kernel: T5887: update Linux Kernel to v6.6.106
2025-09-12 16:47:52 +03:00
Christian Breunig
76e5dcdf5a Kernel: T5887: update Linux Kernel to v6.6.106 2025-09-12 14:38:36 +02:00
Christian Breunig
5cc24ab9e3
Merge pull request #1027 from asklymenko/patch-1
T7804: Modify SquashFS compression options for ARM64 platform
2025-09-10 21:16:05 +02:00
Vijayakumar A
74c1f0724b
Merge pull request #1025 from kumvijaya/current
T7748: conflict check workflow updated to use marketplace action along with increased wait/retry
2025-09-11 00:43:24 +05:30
Viacheslav Hletenko
891f333454
Merge pull request #1026 from hedrok/T7297-fix-ospf-redistribute-table
T7297: frr: add ospf redistribute table-direct
2025-09-10 10:39:27 +03:00
Andrii Klymenko
b33affb224
T7804: Modify SquashFS compression options for ARM64 platform 2025-09-09 21:37:19 +03:00
kumvijaya
185b7dab03 T7748: conflict check workflow updated with increated wait/retry 2025-09-07 22:47:07 +05:30
Viacheslav Hletenko
c6d3547904
Merge pull request #1023 from hedrok/T75-ipt-netflow-aggregation-mode
T75: ipt-netflow fix aggregation mode
2025-09-06 12:24:19 +03:00
Kyrylo Yatsenko
a1a6487692 T7297: frr: add ospf redistribute table-direct
Cherry-pick 84b4b6300585d0747d9794ee2f7c96920ce4a02c as
patch 0006-ospfd-support-table-direct-redistribution.patch
to support `table-direct` in ospf redistribute
2025-09-05 09:51:23 +03:00
Christian Breunig
dc1bc10e3a
Merge pull request #1024 from asklymenko/patch-2
T7772: Fix amazon-cloudwatch-agent build
2025-09-03 19:17:42 +02:00
Andrii Klymenko
978cf0493d
T7772: Fix amazon-cloudwatch-agent build 2025-09-03 11:20:38 +03:00
Kyrylo Yatsenko
76abe84d6e T75: ipt-netflow fix aggregation mode
* 0004-Change-aggregation-parameter-mode-400-444.patch:
  Tests need to read 'aggregation' parameter. All other parameters have
  modes 444 or 644. Change mode of 'aggregation' 400 -> 444
2025-09-02 11:30:54 +03:00
Christian Breunig
4fe55d8005
Merge pull request #1021 from c-po/kernel-6.6.103
Kernel: T5887: update Linux Kernel to v6.6.103
2025-09-01 20:14:38 +02:00
Christian Breunig
de056d33e6
Merge pull request #1022 from hedrok/T75-ipt-netflow-add-sampler
T75: ipt-netflow enable sampler, mac and vlan
2025-09-01 20:14:25 +02:00
Kyrylo Yatsenko
3c43575369 T75: ipt-netflow enable direction + fix vlan out
* add --enable-direction as requested
* Fix output of `cat /proc/net/stat/ipt_netflow_flows`:
  previously if no VLAN, there was no output and table
  columns were shifted when parsed.
2025-09-01 20:07:09 +03:00
Kyrylo Yatsenko
9ea81ca125 T75: ipt-netflow enable sampler, mac and vlan
Enable sampler, MAC address and VLAN recording.

For this to work two patches are needed:

* 0001-Fix-prandom_u32-_max-get_random_u32-_below: fix
interface updates for random numbers, took fix from
0c5759d002

* 0002-Fix-lu-llu-where-64bit: Fix lu -> llu for 64-bit fields
2025-08-31 20:00:42 +03:00
Christian Breunig
242c1a587a
Merge pull request #1020 from asklymenko/patch-2
T7763: Modify the amazon-ssm-agent build script
2025-08-31 18:48:11 +02:00
Christian Breunig
6ab45e64cf Kernel: T5887: update Linux Kernel to v6.6.103 2025-08-31 18:18:49 +02:00
Andrii Klymenko
04d0ef1b53
T7763: Modify the amazon-ssm-agent build script 2025-08-29 13:09:09 +03:00
Daniil Baturin
16a76cd94a
Merge pull request #1019 from asklymenko/patch-1
T7755: Add clang dependency to build hsflowd
2025-08-28 15:55:53 +01:00
Andrii Klymenko
5be206525a
T7755: Add clang dependency to build hsflowd 2025-08-28 15:11:11 +03:00
Daniil Baturin
2adf959122
Merge pull request #1017 from asklymenko/patch-1
T7755: Bump hsflowd version
2025-08-26 13:24:40 +01:00
Andrii Klymenko
214f1c74eb
T7755: Bump hsflowd version 2025-08-26 11:30:30 +03:00
Christian Breunig
d8d2f0ce22
Merge pull request #1016 from c-po/kernel-6.6.102
Kernel: T5887: update Linux Kernel to v6.6.102
2025-08-25 22:09:44 +02:00
Christian Breunig
53e0bb77ec
Merge pull request #1015 from sever-sever/T7749
T7749: Dehardcode x86_64 ARCH to build VPP libraries for accel-pp-ng
2025-08-25 22:09:01 +02:00
Christian Breunig
1313aa6027 Kernel: T5887: remove unused build dependency cleanup code path 2025-08-25 08:27:47 +02:00
Christian Breunig
f8c5dc9cf8 Kernel: T5887: update Linux Kernel to v6.6.102 2025-08-25 08:27:44 +02:00
Viacheslav
4c941f610c T7749: Dehardcode x86_64 ARCH to build VPP libraries for accel-pp-ng
Dehardcode x86_64 ARCH to build VPP libraries used for accel-ppp-ng
2025-08-23 12:35:54 +00:00
Viacheslav Hletenko
9d533529aa
Merge pull request #1014 from sever-sever/T7725
T7725: Bump accel-ppp-ng version to f5764ea
2025-08-22 09:37:11 +03:00
Viacheslav
64bfd79cb4 T7725: Bump accel-ppp-ng version to f5764ea
Regular upgrade
2025-08-22 06:33:47 +00:00
Daniil Baturin
fdfc4eeed8
Merge pull request #1013 from nobidev/features/add_libssl_for_tacacs
T7733: Add miss dependency libssl-dev for build tacacs
2025-08-21 15:22:09 +01:00
Daniil Baturin
e74d95634c
Merge pull request #1008 from sever-sever/T7714-kernel
T7714: Exclude auxiliary directories from linux-kernel tarballs
2025-08-19 14:21:55 +01:00
Daniil Baturin
05f0a675a0
Merge pull request #1007 from sever-sever/T7714
T7714: Exclude auxiliary directories from common tarballs
2025-08-19 14:20:09 +01:00
Viacheslav
e8705a61df T7714: Exclude auxiliary directories from linux-kernel tarballs
Exclude auxiliary directories from linux-kernel and related to
linux-kernel tarballs
2025-08-19 09:50:04 +00:00
Nobi
d1bbe30ddc
T7733: Add miss dependency libssl-dev for build tacacs 2025-08-19 04:19:29 +07:00
Viacheslav Hletenko
af786abcf8
Merge pull request #1012 from sever-sever/T7725
T7725: Bump accel-ppp-ng version to 1674efe
2025-08-18 15:27:59 +03:00
Viacheslav
83b3a8d419 T7725: Bump accel-ppp-ng version to 1674efe
Regular upgrade
2025-08-18 15:26:07 +03:00
Viacheslav Hletenko
ef77465568
Merge pull request #1011 from vyos/T7729
T7729: Build accel-ppp-ng remove extra whitespace
2025-08-18 15:21:20 +03:00
Viacheslav
83cd76eeb7 T7729: Build accel-ppp-ng remove extra whitespace
Build accel-ppp-ng remove extra whitespace to fix build binaries
2025-08-18 09:29:22 +00:00
Viacheslav Hletenko
ab7416a625
Merge pull request #1010 from sever-sever/T7725
T7725: Bump accel-ppp-ng version to e14d23e
2025-08-16 12:18:19 +03:00
Viacheslav
848dca7bb7 T7725: Bump accel-ppp-ng version to e14d23e
Regular update
2025-08-16 09:15:35 +00:00
Daniil Baturin
ffff47aae0
Merge pull request #1009 from sever-sever/T7697-build
T7697: Remove vyos-vpp build requirements to build vyos-1x
2025-08-15 09:45:42 +01:00
Viacheslav
896c4b28f0 T7714: Exclude auxiliary directories from common tarballs 2025-08-14 16:10:51 +00:00
Viacheslav
700abd15ce T7697: Remove vyos-vpp build requirements to build vyos-1x
The vyos-vpp repo was merged to the vyos-1x in the
https://github.com/vyos/vyos-1x/pull/4650
We do not need copy from vyos-vpp repo anymore.
2025-08-14 10:30:08 +00:00
Daniil Baturin
65cc12735a
Merge pull request #1006 from jestabro/op-mode-runner
docker: T7583: add build dependencies for operational command runner
2025-08-08 00:49:41 +01:00
John Estabrook
01052f36c7 docker: T7583: add build dependencies for operational command runner 2025-08-07 13:50:30 -05:00
Daniil Baturin
e46dcf1ced
Merge pull request #1005 from vyos/T7692
T7692: Bump VPP version to the stable 2506
2025-08-07 15:49:57 +01:00
Viacheslav
97db625181 T7692: Bump VPP version to the stable 2506 2025-08-06 13:08:35 +00:00
Daniil Baturin
c5d52ac7b9
Merge pull request #1001 from hedrok/T7537-aws-glbtun-update
T7537: aws-gwlbtun: update to c1fd48b
2025-08-04 12:07:32 +01:00
Viacheslav Hletenko
2f2bfb56d2
T7666: Add script to build accel-ppp-ng binaries (#1002)
* T7666: Add vpp-sflow src patches and accel-ppp-ng to gitignore

* T7666: Add script to build accel-ppp-ng binaries

* Update scripts/package-build/linux-kernel/build-accel-ppp-ng.sh

---------

Co-authored-by: Daniil Baturin <daniil@baturin.org>
2025-07-31 15:31:05 +01:00
Christian Breunig
43fdd70e9a
Merge pull request #1003 from sarthurdev/T7628
tpm: T7628: Fix typo in test expected string
2025-07-31 16:10:54 +02:00
sarthurdev
0564ccd787 tpm: T7628: Fix typo in test expected string 2025-07-31 12:15:48 +02:00
Kyrylo Yatsenko
4f377768e2 T7537: aws-gwlbtun: update to c1fd48b
Updated aws-gwlbtun requires boost too new for Debian bookworm,
but requires only one header-only library.

* Add download/installation of thist boost header library.
* Set path to this boost installation via cmake options.
2025-07-30 07:30:07 +03:00
Daniil Baturin
3e02e42e76
Merge pull request #999 from sarthurdev/T7628
tpm: T7628: Extend test for non-TPM backed encryption
2025-07-29 15:54:15 +01:00
Christian Breunig
dbf36b928f
Merge pull request #998 from sever-sever/T7639
T7639: Add patches to fix FRR reload for IS-IS segment routing
2025-07-29 16:03:55 +02:00
Christian Breunig
bd78d813e3
Merge pull request #1000 from c-po/frr-build-fix
frr: T7663: add missing build dependencies libnl-3-dev & libpcre3-dev
2025-07-28 19:52:11 +02:00
Christian Breunig
a411efebe1 frr: T7663: add missing build dependencies libnl-3-dev & libpcre3-dev 2025-07-28 19:35:36 +02:00
Christian Breunig
330746b55b frr: T7663: remove custom rtrlib build - package included in Debian Bookworm 2025-07-28 19:34:50 +02:00
Viacheslav
c031b92ed0 T7639: Add patches to fix FRR reload for IS-IS segment routing 2025-07-28 12:48:44 +00:00
Daniil Baturin
ed69154b71
Merge pull request #997 from kumvijaya/current
T7644: mirror workflow refactoring rollout
2025-07-28 12:58:28 +01:00
kumvijaya
fdd616fa32 T7644: mirror workflow refactoring rollout 2025-07-27 14:30:19 +05:30
Viacheslav Hletenko
4f5de07491
Merge pull request #996 from c-po/kernel-6.6.100
Kernel: T5887: update Linux Kernel to v6.6.100
2025-07-26 02:01:49 +03:00
Christian Breunig
59c3edf6e8 Kernel: T5887: update Linux Kernel to v6.6.100 2025-07-25 19:33:09 +02:00
Viacheslav Hletenko
779c3429e1
Merge pull request #995 from ServerForge/current
T7175: Downgraded vpp-sflow version v0.9.02-2
2025-07-24 19:39:25 +03:00
Kyle McClammy
3db3ab879d T7175: Downgraded vpp-sflow version v0.9.02-2 to be compatible with VPP stable/2410 2025-07-24 15:43:08 +00:00
Daniil Baturin
161f3b53f5
Merge pull request #991 from vyos/T7647
T7647: Bump keepalived version to 2.3.3
2025-07-22 15:57:56 +01:00
Daniil Baturin
011ad5bd2f
Merge pull request #993 from alexandr-san4ez/T7576-current
T7576: Remove unnecessary code for checking dirty build status
2025-07-22 15:47:32 +01:00
KyleM
1155ae7862
VPP: T7175: Added sflow plugin to build (#962) 2025-07-22 15:28:30 +01:00
Christian Breunig
246efb1307
Merge pull request #994 from c-po/new-vyos-1x-dependencies
Docker: T7648: add additional vyos-1x dependencies python3-pyroute2, python3-voluptuous
2025-07-22 13:13:16 +02:00
Oleksandr Kuchmystyi
71ade9dce3
T7576: Remove unnecessary code for checking dirty build status
```
vyos@r15:~$ show version | match dir
Build commit ID:  d8038ded37fadb-dirty
```
Having uncommited files in vyos-build is completely normal:
custom configs, EULA files in official release builds,
anything else that flavor files may include.

However, many people are not familiar with the specific
meaning of "dirty" in git or with the build process and assume
that "dirty" means something went wrong with the image build.
2025-07-22 13:05:38 +03:00
Christian Breunig
791f8c8346
Merge pull request #992 from c-po/docker-vyos-1x-build-dep
Docker: T7648: add additional vyos-1x build dependencies
2025-07-22 11:24:55 +02:00
Christian Breunig
29780ec79f Docker: T7648: add additional vyos-1x dependencies python3-pyroute2, python3-voluptuous 2025-07-21 21:40:25 +02:00
Christian Breunig
a9a552bb44 Docker: T7648: add additional vyos-1x build dependencies
In order to run pylint and check for missing import statements we need to
install additional build dependencies.
2025-07-21 20:48:08 +02:00
Viacheslav
2d9f5cfdf7 T7647: Bump keepalived version to 2.3.3 2025-07-21 14:49:35 +00:00
Daniil Baturin
28147b4586
Merge pull request #990 from MPStudyly/patch-1
T7636: Fix Makefile target for test-no-interfaces
2025-07-21 13:36:38 +02:00
Michael Pardatscher
29e0afb376
T7636: Fix Makefile target for test-no-interfaces
The target is calling tests for VPP, which require huge page support, thus always making the target fail.
2025-07-17 11:32:04 +02:00
Christian Breunig
d59967adf9
Merge pull request #989 from vyos/cla
CI: T7579: fix of the run trigger for CLA
2025-07-15 16:44:54 +02:00
sarthurdev
df9312fc72 tpm: T7628: Extend test for non-TPM backed encryption 2025-07-15 16:37:24 +02:00
Yevhen Bondarenko
67f0031d06
T7579: fix of the run trigger for CLA 2025-07-13 11:01:40 +02:00
Christian Breunig
defe8e5b7d
Merge pull request #988 from c-po/kernel-6.6.96
Kernel: T5887: update Linux Kernel to v6.6.96
2025-07-12 07:54:43 +02:00
Christian Breunig
9012ce99a9 Kernel: T5887: update Linux Kernel to v6.6.96 2025-07-11 21:44:32 +02:00
John Estabrook
c9b8053f27
Merge pull request #987 from hedrok/docker-build-add-apt-update
Docker: T7568: add apt-get update as last command
2025-07-09 09:49:55 -05:00
Kyrylo Yatsenko
ac88f992f3 Docker: T7568: add apt-get update as last command
Some of GitHub actions were relying on cache from apt-get update
being available.

My previous changes broke those GitHub actions.

Add `apt-get update` as one of last commands, which adds ~20Mb,
but still 2.04Gb -> 2.01Gb for vyos-build comparing with Dockerfile
without cache cleaning.

No changes for vyos image as I hope it is not used in any automatic
scripts that use `apt-get install` without prior `apt-get update`.
2025-07-09 09:32:57 +03:00
Christian Breunig
671464f860
Merge pull request #986 from vyos/cla
T7579: added workflow for CLA
2025-07-06 08:36:27 +02:00
lemeshovich
0a63cb816c
T7579: added workflow for CLA 2025-07-04 14:24:07 +03:00
Daniil Baturin
f65c69c1a5
Merge pull request #984 from sever-sever/T7706
T7606: Split VPP test for smoketest
2025-07-03 16:10:46 +01:00
Daniil Baturin
5e1e6cb028
Merge pull request #985 from dmbaturin/T7610-fix-upgrade-from-equuleus
iso: T7610: include a file with ISO9660 string to prevent upgrade failures from 1.3.x
2025-07-03 15:38:46 +01:00
Daniil Baturin
54e2359090 iso: T7610: include a file with ISO9660 string to prevent upgrade failures from 1.3.x 2025-07-03 14:35:23 +01:00
Viacheslav
f2ac2fbcd6 T7609: Increase huge-page-count to 1800 for VPP tests 2025-07-03 08:13:48 +00:00
Viacheslav
3d0e999c80 T7606: Exclucde VPP config-load test from the phony testc
We have a separate PHONY for VPP tests
2025-07-03 06:06:58 +00:00
Viacheslav
7807f0d0e8 T7606: Add include and exclude mode for match check-install qemu 2025-07-03 06:05:06 +00:00
Viacheslav
a245f81e06 T7609: Smoketest add huge-page-size and huge-page-count arguments 2025-07-02 16:47:02 +00:00
Viacheslav
1aceb0371c T7606: Split VPP test for smoketest
Exclude VPP tests from the general tests
Add the PHONY no-interfaces-no-vpp
Add the PHONE testcvpp (load VPP config only)
2025-07-02 10:54:59 +00:00
Christian Breunig
3e5696d501
Merge pull request #979 from hedrok/docker-clean-apt-cache
Docker: T7568: clean apt cache + clean some /tmp files
2025-06-30 20:17:35 +02:00
Daniil Baturin
3a532c45a8
Merge pull request #983 from natali-rs1985/T7424-restart_vyos-configd
T7424: Restart vyos-configd after vyos.smoketests.hint file creation
2025-06-30 14:00:55 +01:00
Nataliia Solomko
4b1f3d4610 T7424: Restart vyos-configd after vyos.smoketests.hint file creation 2025-06-30 13:32:03 +03:00
Daniil Baturin
f637049299
Merge pull request #980 from natali-rs1985/T7424
T7424: Create vyos.smoketests.hint file before starting vyos-configd
2025-06-26 15:22:27 +01:00
Nataliia Solomko
042e14c6f5 T7424: Create vyos.smoketests.hint file before starting
vyos-configd
2025-06-26 14:06:30 +03:00
Kyrylo Yatsenko
92ff04087f Docker: T7568: clean apt cache + clean some /tmp files
This saves ~50Mb for vyos-build image: 2.04Gb -> 1.99Gb
And ~19Mb for vyos image: 155Mb -> 136Mb

Docker stores all files created in each layer so
command

```
RUN wget -O /tmp/open-vmdk-master.zip https://github.com/.../master.zip && \
     unzip -d /tmp/ /tmp/open-vmdk-master.zip && \
     cd /tmp/open-vmdk-master/ && make && make install
```

will store open-vmdk-master.zip and /tmp/open-vmdk-master
in the image even though there is a cleanup command later:

```
RUN rm -rf /tmp/*
```

The cleanup command just makes these files invisible in last layer.

So temporary file must be removed in same RUN command
not to be stored in the image.

This commit adds such removals.
2025-06-22 12:57:54 +03:00
Christian Breunig
3222553a26
Merge pull request #977 from c-po/T7539-wwan
Kernel: T7539: compile in WWAN drivers and not use loadable modules
2025-06-11 21:58:16 +02:00
Christian Breunig
9dae7e2d36 Kernel: T7539: compile in WWAN drivers and not use loadable modules 2025-06-11 21:45:00 +02:00
Christian Breunig
f92db23cdb Kernel: T7539: add option to only install build dependencies for development 2025-06-11 21:44:22 +02:00
Christian Breunig
8fcd1e5a8e Kernel: T5887: update Linux Kernel to v6.6.93 2025-06-11 21:44:07 +02:00
Daniil Baturin
054d4f9d43
Merge pull request #927 from sever-sever/T4409
T4409: Fix Framed-Route with attr Accel-VRF-Name
2025-06-10 15:56:23 +01:00
Daniil Baturin
4726ad65ae
Merge pull request #972 from Gabin-CC/current
build: T7453: Make raw image building logic more robust
2025-06-10 15:46:58 +01:00
Christian Breunig
9182e62abc
Merge pull request #973 from tjjh89017/T7534
T7534: netfilter: add asciidoc-base as build depend
2025-06-10 16:43:55 +02:00
Daniil Baturin
75f72ab901
Remove a stray debug output 2025-06-10 15:43:29 +01:00
Daniil Baturin
7d40712037
Merge pull request #975 from sever-sever/T7530
T7530: Build package binaries script should exit if repo is absent
2025-06-10 15:36:23 +01:00
Date Huang
e862f1c13b T7534: netfilter: add asciidoc-base,bison as build depend
Signed-off-by: Date Huang <tjjh89017@hotmail.com>
2025-06-10 01:12:37 +08:00
Viacheslav Hletenko
8f4b588a1d
Merge pull request #974 from tjjh89017/T7535
T7535: aws-gwlbtun: add cmake for depend
2025-06-09 17:12:59 +03:00
Daniil Baturin
faa725ae12
Remove an emoji from an error message 2025-06-09 12:49:06 +01:00
Daniil Baturin
6b33a64184
Remove an emoji from an error message 2025-06-09 12:48:51 +01:00
Viacheslav Hletenko
2ecdb4f464 T7530: Build package binaries script should exit if repo is absent
The build package binaries script should exit if the repo is absent
or cannot be cloned

If a build package `repo-a` depends on the `repo-b` and the `repo-b`
cannot be cloned, then we shoud exit from the script to avoid
partly build dependencies

For example:
```
[[packages]]
name = "fake-repo"
commit_id = "v0.0.1"
scm_url = "https://github.com/vyos/fake-repo"

[[packages]]
name = "ethtool"
commit_id = "debian/1%6.10-1"
scm_url = "https://salsa.debian.org/kernel-team/ethtool"
```

If ethtool depends on some fake-package and this package cannot be
downloaded from the repo, then we shouldn't build the ethtool package
at all.
2025-06-09 09:41:34 +00:00
Date Huang
dc82611f20 T7535: aws-gwlbtun: add cmake for depend
Signed-off-by: Date Huang <tjjh89017@hotmail.com>
2025-06-08 19:41:42 +08:00
Gabin-CC
02c2e30622 T7453: handle dynamic partition mapping in raw image build
Enhanced the raw image creation logic to dynamically detect and assign
EFI and root partitions based on the number of partitions created by kpartx.

- Supports both 2-partition and 3-partition layouts
- Adds debug output for mapped partitions
- Avoids hardcoded assumptions about partition order
- Improves resilience in cloud-init and containerized build contexts

Fixes build failure when /dev/loopXp3 is missing or not mapped properly.

Signed-off-by: Gabin-CC <gabin.laurent@rte-international.com>
2025-06-06 20:59:22 +02:00
Gabin-CC
1cda2d42bb T7453: Enhance raw/qcow2 image creation
Description
This pull request introduces improvements to the raw_image.py script responsible for building raw disk images in the VyOS build process.

Main Changes
Added use of kpartx to reliably map EFI and root partitions from the loop device.
Introduced disk_details as an attribute on the BuildContext object to pass partition metadata through the image build steps.
Improved the __exit__ method for BuildContext to unmount all mount points and clean up kpartx mappings and loop devices, even in failure cases.
Fixed a crash in mount_image() when con.disk_details was not set.
Added useful debug logs for loop device usage and partition mapping.
Motivation
The previous implementation assumed partitions like /dev/loopXp3 would appear automatically, which is unreliable across some environments (especially containers or newer systems).

This PR makes the process more reliable by explicitly mapping partitions with kpartx, a tool designed for this purpose.

It also ensures proper resource cleanup by unmounting and detaching everything cleanly, preventing leaked loop devices or stale mount points.

Test Instructions

Flavor : cloud-init.toml
packages = [
  "cloud-init",
  "qemu-guest-agent"
]

image_format = ["qcow2"]
disk_size = 10

[boot_settings]
console_type = "ttyS0"

Run:

sudo ./build-vyos-image --architecture amd64 \
  --build-by "you@example.com" \
  --reuse-iso vyos-1.5-rolling-*.iso \
  cloud-init
Expected behavior:

The build completes without errors.
The .qcow2 image file is generated and bootable (e.g., in KVM or Proxmox).
Partitions are mounted correctly via /dev/mapper/loopXp*.

Signed-off-by: Gabin-CC <gabin.laurent@rte-international.com>
2025-06-06 20:58:04 +02:00
Christian Breunig
8350580ac5
Merge pull request #971 from c-po/inotify-stackfs
Kernel: T7428: re-enable CONFIG_INOTIFY_STACKFS
2025-05-30 19:08:05 +02:00
Christian Breunig
5871203be6 Kernel: T7428: re-enable CONFIG_INOTIFY_STACKFS
Kernel compile time option for our custom patch to enable inotify
on stackable filesystems accidently got removed in commit cfdd4451ca3aa
("Kernel: T7428: remove io_uring support").

Option was re-enabled.
2025-05-30 19:05:05 +02:00
Christian Breunig
fa7052cc62
Merge pull request #970 from vyos/c-po-patch-1
Kernel: T5887: update Linux Kernel to v6.6.92
2025-05-30 19:01:34 +02:00
Christian Breunig
9e7eeeb385
Kernel: T5887: update Linux Kernel to v6.6.92 2025-05-30 18:58:57 +02:00
Yevhen Bondarenko
fe8ea308a6
Merge pull request #967 from dmbaturin/T7490-broadcast-relay-build
packages: T7490: add build files for udp-broadcast-relay
2025-05-28 12:11:12 +02:00
Daniil Baturin
c51513fb5c packages: T7490: add build files for udp-broadcast-relay 2025-05-28 10:50:04 +01:00
Viacheslav Hletenko
980c601eed
Merge pull request #969 from sever-sever/T7494-flex
T7494: FRR add build dependency flex libelf-dev
2025-05-28 12:33:40 +03:00
Viacheslav Hletenko
6fa46e8668 T7494: FRR add build dependency flex libelf-dev 2025-05-28 09:32:24 +00:00
Christian Breunig
c7a24a87ba
Merge pull request #968 from sever-sever/T7494
T7494: FRR add missing build bison and liblua dependencies
2025-05-28 08:58:55 +02:00
Viacheslav Hletenko
3b44daa55f T7494: FRR add missing build bison and liblua dependencies 2025-05-28 06:54:30 +00:00
Viacheslav Hletenko
29f65965ae
Merge pull request #966 from kumvijaya/current
T7445: added open prs conflict checker caller workflow
2025-05-26 22:11:35 +03:00
John Estabrook
bc77b388e7
Merge pull request #963 from jestabro/config-context
T7352: add arg to test script for running smoketests under vyconfd/commitd
2025-05-22 13:37:19 -05:00
John Estabrook
45c21a06ea T7352: add test script arg for testing under vyconfd/commitd 2025-05-22 13:24:32 -05:00
John Estabrook
c1adab0c13 T7321: enable vyos-commitd.service for intial testing 2025-05-22 12:57:21 -05:00
kumvijaya
d9c4c8d2ed T7445: added open prs conflict checker caller workflow 2025-05-22 00:04:56 +05:30
Daniil Baturin
9f1bf2d61c
Merge pull request #965 from c-po/boot-recovery-T1771
T1771: enable "reboot-on-upgrade-failure" for new VyOS installations
2025-05-21 00:33:35 +01:00
Christian Breunig
a3d2be8dd1 T1771: enable "reboot-on-upgrade-failure" for new VyOS installations 2025-05-17 15:14:07 +02:00
Viacheslav Hletenko
fcbd8d6cb4
Merge pull request #961 from c-po/kernel-perf-T7253
Kernel: T7253: build linux-perf-$version package
2025-05-15 20:59:55 +03:00
Christian Breunig
ffcf9b46ae Docker: T7253: re-add build-essential dependency for vyos-1x
vyshim consists out of C code which needs the build-essential
package.
2025-05-15 06:50:04 +02:00
Daniil Baturin
1cf889b058
Merge pull request #964 from dmbaturin/T7450-use-pcre2
docker: T7450: use PCRE2 for vyos-utils and libvyosconfig
2025-05-13 15:30:55 +01:00
Daniil Baturin
cae7cd90e0 docker: T7450: use PCRE2 for vyos-utils and libvyosconfig 2025-05-13 13:22:02 +01:00
Christian Breunig
1545aa4b76 Kernel: T7253: build linux-perf-$version package
Previous patch was removed during VyOS 1.3 -> 1.4 development cycle as the
internal handling for Kernel package generation changed.

This brings back the perf binary in a new linux-perf-$KERNELVERSION
Debian package.
2025-05-12 20:45:52 +02:00
Christian Breunig
73df823da1 Docker: T7253: remove Kernel build dependencies to shrink container image
Move the Kernel build dependencies to package.toml to unbload the build
container even more.
2025-05-12 20:45:52 +02:00
Christian Breunig
63f3ae10b0 Kernel: T5887: update Linux Kernel to v6.6.90 2025-05-12 18:14:32 +02:00
Christian Breunig
4369ade6a3 Add macOS Finder .DS_Store to .gitignore file 2025-05-12 18:13:54 +02:00
Viacheslav Hletenko
5891a5bd25
Merge pull request #960 from c-po/fix-blackbox-exporter-build
build: T6949: add missing build trigger for blackbox exporter
2025-05-11 12:03:53 +03:00
Christian Breunig
5fe0e515de build: T6949: add missing build trigger for blackbox exporter
Commit d6fab6c8c036 ("T6949: Adds build for blackbox exporter deb package")
added the general requirements for a package build - but it missed the trigger
for changes within the build ocnfiguration dir.
2025-05-11 10:50:00 +02:00
Viacheslav Hletenko
247e810339
Merge pull request #955 from tjjh89017/arm64_kernel
T7406: add virtio-gpu and pl011 console support for arm64
2025-05-06 17:31:06 +03:00
Daniil Baturin
0b980485f4
Merge pull request #958 from c-po/io_uring
Kernel: T7428: remove io_uring support
2025-05-05 12:36:22 +01:00
Daniil Baturin
16b82be8f4
Merge pull request #959 from c-po/ansi-T7356
systemd: T7356: use short service names to avoid truncation
2025-05-05 12:34:49 +01:00
Christian Breunig
0dd3b4e329 systemd: T7356: use short service names to avoid truncation
The issue ONLY appears on small terminals where systemd automatically truncates
the lines to match the terminal width - so far so good. The BUG is, if
truncation happens in the service name which is BOLD you're pretty much
screwed, as truncation will not reset the color.

We can set StatusUnitFormat=description in /etc/systemd/system.conf which will
not print the service long description to avoid truncation making the boot a
little less verbose.

This actually restores the behavior of VyOS 1.3
2025-05-04 23:51:14 +02:00
Christian Breunig
cfdd4451ca Kernel: T7428: remove io_uring support
Given the recent chatter about io_uring and it flaws - e.g. [1] - and we have
to my knowledge no use for it we should remove it from the Kernel configuration.

Every feature not used and removed from the Kernel is a good one.

1: https://www.armosec.io/blog/io_uring-rootkit-bypasses-linux-security/
2025-05-04 23:44:41 +02:00
Christian Breunig
4be81eb3eb Kernel: T5887: update Linux Kernel to v6.6.89 2025-05-04 23:43:57 +02:00
Daniil Baturin
65f3b103a5
Merge pull request #957 from dmbaturin/T7409-no-md5
build: T7409: do not include MD5 checksums in the ISO image
2025-04-29 15:23:12 +01:00
Christian Breunig
58a30bd14a
Merge pull request #953 from dmbaturin/T7399-no-apt-downgrade
build: T7399: remove the APT option to allow downgrades
2025-04-28 21:30:06 +02:00
Christian Breunig
a2979842a7
Merge pull request #956 from tjjh89017/T7407
T7407: fix the incorrect url for arm64 salt pkgs
2025-04-28 21:29:25 +02:00
Christian Breunig
a4318d2228
Merge pull request #954 from tjjh89017/arm64
T7405: add missing dependency kpartx for all archs
2025-04-28 21:28:37 +02:00
Daniil Baturin
64ff1e538d build: T7409: do not include MD5 checksums in the ISO image 2025-04-28 18:27:58 +01:00
Date Huang
82a40e68c7 T7407: fix the incorrect url for arm64 salt pkgs
Signed-off-by: Date Huang <tjjh89017@hotmail.com>
2025-04-28 21:45:44 +08:00
Date Huang
217aa7ae4f T7406: add virtio-gpu and pl011 console support for arm64
Signed-off-by: Date Huang <tjjh89017@hotmail.com>
2025-04-28 21:42:53 +08:00
Date Huang
b894227750 T7405: add missing dependency kpartx for all archs
Signed-off-by: Date Huang <tjjh89017@hotmail.com>
2025-04-27 14:39:20 +08:00
Daniil Baturin
1f400a4b01 build: T7399: remove the APT option to allow downgrades
It doesn't appear necessary anymore, if it ever was
2025-04-25 19:45:03 +01:00
Daniil Baturin
db23b29ceb
Merge pull request #943 from nvollmar/T7347
T7347: Update prometheus exporters
2025-04-24 16:11:40 +01:00
AlexIT-FT
5107733137
T7384: Radius patch for Dns-Server-IPv6-Address attribute - accel-ppp (#926)
* Add 0002-Radius-Dns-Server-IPv6-Address.patch

This adds the ability to pull IPv6 DNS servers from the radius response not just hard coded in the config file
2025-04-24 15:44:36 +01:00
Viacheslav Hletenko
8eb3ad0408
Merge pull request #952 from vyos/c-po-patch-1
Kernel: T5887: update Linux Kernel to v6.6.87
2025-04-24 09:38:58 +03:00
Christian Breunig
39e7b04893
Kernel: T5887: update Linux Kernel to v6.6.87 2025-04-23 22:01:32 +02:00
Christian Breunig
818e89fe7f
Merge pull request #951 from c-po/syslog-T7367
T7367: syslog.service links to rsyslog.service - thus disable it, too
2025-04-23 20:25:24 +02:00
Nicolas Vollmar
9bfb053c91 packages: T7347: Update prometheus exporters 2025-04-23 09:25:13 +02:00
Christian Breunig
6f9bcdb054 T7367: syslog.service links to rsyslog.service - thus disable it, too
The default syslog implementation should make syslog.service a symlink to
itself, so that this socket activates the right actual syslog service. As
rsyslog service is already disabled - also take care of the linked service.
2025-04-20 21:28:30 +02:00
Christian Breunig
d401c8fee1
Merge pull request #948 from dmbaturin/T7372-quote-lb-config-arguments
build: T7372: correctly quote lb_config arguments
2025-04-20 16:54:54 +02:00
Christian Breunig
fc8f092e7e
Merge pull request #949 from ryanzuwala/current
radvd: T7376: upgrade package to v2.20
2025-04-20 16:52:59 +02:00
Christian Breunig
0de7883ca7
Merge pull request #950 from kumvijaya/current
T7334: pr mirror trigger workflow added with label creation permission for default github token
2025-04-20 16:46:48 +02:00
kumvijaya
b2c2287363 T7334: pr mirror trigger workflow added with label creation permission for default github token 2025-04-20 14:53:35 +05:30
Ryan Zuwala
67f82f8240 radvd: T7376: upgrade package to v2.20 2025-04-19 00:18:19 -04:00
Viacheslav Hletenko
e902f96165
Merge pull request #947 from dmbaturin/T7241-remove-fastnemon
build: T7241: remove fastnetmon from the list of services to be disabled by default
2025-04-18 20:00:03 +03:00
Daniil Baturin
2986466f7b build: T7372: correctly quote lb_config arguments 2025-04-18 13:04:44 +01:00
Daniil Baturin
0efde86ea6 build: T7241: remove fastnetmon from the list of services
to be disabled by default
2025-04-18 12:42:25 +01:00
Daniil Baturin
c20a0637a4
Merge pull request #922 from Embezzle/T6322
T6322: Include microcode in amd64 architecture builds
2025-04-18 12:06:20 +01:00
Viacheslav Hletenko
351e59638e
Merge pull request #946 from dmbaturin/T6230-ipt-netflow-libs-fix
packages: T6230: include iptables modules in vyos-ipt-netflow
2025-04-18 12:28:34 +03:00
Daniil Baturin
d38ad1dc21 packages: T6230: include iptables modules in vyos-ipt-netflow 2025-04-17 16:54:27 +01:00
Daniil Baturin
3cb36c6ab2
Merge pull request #936 from sarthurdev/kea_2.6
kea: T7281: Update Kea to 2.6.1-2
2025-04-15 15:52:42 +01:00
Daniil Baturin
7487f6354b
Merge pull request #944 from c-po/netplug-T7353
T7353: netplug.service is started by vyos-router
2025-04-15 15:42:08 +01:00
Alex W
23bd5ade7a T6322: Include microcode in amd64 architecture builds 2025-04-14 23:24:07 +01:00
sarthurdev
f7cdc3ec51 kea: T7281: Patches from upstream to include ping_check library 2025-04-14 15:56:12 +02:00
sarthurdev
351a251347 kea: T7281: Update Kea to 2.6.1-2 2025-04-14 11:52:42 +02:00
Viacheslav Hletenko
e7694c49b9
Merge pull request #945 from boretom/fix/T7357-libnss-mapuser
vyos-build: T7357: add libnss-mapuser package
2025-04-13 17:35:14 +03:00
Thomas Kupper
1ce93fc396 vyos-build: T7357: add libnss-mapuser package
After renaming the package from libnss-mapuser to vyos-libnss-mapuser
in T7336-new-package-name, the package is missing from
scripts/package-build/.

Adding it, taking libpam-radius-auth as an example. The dependency
is taking from the Build-Depends field of the debian/control file
of the libnss-mapuser package.

Signed-off-by: Thomas Kupper <thomas.kupper@gmail.com>
2025-04-13 11:59:18 +02:00
Christian Breunig
4ce28b3f8c T7353: netplug.service is started by vyos-router
Netplug daemon is started last after all interfaces got initialized to
properly monitor them for up/down events.
2025-04-13 07:22:10 +02:00
Viacheslav Hletenko
494476e5f5
Merge pull request #942 from dmbaturin/T7345-goodbye-buster
build: T7345: do not use Debian Buster repos in image builds
2025-04-11 16:55:11 +03:00
Viacheslav Hletenko
2f18905e98
Merge pull request #941 from dmbaturin/T7344-build-bash-completion
packages: T7344: build bash-completion from source
2025-04-10 20:08:21 +03:00
Daniil Baturin
1a9b4cd941 packages: T7344: build bash-completion from source 2025-04-10 17:55:10 +01:00
Daniil Baturin
6dab4426c6 build: T7345: do not use Debian Buster repos in image builds 2025-04-10 11:53:34 +01:00
Christian Breunig
1b00253bb1
Merge pull request #940 from dmbaturin/T7301-goodbye-gnupg
build: T7301: do not include the GPG image signing key in images
2025-04-01 16:02:47 +02:00
John Estabrook
dd2c245be7
Merge pull request #938 from jestabro/commit-cli
T7292: add build dependency python3-protobuf
2025-04-01 08:32:21 -05:00
Daniil Baturin
03f73ec571
Merge pull request #924 from c-po/ipt-netflow
Kernel: T6230: add ipt_NETFLOW out-of-tree module
2025-04-01 11:30:39 +01:00
Daniil Baturin
56497dd47d build: T7301: do not include the GPG image signing key in images 2025-04-01 11:01:43 +01:00
John Estabrook
7e70105a5e T7292: add build dependency python3-protobuf
Used at build of python modules to autogenerate dataclasses from
vyconf.proto.
2025-03-30 16:40:29 -05:00
Christian Breunig
c678188cda
Merge pull request #937 from kumvijaya/current
T7291: disabled codeowners review
2025-03-30 15:03:29 +02:00
kumvijaya
2398616a0e T7291: disabled codeowners review 2025-03-28 23:55:50 +05:30
Daniil Baturin
e57bff5859
Merge pull request #935 from oniko94/fix/T7278-fix-cracklib-dep-build
T7278: Fix python3-cracklib database creation on update
2025-03-25 15:12:58 +00:00
oniko94
0646013a7c
T7278: Fix missing cracklib database files on image update 2025-03-25 14:15:45 +02:00
Viacheslav Hletenko
feb144cdd7
Merge pull request #934 from AndriiFullroot/VyOS_T7226
T7226: Fixed ldpd crash with tLDP message for disabled LDP hello message
2025-03-21 14:59:47 +02:00
Andrii Melnychenko
0aa4c0366d T7226: Fixed ldpd crash with tLDP message for disabled LDP hello message
Signed-off-by: Andrii Melnychenko <a.melnychenko@vyos.io>
2025-03-21 12:40:22 +01:00
Christian Breunig
d552f7f8c3
Merge pull request #930 from c-po/T861-secure-boot
T861: minor improvements to secure-boot certificate handling
2025-03-21 08:37:34 +01:00
Viacheslav Hletenko
750951606b
Merge pull request #932 from AndriiFullroot/VyOS_T7226
T7226: Added FRR patch with option that disables LDP hello
2025-03-18 18:11:09 +02:00
Christian Breunig
96f1844557 T861: "make purge" should also remove efivars file 2025-03-18 16:24:45 +01:00
Christian Breunig
d5db3bf117 T861: use custom Kernel certificate over the root shim signing certificate 2025-03-18 16:24:43 +01:00
Christian Breunig
a02b10b2ba T861: use secure-boot certificates from data/certificates 2025-03-18 16:19:39 +01:00
Christian Breunig
8d58a72368 T861: disable colored output when using live-build - good for CI 2025-03-18 16:19:39 +01:00
Christian Breunig
ccaec002d6 Docker: T861: move to bookworm-slim distribution 2025-03-18 16:19:39 +01:00
Christian Breunig
2283f97b36 T861: add .build/config and config/ to .gitignore 2025-03-18 16:19:39 +01:00
Daniil Baturin
b35cbd8363
Merge pull request #931 from jestabro/commitd
T7121: Set up communication vyconfd to vyos-commitd
2025-03-18 15:09:02 +00:00
Christian Breunig
30d687b5dc
Merge pull request #933 from dmbaturin/T7217-remove-dropbear-keys
hooks: T7217: remove Dropbear SSH host keys at image build time
2025-03-17 20:30:34 +01:00
Daniil Baturin
452b17eaca hooks: T7217: remove Dropbear SSH host keys
that may be generated by postinstall scripts
to prevent accidental use of non-unique keys
baked into images
2025-03-17 17:58:33 +00:00
Andrii Melnychenko
ef328a44c4 T7226: Added FRR patch with option that disables LDP hello 2025-03-17 18:49:41 +01:00
John Estabrook
2c90ce3fd2 T7121: disable vyos-commitd.service until replacement of vyos-configd 2025-03-16 23:59:49 -05:00
John Estabrook
0a6c197226 T7121: add build dependency protobuf-compiler 2025-03-16 23:59:49 -05:00
Christian Breunig
1d1105ccfd
Merge pull request #929 from kumvijaya/current
T7247: removed pr number from private mirror workflow call
2025-03-16 20:52:18 +01:00
Christian Breunig
6bf12667ed
Merge pull request #928 from c-po/T5400-fix-schroedingers-env
Docker: T5400: do not initialize OPAM environment at all
2025-03-16 20:01:00 +01:00
kumvijaya
8d92010dae T7247: removed pr number from private mirror workflow call 2025-03-16 13:09:36 +05:30
Christian Breunig
a33a6d2770 Docker: T5400: do not initialize OPAM environment at all
Instead of trying to fix - what we call - "Schroedingers build environment"
in this container, we should rather fix the Makefiles of the individual
project using OCaml code.
2025-03-15 21:13:25 +01:00
Christian Breunig
ab76eab002 Revert "Docker: T5400: ensure OPAM environment is always present"
This reverts commit b8f99c754702b094ace7fd632f3a035736a44fb4.
2025-03-15 21:06:41 +01:00
Viacheslav Hletenko
6bae49479f T4409: Fix Framed-Route with attr Accel-VRF-Name
If you use attribute Accel-VRF-Name we are expecting a
route in a specific VRF, the cuurent implementation
set the Framed-Route/Framed-IPv6-Route to the default VRf (no VRF)

Fixes this, so routes are installed in the proper VRF name
2025-03-13 12:00:58 +00:00
Christian Breunig
0423450c3a
Merge pull request #925 from Yuanandcircle/T7233
T7233: Fix wrong MOK certs path in the script of build-kernel.sh
2025-03-12 15:19:28 +01:00
Christian Breunig
282ca5b308 Kernel: T6230: add ipt_NETFLOW out-of-tree module 2025-03-11 16:37:27 +01:00
Youyuan
2c95b9f624
T7233: Fix wrong MOK certs path in the script of build-kernel.sh 2025-03-11 09:15:12 +08:00
Christian Breunig
b8f99c7547 Docker: T5400: ensure OPAM environment is always present 2025-03-07 14:15:40 +01:00
Christian Breunig
f23b204e68
Merge pull request #923 from jestabro/libvyosconfig-build
Docker: T5400: move build of libvyosconfig to vyos-1x
2025-03-05 09:34:43 +01:00
John Estabrook
ee0c643908 Docker: T5400: move build of libvyosconfig to vyos-1x
libvyosconfig is both a build and a run dependency of vyos-1x.
Satisfying the build dependency within the Docker image requires
coordination of updates to vyos-build/libvyosconfig/vyos-1x on any
changes to the library; simplify this process by moving the build to a
step of the vyos-1x Makefile.
2025-03-04 15:23:32 +01:00
Christian Breunig
c54fba1fd7
Merge pull request #921 from sever-sever/T7197
T7197: Decrease config smoketest to 2 CPUs and 7G RAM
2025-02-25 21:22:35 +01:00
Viacheslav Hletenko
fcf261561a
Merge pull request #920 from c-po/kernel-6.6.79
Kernel: T5887: update Linux Kernel to v6.6.79
2025-02-25 18:57:16 +02:00
Viacheslav Hletenko
93c5b23cf2 T7197: Decrease config smoketest to 2 CPUs and 7G RAM
Decrease system resources for configload tests
2025-02-25 16:46:53 +00:00
Christian Breunig
e9017a53e1 Kernel: T5887: update Linux Kernel to v6.6.79 2025-02-25 17:01:24 +01:00
Viacheslav Hletenko
c6bf02f568
Merge pull request #917 from MPStudyly/patch-1
T7184: Fix makefile target test
2025-02-22 13:13:55 +02:00
Christian Breunig
862a5ef052
Merge pull request #919 from vyos/c-po-T7140-timeout
T7140: increase CI test timeout 3h -> 5h
2025-02-22 07:37:28 +01:00
Christian Breunig
4d66688c2e
T7140: increase CI test timeout 3h -> 5h 2025-02-22 07:36:54 +01:00
Daniil Baturin
867656b614
Merge pull request #903 from oniko94/current
T6353: Add cracklib dependencies, fix local Docker build
2025-02-21 14:20:22 +00:00
Michael Pardatscher
e3eb56dd40
T7184: Fix makefile target test
Add `--cpu` and `--memory` args to target `test`, fixing smoketest runs due to VPP requiring additional resources
2025-02-21 14:51:33 +01:00
Viacheslav Hletenko
28b64f7337
Merge pull request #913 from c-po/T6847-intel-oot
Intel: T6847: provide common build script for Out-Of-Tree drivers
2025-02-20 18:56:23 +02:00
Christian Breunig
02834085c9
Docker: T861: add sbsigntool to build container (#918) 2025-02-20 17:13:54 +01:00
Christian Breunig
f0752afa91 Docker: T861: add sbsigntool to build container 2025-02-20 17:12:32 +01:00
Daniil Baturin
2b80dc810e
Merge pull request #916 from sever-sever/T7178
T7178: Add vDPA Virtio Data Path Aceleration kernel module
2025-02-20 15:47:00 +00:00
Daniil Baturin
a48cc1d458
Merge pull request #912 from vyos/T7174
T7174: bump host-sflow version to v2.1.11-5 to build with VPP feature
2025-02-20 15:45:09 +00:00
Daniil Baturin
d406e049a5
Merge pull request #911 from sever-sever/T7173
T7173: Bump keepalived version to 2.3.2
2025-02-20 15:43:24 +00:00
Viacheslav Hletenko
a04f00f171 T7178: Add vDPA Virtio Data Path Aceleration kernel module 2025-02-20 08:47:58 +00:00
Christian Breunig
07f55aca2c
Merge pull request #915 from vyos/c-po-patch-1
T7145: updated team name for codeowners current branch
2025-02-20 07:10:12 +01:00
Christian Breunig
b8b54e7909
T7145: updated team name for codeowners current branch 2025-02-20 07:09:51 +01:00
Christian Breunig
2c61c15656 Intel: T6847: provide common build script for Out-Of-Tree drivers
Use one build script to rule all the Intel Git based drivers.
2025-02-19 16:21:14 +01:00
Viacheslav Hletenko
dc4f7e36b0 T7174: bump host-sflow version to v2.1.11-5 to build with VPP feature 2025-02-17 09:42:10 +00:00
Viacheslav Hletenko
455383d3bd T7173: Bump keepalived version to 2.3.2 2025-02-17 09:11:16 +00:00
oniko94
e846e68f9f
docker: T6353: Add libcrack2 dependencies and fix local Docker build 2025-02-17 08:51:02 +02:00
Vijayakumar A
48fb37eca3
T7172: added workflow checks to make current as default in private repo (#910)
* T7172: added workflow checks to making current as default in private repo

---------

Co-authored-by: kumvijaya <kuvmijaya@gmail.com>
2025-02-16 20:01:35 +01:00
Viacheslav Hletenko
ae3a66c3f3
Merge pull request #909 from vyos/T5887-kernel-6.6.77
Kernel: T5887: update Linux Kernel to v6.6.77
2025-02-16 07:21:16 +02:00
Christian Breunig
36a0a79a9d
Kernel: T5887: update Linux Kernel to v6.6.77 2025-02-15 14:32:25 +01:00
Christian Breunig
10ce9543b9
Merge pull request #908 from c-po/current
intel: T6847: fix build system to perform proper "git clone" on IXGBE driver
2025-02-15 10:06:06 +01:00
Christian Breunig
2a2e36ba2e intel: T6847: fix build system to perform proper "git clone" on IXGBE driver
Previous commit a10b29560 ("intel: T6847: update IXGBE Out-Of-Tree driver to
v6.0.5") missed a proper CI "git clone" on the driver repository - this has
been fixed.
2025-02-15 09:21:57 +01:00
Christian Breunig
fc2fe22b4c intel: T6847: port patches to latest driver version 6.0.5 2025-02-15 09:19:16 +01:00
Daniil Baturin
79ea85898b
Merge pull request #907 from jestabro/docker-opam-update
docker: T7170: fix sed pattern for change in OPAM install.sh
2025-02-14 19:10:17 +00:00
John Estabrook
841b0f4172 docker: T7170: fix sed pattern for change in OPAM install.sh 2025-02-14 12:59:25 -06:00
Viacheslav Hletenko
26517587b6
Merge pull request #906 from c-po/intel-ixgbe-oot
intel: T6847: update IXGBE Out-Of-Tree driver to v6.0.5
2025-02-13 23:16:01 +02:00
Christian Breunig
9cd6ef3807 Kernel: T861: add ephemeral key pattern to .gitignore file 2025-02-13 21:14:42 +01:00
Christian Breunig
a10b295601 intel: T6847: update IXGBE Out-Of-Tree driver to v6.0.5 2025-02-13 21:14:00 +01:00
Viacheslav Hletenko
51b8dcb474
Merge pull request #905 from sever-sever/T7164
T7164: Bump VPP version to stable 2410
2025-02-13 19:02:33 +02:00
Viacheslav Hletenko
16aea063bd T7164: Bump VPP version to stable 2410 2025-02-13 16:39:06 +00:00
Christian Breunig
e2cae51c1b
Merge pull request #904 from c-po/current
syslog: T6989: update default system configuration with new CLI syntax
2025-02-12 21:39:52 +01:00
Christian Breunig
773b2bfbb9 syslog: T6989: update default system configuration with new CLI syntax 2025-02-12 21:38:40 +01:00
Yuriy Andamasov
c0810663b8
Merge pull request #902 from kumvijaya/current
T7145: updated codeowners list
2025-02-08 16:30:52 +01:00
kumvijaya
d8b0efdb59 T7145: updated codeowners list 2025-02-08 17:38:44 +05:30
kumvijaya
124cbdec3f T7145: updated codeowners list 2025-02-08 17:27:34 +05:30
Viacheslav Hletenko
d1cdd2d87d
Merge pull request #901 from Ckath/check-qemu-install-fix
T7140: check-qemu-install: fix unparsable command
2025-02-07 13:04:50 +02:00
ckath
7416cd4ce9 T7140: check-qemu-install: fix unparsable command 2025-02-06 21:28:58 +01:00
Yevhen Bondarenko
9d7eef8862
Merge pull request #900 from natali-rs1985/T7066
T7066: Increase cpu number for smoketests
2025-02-05 09:36:09 +01:00
Nataliia Solomko
d30b135392 T7066: Increase cpu number for smoketests 2025-02-05 08:49:31 +02:00
Christian Breunig
3d24c1077e
Merge pull request #898 from c-po/syslog-T6989
T6989: disable rsyslog service
2025-02-04 18:24:45 +01:00
Viacheslav Hletenko
c1a7b70586
Merge pull request #899 from dmbaturin/T7132-rolling-boot-splash
artwork: T7132: new boot splash for rolling release images
2025-02-03 22:12:13 +02:00
Daniil Baturin
af09861fec
Merge pull request #897 from sever-sever/T7125
T7125: add show version vyos-1x for smoketest
2025-02-03 19:30:00 +00:00
Daniil Baturin
c62327d3d6
Merge pull request #895 from vyos/T7109-binary-includes
build: T7109: add support for includes_binary in flavors
2025-02-03 19:29:18 +00:00
Daniil Baturin
591f550246 build: T7132: new boot splash for rolling release images
The pseudo-constellation can be nicknamed "Operarius" ("The Worker")
(genitive singular: "Operarii")

Image by Oleg Gorobets
2025-02-03 19:15:19 +00:00
Christian Breunig
a0ef45b19d T6989: disable rsyslog service 2025-02-02 21:42:47 +01:00
Viacheslav Hletenko
d52077a6fc T7125: add show version vyos-1x for smoketest 2025-02-02 10:03:58 +00:00
Viacheslav Hletenko
946b7b2815
Merge pull request #896 from sever-sever/T7110
T7110: Increase memory to 8G for the smoketests
2025-01-30 19:46:17 +02:00
Viacheslav Hletenko
a05fc3396b T7110: Increase memory to 8G for the smoketests
Some smoketests requires more memory to pass all tests
For example VPP tests
2025-01-30 17:27:04 +00:00
Daniil Baturin
d659cdb8fe
Merge pull request #893 from sever-sever/T7105
T7105: Disable by default vpp service until it is configured
2025-01-30 15:19:57 +00:00
Daniil Baturin
d6917d4fc9
Merge pull request #894 from sever-sever/T7106-smoketest
T7106: Extend check-qemu-install to show vpp version
2025-01-30 15:18:52 +00:00
Daniil Baturin
f11b5a3282 build: T7109: add support for includes_binary in flavors 2025-01-30 14:14:17 +00:00
Viacheslav Hletenko
5f4e2acd16 T7106: Extend check-qemu-install to show vpp version 2025-01-30 11:27:43 +00:00
Viacheslav Hletenko
631934dbea T7105: Disable by default vpp service until it is configured 2025-01-30 10:04:33 +00:00
Daniil Baturin
16f9226b1f
Merge pull request #892 from c-po/optional-lsb-tests
Testsuite: T7043: make build/manifest.json optional
2025-01-23 17:08:12 +00:00
Christian Breunig
f5887de05e Testsuite: T7043: make build/manifest.json optional
Support loading and testing random ISO images without the need for
build/manifest.json. If the file is detected - tests are run. If file is
not found - those tests are skipped.
2025-01-22 20:44:56 +01:00
Viacheslav Hletenko
c1b5494ea0
Merge pull request #891 from jestabro/update-commit-hash
T7046: T6342: update libvyosconfig commit hash
2025-01-20 23:07:54 +02:00
John Estabrook
7200377c33 T7046: T6342: update libvyosconfig commit hash 2025-01-20 14:19:12 -06:00
Christian Breunig
e850eb8854
Merge pull request #890 from c-po/current
frr: T6746: add libc-ares-dev build dependency
2025-01-19 15:41:34 +01:00
Christian Breunig
0b4f9b6d12 frr: T6746: add libc-ares-dev build dependency
Fix error:
  dpkg-checkbuilddeps: error: Unmet build dependencies: libc-ares-dev
2025-01-19 15:40:28 +01:00
Viacheslav Hletenko
2ab12b7566
Merge pull request #889 from natali-rs1985/T6895
T6895: Build hsflowd with option PSAMPLE
2025-01-18 19:47:43 +02:00
Nataliia Solomko
62cdc8ea8d T6895: Build hsflowd with option PSAMPLE 2025-01-17 11:04:25 +02:00
Viacheslav Hletenko
b8ee67003f
Merge pull request #888 from sever-sever/T7026-src
T7026: build vpp source plus binaries instead of only binaries
2025-01-15 16:30:13 +02:00
Viacheslav Hletenko
a4339b80ed T7026: build vpp source plus binaries instead of only binaries 2025-01-15 12:29:41 +00:00
Daniil Baturin
7c7dbad721
Merge pull request #887 from sever-sever/T7043-cpu-mem
T7043: increase smoketest memory to 8G for vpp
2025-01-14 23:33:28 +00:00
John Estabrook
1e6cdf774b
Merge pull request #881 from sever-sever/T7206-vyos-1x-vpp
T7026: Extend vyos-1x build to include vyos-vpp
2025-01-14 09:50:25 -06:00
Viacheslav Hletenko
c691f4b390 T7043: increase smoketest memory to 8G for vpp 2025-01-14 11:51:13 +00:00
Viacheslav Hletenko
4b9c86bd9a
Merge pull request #886 from sever-sever/T7026-fix-patches
T7026: Use vpp patches during build as they not applied
2025-01-14 11:15:10 +02:00
Viacheslav Hletenko
0f44fc7abe T7026: Add apply_patches option for the build packages script
Add 'apply_patches' key is set to True (default) in the package configuration
This allows skipping/applying patch application by 'build.py' for specific
packages when desired

Usage:
  apply_patches = false
2025-01-14 09:13:17 +00:00
Viacheslav Hletenko
844cac86fd T7026: Use vpp patches during build as they not applied
Patches for VPP are not applied due to specific to the vpp repo
structure, so we cannot use standard included to build.py
function 'apply_patches' to patch the vpp sources.
Use explicit patch in the "build_cmd" as a workaround and the
simplest fix.
2025-01-14 09:05:54 +00:00
Christian Breunig
0bd5cb4f50
Merge pull request #885 from aapostoliuk/T2326-circinus
T2326: opennhrp: Removed OpenNHRP package
2025-01-13 19:52:21 +01:00
aapostoliuk
4d64c894b4 T2326: opennhrp: Removed OpenNHRP package
Removed OpenNHRP package
2025-01-13 15:52:08 +02:00
Viacheslav Hletenko
a2fb862fea
Merge pull request #884 from sever-sever/T7043
T7043: Add arguments for CPU and memory for the check-qemu-install
2025-01-13 11:20:51 +02:00
Viacheslav Hletenko
7d86ca29be
Merge pull request #883 from sever-sever/7026-vpp-build
T7026: Use prebuild hook to build vpp
2025-01-11 14:15:17 +02:00
Viacheslav Hletenko
392529e037
Merge pull request #882 from sever-sever/T7037
T7037: Add prebuild hook for the package-build
2025-01-11 14:13:05 +02:00
Viacheslav Hletenko
51895a5c98 T7043: Add arguments for CPU and memory for the check-qemu-install
Some smoketest requires more than 4G memory.
And --cpu and --memory args for check-qemu-install
2025-01-11 11:51:10 +00:00
Viacheslav Hletenko
2eb9deea6f T7026: Use prebuild hook to build vpp 2025-01-10 13:13:24 +00:00
Viacheslav Hletenko
a549693509 T7037: Add prebuild hook for the package-build
The pre_build_hook is an optional configuration defined in packages.toml
It executes after the repository is checked out and before the
build process begins. This hook allows you to perform preparatory tasks,
such as creating directories, copying files, or running custom scripts/commands.
2025-01-10 12:57:26 +00:00
Viacheslav Hletenko
72f39101bf T7026: Extend vyos-1x build to include vyos-vpp 2025-01-09 20:36:37 +00:00
Viacheslav Hletenko
aae746aa7b
Merge pull request #880 from vyos/T7032
T7032: Add missing libpam-radius-auth build
2025-01-09 15:01:37 +02:00
Daniil Baturin
d4b21f369c
Merge pull request #879 from jestabro/manifest-version-field
testsuite: T7031: add version to manifest if not explicitly set
2025-01-09 11:32:18 +00:00
Viacheslav Hletenko
528416d491 T7032: Add missing libpam-radius-auth build 2025-01-09 09:05:31 +00:00
John Estabrook
1e4bcf0428 Testsuite: T7031: add version to manifest if not explicitly set 2025-01-08 23:00:33 -06:00
Daniil Baturin
7d71873472
Merge pull request #878 from sever-sever/T7026
packages: T7026: Add a script for building VPP
2025-01-08 13:04:08 +00:00
Viacheslav Hletenko
b04538b9b2 T7026: Add script build vpp package 2025-01-07 20:05:35 +00:00
Christian Breunig
aeb94b726f
Merge pull request #877 from c-po/os-release-T7019
T7019: use VyOS release train in /etc/os-release codename over Debian release
2025-01-07 17:14:23 +01:00
Christian Breunig
f8b88e54bc T7019: use VyOS release train in /etc/os-release codename over Debian release
VyOS is based on Debian
* VyOS 1.3 -> Debian Buster (VyOS equuleus)
* VyOS 1.4 -> Debian Bookworm (VyOS sagitta)
* VyOS 1.5 -> Debian Bookworm (and then trixie) (VyOS circinus)
* VyOS rolling -> Debian Bookworm (and then trixie) (VyOS t.b.d.)

When running
  vyos@vyos:~$ lsb_release -a
  Distributor ID: VyOS
  Description:    VyOS 1.5-rolling-202501031241 (current)
  Release:        1.5-rolling-202501031241
  Codename:       bookworm

The codename in use is the Debian base distribution. This should be changed to
the VyOS release name.
2025-01-05 20:00:49 +01:00
Viacheslav Hletenko
aa4ba3d95e
Merge pull request #876 from c-po/T6999-os-release
Testsuite: T6999: validate content of /etc/os-release in target system
2025-01-03 21:57:44 +02:00
Daniil Baturin
91d67b065d
Merge pull request #875 from c-po/secureboot-lockdown
Kernel: T861: enable lockdown subsystem as UEFI secure boot dependency
2025-01-03 18:22:37 +00:00
Christian Breunig
dabd5b2a6a Testsuite: T6999: validate content of /etc/os-release in target system
The file /etc/os-release is written during image build, but it's content is not
validated that it can be used by e.g. "lsb_release -a" command.
2025-01-03 17:00:52 +01:00
Christian Breunig
1a593421ec Kernel: T861: enable lockdown subsystem as UEFI secure boot dependency 2025-01-02 11:44:27 +01:00
Christian Breunig
8013ff21ae Kernel: T5887: update Linux Kernel to v6.6.69 2025-01-02 11:43:19 +01:00
Christian Breunig
7720dfa743
Merge pull request #874 from c-po/qemu-fix-macbase
Testsuite: T861: use proper base MAC address from RFC7042
2025-01-01 20:13:23 +01:00
Christian Breunig
bf01c00d04 Testsuite: T861: use proper base MAC address from RFC7042
Commit 085df7615a ("Testsuite: T861: always use 2 VCPUs") also altered the base
MAC address used by QEMU to a locally administered one. Something that looked
"right" in the beginning turned out to break the smoketest platform.

The reason is the locally administered bit is evaluated in [1] and if set and
not on the exclusion list (as it was a Realtek base MAC address before), the
interface in question is not considered persistent and thus not added to the
configuration file upon system startup.

1: 825743b6bc/src/helpers/vyos-interface-rescan.py (L73-L74)
2025-01-01 20:10:52 +01:00
Christian Breunig
72c2a011d7
Merge pull request #872 from c-po/testsuite-update
Testsuite: T861: inform smoketest about this environment
2024-12-31 18:06:25 +01:00
Christian Breunig
9f4d1e02b5
Merge pull request #873 from vyos/pr-template-update
GitHub: adjust PR template to our current needs/workflow
2024-12-31 15:01:03 +01:00
Christian Breunig
c6b35c2864
GitHub: adjust PR template to our current needs/workflow 2024-12-31 14:59:43 +01:00
Christian Breunig
81ae7efbac Testsuite: T6991: inform smoketest about this environment 2024-12-31 14:20:49 +01:00
Christian Breunig
20b20efcca Testsuite: T861: boot system in serial console mode to get the full boot log 2024-12-31 14:20:32 +01:00
Christian Breunig
085df7615a Testsuite: T861: always use 2 VCPUs 2024-12-31 14:13:04 +01:00
Nicolas Vollmar
d6fab6c8c0
T6949: Adds build for blackbox exporter deb package 2024-12-30 19:30:48 +01:00
Christian Breunig
d6dfdfcc2f
Merge pull request #870 from kumvijaya/current
T6954: added PR mirror workflows
2024-12-24 09:16:42 +01:00
kumvijaya
fad0abb807 T6954: updated code owners user basis 2024-12-24 11:24:06 +05:30
kumvijaya
6448a8e020 T6954: added mirror workflows 2024-12-24 11:18:05 +05:30
Christian Breunig
9337990602
Merge pull request #869 from c-po/no-jenkins
T6674: remove all references to Jenkins
2024-12-23 10:02:32 +01:00
Christian Breunig
443109687c
Merge pull request #863 from natali-rs1985/T6952
T6952: enable exFat in kernel config
2024-12-23 09:55:35 +01:00
Christian Breunig
38395e86d5 T6674: remove all references to Jenkins 2024-12-23 09:47:19 +01:00
Christian Breunig
3b95165b03
Merge pull request #867 from c-po/eula-line-break
eula: T6859: reformat file to honor default UNIX 80x25 terminal width and length
2024-12-23 09:12:33 +01:00
Viacheslav Hletenko
3b377bde15
Merge pull request #868 from c-po/package-build
T6674: move patches to "package/<package_name>" subfolder
2024-12-22 17:34:05 +02:00
Christian Breunig
53ceb24988 T6674: move patches to "package/<package_name>" subfolder
This prevents the accidental applying of a patch to multiple source directories
defined in package.toml.

Example FRR:
Package consits of build instructions for libyang, rtrlib and frr itself.
Previously patches in frr/patches folder got applied to libyang, rtrlib and frr
which made no sense and could also fail a build.
2024-12-22 16:22:21 +01:00
Christian Breunig
6aa3bb5fa8 T6674: use common .gitignore file for Package build artifacts/sources 2024-12-22 16:22:21 +01:00
Christian Breunig
37865246c2 eula: T6859: reformat file to honor default UNIX 80x25 terminal width and length
Runnning "show license" on a default 80x25 terminal makes it almost impossible
to properly read it.
2024-12-20 22:24:26 +01:00
Daniil Baturin
77f3471680
Merge pull request #866 from sever-sever/T6964
T6964: Add PHONY to make VPP smoketests
2024-12-20 18:19:44 +00:00
Viacheslav Hletenko
a66b32eff5 T6964: Add PHONY to make VPP smoketests
Add PHONY to make smoketests for VPP.

sudo make test-vpp
2024-12-20 14:54:59 +00:00
Christian Breunig
1ee43221f2
Merge pull request #862 from ykholod/current-issue-17413
T6958: Clear Babel config on babeld stop
2024-12-19 17:21:23 +01:00
Daniil Baturin
f7ec15ed05
Merge pull request #864 from MattKobayashi/T6960
T6960: package-build: Disable unnecessary builds for `amazon-cloudwatch-agent` package
2024-12-19 13:05:43 +00:00
Matthew Kobayashi
f377ee2ee7
T6960: package-build: Disable unnecessary builds 2024-12-19 08:17:17 +10:00
Nataliia Solomko
2a27860183 T6952: enable exFat in kernel config 2024-12-18 18:39:01 +02:00
Yaroslav Kholod
6fb4916017 T6958: Clear Babel config on babeld stop 2024-12-18 14:57:08 +02:00
Viacheslav Hletenko
c1f9fc6a6d
Merge pull request #860 from vyos/T5887-kernel-6.6.66
Kernel: T5887: update Linux Kernel to v6.6.66
2024-12-17 08:02:38 +02:00
Christian Breunig
e244e0f086
Kernel: T5887: update Linux Kernel to v6.6.66 2024-12-17 06:52:50 +01:00
Daniil Baturin
e7d8b72159
Merge pull request #853 from c-po/T6746-frr-10
frr: T6746: upgrade package to 10.2
2024-12-16 10:46:07 +00:00
Christian Breunig
a6ee547df9 frr: T6746: upgrade package to 10.2 2024-12-12 21:08:36 +01:00
Christian Breunig
6473704999
Merge pull request #856 from dmbaturin/T6942-no-guest-agents
flavors: T6942: remove VM guest agents from the generic flavor
2024-12-10 19:53:22 +01:00
Yevhen Bondarenko
017e0ed635
Merge pull request #858 from jestabro/update-hash-lib-name
T6718: update libvyosconfig commit hash for fix to dlopen lib name
2024-12-10 16:35:54 +01:00
John Estabrook
a32d7989f5 T6718: update libvyosconfig commit hash for fix to dlopen lib name 2024-12-10 09:08:43 -06:00
Daniil Baturin
0ba21e93c8
Merge pull request #857 from sever-sever/T5887
Kernel: T5887: update Linux Kernel to v6.6.64
2024-12-09 14:35:35 +00:00
Viacheslav Hletenko
e8bc65e026 Kernel: T5887: update Linux Kernel to v6.6.64 2024-12-09 11:46:25 +00:00
Daniil Baturin
15c0bd7578
Merge pull request #824 from jestabro/vyconf-minimal
T6718: use the vyconf daemon for validation of set commands
2024-12-06 21:37:58 +00:00
John Estabrook
e4dcc5961f docker: T6718: libvyosconfig update for vyconf 2024-12-06 08:52:15 -06:00
Daniil Baturin
090a5532af flavors: T6942: remove VM guest agents from the generic flavor 2024-12-05 18:47:38 +00:00
Christian Breunig
1efcc4c5e1
Merge pull request #854 from jestabro/opam-install
docker: T6929: fix sed pattern for change in Opam install.sh
2024-12-02 19:47:31 +01:00
John Estabrook
04d7f13c49 docker: T6929: fix sed pattern for change in Opam install.sh 2024-12-02 11:37:47 -06:00
Christian Breunig
5bccbebc1e
Merge pull request #849 from dmbaturin/T6923-deb-security-urls
build: T6923: use the Debian mirror for security updates if it's specified explicitly
2024-11-30 12:42:51 +01:00
Christian Breunig
029cd725be Update data/build-types/release.toml 2024-11-30 08:49:54 +01:00
Daniil Baturin
e4fa5c6b3d build: T6859: include EULA files in build type definitions 2024-11-30 08:49:54 +01:00
Christian Breunig
2ef1e83db2
Merge pull request #847 from dmbaturin/T6915-flavor-cleanup
build-flavors: T6915: clean up flavor definitions
2024-11-30 08:49:25 +01:00
Christian Breunig
5833ce11c8
Merge pull request #850 from dmbaturin/T6922-bootloaders-option
build: T6922: add an option to specify bootloaders for the image
2024-11-30 08:48:51 +01:00
Daniil Baturin
c3f79825c9 build: T6922: add an option to specify bootloaders for the image 2024-11-29 17:04:35 +00:00
John Estabrook
e248336cdd
Merge pull request #846 from dmbaturin/T6913-xen-flavor-update
build-flavors: T6913: fix Xen guest agent package in the generic image
2024-11-29 10:48:08 -06:00
Daniil Baturin
5de2b12d0b build: T6923: use the Debian mirror for security updates if it's specified explicitly
but the security mirror is not
2024-11-29 12:16:10 +00:00
Daniil Baturin
c62fef71fc
Merge pull request #848 from sever-sever/T6912-dropbear
T6912: Fix build dependency use global dependency
2024-11-28 16:34:59 +00:00
Viacheslav Hletenko
d4b572844d T6912: Fix build podman dependency
Use the global dependency instead of package dependency in the
package.toml
This fixes to build 'podman' package
2024-11-28 12:53:15 +00:00
Viacheslav Hletenko
bffc5c8c36 T6912: Fix build isc-dhcp dependency
Use the global dependency instead of package dependency in the
package.toml
This fixes to build 'isc-dhcp' package
2024-11-28 12:45:35 +00:00
Viacheslav Hletenko
213d324412 T6912: Fix hsflowd dependency
Use the global dependency instead of package dependency in the
package.toml
This fixes to build 'hsflowd' package
2024-11-28 12:29:43 +00:00
Viacheslav Hletenko
c193623120 T6912: Fix build waagent dependency
Use the global dependency instead of package dependency in the
package.toml
2024-11-28 12:26:00 +00:00
Viacheslav Hletenko
19bd06b0fe T6912: Fix build strongswan dependency
Use the global dependency instead of package dependency in the
package.toml
This fixes to build 'strongswan' package
2024-11-28 12:20:23 +00:00
Viacheslav Hletenko
e14c56d886 T6912: Fix build dropbear dependency
Use the global dependency instead of package dependency in the
package.toml
The package dependency is not used
This fixes to build 'dropbear' package
2024-11-28 12:07:39 +00:00
Daniil Baturin
11e21b94c2 build-flavors: T6915: clean up flavor definitions
and leave only illustrative essentials
2024-11-26 18:29:07 +00:00
Daniil Baturin
00c4d39242 build-flavors: T6913: fix Xen guest agent package in the generic image
Also, remove the old XCP-NG flavor because the new agent
works for both mainline Xen and XCP-NG
2024-11-26 17:46:22 +00:00
Viacheslav Hletenko
3e660d3e30
Merge pull request #843 from dmbaturin/T6905-stream-build-type
build: T6905: Add stream build type
2024-11-26 12:15:35 +02:00
Christian Breunig
dcf1d920ea
Merge pull request #845 from sever-sever/T6912
T6912: Fix build package script dependencies
2024-11-26 07:49:08 +01:00
Viacheslav Hletenko
8e669e323d T6912: Remove print dependencies for build packages 2024-11-25 14:46:06 +00:00
Viacheslav Hletenko
3bbcbb689b T6912: Build TACACS use global dependencies 2024-11-25 14:40:14 +00:00
Viacheslav Hletenko
3b786bf6f5 T6912: Build FRR use global dependencies 2024-11-25 14:39:49 +00:00
Viacheslav Hletenko
aa40b27d9e T6912: Fix build package script dependencies
Install dependencies declared in the package.toml file does not
work due to the wrong logic. Set global dependencies instaed of
dependencies per package.
2024-11-25 14:37:10 +00:00
Viacheslav Hletenko
50f8304f92
Merge pull request #844 from c-po/T6674-tacacs
T6674: add package build instructions for TACACS client libraries
2024-11-22 10:33:15 +02:00
Christian Breunig
ef9e1f84c1 T6674: add package build instructions for TACACS client libraries 2024-11-21 20:02:06 +01:00
John Estabrook
1ba46ed1d3
Merge pull request #842 from dmbaturin/T6904-dev-build-versions
build: T6904: allow development builds to have version strings
2024-11-21 10:53:31 -06:00
John Estabrook
823759115a
Merge pull request #841 from dmbaturin/T6903-configurable-vyos-1x
build: T6903: allow passing vyos-1x repo path in an environment variable
2024-11-21 10:53:20 -06:00
Christian Breunig
ab588e47f8
Merge pull request #840 from dmbaturin/T6877-flavor-merge-fix
scripts: T6877: fix an error when the base flavor for merging has no packages field
2024-11-20 20:45:00 +01:00
Daniil Baturin
0b07ed516b build: T6905: Add stream build type 2024-11-20 17:27:02 +00:00
Daniil Baturin
1b12eeb9a1 build: T6904: allow development builds to have version strings 2024-11-20 15:52:55 +00:00
Daniil Baturin
ae582039f9 build: T6903: allow passing vyos-1x repo path in an environment variable 2024-11-20 14:34:56 +00:00
Daniil Baturin
30a4a8df27 scripts: T6877: fix an error when the base flavor for merging has no packages field 2024-11-20 14:02:51 +00:00
Viacheslav Hletenko
2efc869757 Kernel: T5887: update Linux Kernel to v6.6.62 2024-11-19 17:44:13 +02:00
Christian Breunig
1e038ab202
Merge pull request #837 from dmbaturin/T6877-flavor-merge
scripts: T6877: add a script for merging multiple flavor files
2024-11-17 12:30:33 +01:00
Christian Breunig
811c287f72
Merge pull request #839 from sever-sever/T6879
T6879: Add build amazon-cloudwatch-agent
2024-11-17 12:30:11 +01:00
Daniil Baturin
b68e397fee
Merge pull request #838 from sever-sever/T5887
Kernel: T5887: update Linux Kernel to v6.6.61
2024-11-16 20:49:00 +00:00
Viacheslav Hletenko
365ae51ecd T6879: Add build amazon-cloudwatch-agent and amazon-cloudwatch-agent 2024-11-16 13:10:33 +00:00
Viacheslav Hletenko
c967ef510e Kernel: T5887: update Linux Kernel to v6.6.61 2024-11-15 15:36:59 +00:00
Daniil Baturin
2cec3b9cba scripts: T6877: add a script for merging multiple flavor files 2024-11-14 18:07:53 +00:00
Daniil Baturin
b455954ecd
Merge pull request #836 from jestabro/add-image-compat
image-tools: T6864: keep file necessary for compat add image
2024-11-14 10:46:54 +00:00
John Estabrook
2416f963ad image-tools: T6864: keep file necessary for compat add image
Revert "T1416: remove deprecated default-union-grub-entry"
This reverts commit d50707bb295dbd4bc50e3d0301fc8be605448429.
The file grub/default-union-grub-entry and its companion
install-image/postinst are needed for 'compatibility-mode' upgrades:
when upgrading from a system with legacy image-tools, those two files
are expected to exist in the mounted image of the target iso.
2024-11-13 15:08:04 -06:00
Christian Breunig
4d01efaacf
Merge pull request #834 from natali-rs1985/T3501
T3501: Fix cli command in check-qemu-install
2024-11-12 09:46:59 +01:00
Nataliia Solomko
a975e075fd T3501: Fix cli command in check-qemu-install 2024-11-12 09:48:28 +02:00
Viacheslav Hletenko
33f15da7d4
Merge pull request #830 from dmbaturin/T6854-frr-pcre-build
frr: T6854: build FRR with PCRE2 support for better performance
2024-11-06 23:25:10 +02:00
Viacheslav Hletenko
cf5cabace8
Merge pull request #831 from dmbaturin/T6855-apt-entry-rework
build: T6855: make the custom APT entry and key syntax more flexible
2024-11-06 23:24:04 +02:00
Daniil Baturin
9ed7a29ebb build: T6855: make the custom APT entry and key syntax more flexible 2024-11-06 19:03:42 +00:00
Daniil Baturin
59228da66a frr: T6854: build FRR with PCRE2 support for better performance 2024-11-06 16:09:18 +00:00
Daniil Baturin
5674398d59
Merge pull request #827 from sever-sever/T6813-kernel
T6813: Build tarballs for the packages in the linux-kernel dir
2024-11-04 20:16:14 +00:00
Viacheslav Hletenko
50b3d9f80e T6813: Build tarballs for the packages in the linux-kernel dir
Build tarballs for the packages related linux-kernel dir.
2024-11-01 13:50:56 +00:00
Christian Breunig
a900353a5b
Merge pull request #829 from c-po/T6844-salt
T6844: use our own mirror of the salt repository
2024-11-01 09:40:19 +01:00
Christian Breunig
f36d645550 T6844: use our own mirror of the salt repository 2024-11-01 09:36:16 +01:00
Daniil Baturin
3a53e7b442
Merge pull request #825 from sever-sever/T6840
T6840: Build OpenVPN-otp use commit id instead of master
2024-10-29 16:11:22 +00:00
Daniil Baturin
d6a45cf9db
Merge pull request #826 from sever-sever/T6813-netfilter
T6813: Add tarballs for the netfilter
2024-10-29 16:10:52 +00:00
Viacheslav Hletenko
051bda1f2b T6813: Add tarballs for the netfilter 2024-10-28 19:07:35 +00:00
Viacheslav Hletenko
3c9a2ce87f T6840: Build OpenVPN-otp use commit id instead of master 2024-10-28 18:13:38 +00:00
Daniil Baturin
09ccfe7a70
Merge pull request #822 from sarthurdev/grub_fix
live: T5568: Fix live grub menu entries
2024-10-28 10:42:34 +00:00
John Estabrook
a6d121f3dc docker: T6718: vyos1x-config is now pinned in libvyosconfig build script 2024-10-25 10:04:09 -05:00
John Estabrook
394ec80f49 T6718: vyconfd.service is started by vyos-router 2024-10-25 10:04:09 -05:00
Daniil Baturin
38dc111f0c
Merge pull request #823 from sever-sever/T5887-revert
Kernel: T5887: Revert update Linux Kernel to v6.6.58
2024-10-25 15:03:34 +01:00
Viacheslav Hletenko
7cd109889b Kernel: T5887: Revert update Linux Kernel to v6.6.58
This reverts commit 6e256633b34dc737a812b0b8d253733608eb8ca8.

Issues with the kernel and netfilter IPv6
https://vyos.dev/T6814
https://bugzilla.redhat.com/show_bug.cgi?id=2321325
2024-10-25 12:21:47 +00:00
sarthurdev
61d3585f19 live: T5568: Fix live grub menu entries 2024-10-25 00:07:11 +02:00
Daniil Baturin
45e583b06b
Merge pull request #821 from sever-sever/T6813
T6813: Build tarballs for the packages
2024-10-24 19:01:31 +01:00
Viacheslav Hletenko
b955b11680 T6813: Build tarballs for the packages
Build tarballs for the packages with our changes after patches
2024-10-24 12:49:56 +00:00
Daniil Baturin
1807ded1b1
Merge pull request #820 from HollyGurza/T6684
T6684: new Debian package repo snapshot logic
2024-10-24 12:11:46 +01:00
khramshinr
13bc96d4dc T6684: new Debian package repo snapshot logic
Added functionality to store version information for temporarily installed packages.
2024-10-24 14:25:39 +06:00
Viacheslav Hletenko
fec89b5e11
Merge pull request #818 from vyos/c-po-patch-3
Kernel: T5887: update Linux Kernel to v6.6.58
2024-10-22 21:51:27 +03:00
Christian Breunig
6e256633b3
Kernel: T5887: update Linux Kernel to v6.6.58 2024-10-22 20:24:28 +02:00
Viacheslav Hletenko
7dc50a429a
Merge pull request #817 from sever-sever/T6771
T6771: Fix trigger build container state changes
2024-10-21 20:23:23 +03:00
Viacheslav Hletenko
91811fca0c T6771: Fix trigger build container state changes
The git action requires checking the 'true' as a string instead of
bool
Otherwise it will trigger rebuild container per each merge
2024-10-21 10:30:01 +00:00
Viacheslav Hletenko
001dac27f5
Merge pull request #816 from sever-sever/T6713-update-url
T6713: Build Realtek driver change source repo
2024-10-21 12:48:27 +03:00
Viacheslav Hletenko
167cba6556
Merge pull request #813 from dmbaturin/T6776-zabbix-updates
build: T6776: use the official Zabbix repo for zabbix-agent2
2024-10-18 17:58:40 +03:00
Viacheslav Hletenko
510aa6ec88 T6713: Build Realtek driver change source repo 2024-10-18 10:05:06 +00:00
Daniil Baturin
bf2e6afc49 build: T6776: use the official Zabbix repo for zabbix-agent2 2024-10-17 11:13:35 +01:00
Christian Breunig
2359180068
Merge pull request #811 from c-po/realtek-signing
Kernel: T861: T6713: fix generation of realtek driver signature
2024-10-12 14:03:18 +02:00
Christian Breunig
267bd9ca61 Kernel: T5887: update Linux Kernel to v6.6.56 2024-10-12 08:04:09 +02:00
Christian Breunig
3a6e1d4455 Kernel: T861: T6713: fix generation of realtek driver signature
We need to sign the module during the Debian build run, before the
binaries are packed into the resulting DEB.
2024-10-12 08:02:23 +02:00
Christian Breunig
984654139c
Merge pull request #810 from vyos/evgsentrium/T6771
actions: T6771: Build docker image without Jenkins
2024-10-12 07:41:37 +02:00
Yevhen Bondarenko
f9978c81c5
T6771: Build docker image without Jenkins 2024-10-10 17:29:25 +02:00
Christian Breunig
cde77d07d1
Merge pull request #808 from dmbaturin/T6231-mlnx
build: T6231: remove Mellanox OFED drivers and tools until their license status is confirmed
2024-10-10 11:24:02 +02:00
Daniil Baturin
4d68265e7a build: T6231: remove Mellanox OFED drivers and tools
until their license status is confirmed
2024-10-10 09:51:34 +01:00
Viacheslav Hletenko
545d493e05
Merge pull request #807 from sever-sever/current
T861: T6713: Sign Realtek drivers
2024-10-10 10:53:21 +03:00
Viacheslav Hletenko
df59bc2dd4 T861: T6713: Sign Realtek drivers 2024-10-09 15:45:39 +00:00
Christian Breunig
910eece6d3
Merge pull request #804 from rebortg/T973_frr_exporter
T973: add build script for frr_exporter package
2024-10-09 08:22:06 +02:00
rebortg
b3460ca121 T973: add build script for frr_exporter package 2024-10-08 14:49:31 +02:00
Viacheslav Hletenko
9eb61d3b6c
Merge pull request #802 from sever-sever/T6765
T6765: Fix build python3-vici package
2024-10-08 14:43:10 +03:00
Viacheslav Hletenko
7c5c0334ca T6765: Fix build python3-vici package
Fix build python3-vici. It did not include the directory
/usr/lib/python3/dist-packages/vici
2024-10-08 08:20:33 +00:00
Christian Breunig
b66e95d3f8
Merge pull request #799 from rebortg/T973_go
T973: upgrade go version in dockerfile
2024-10-08 07:16:02 +02:00
John Estabrook
15cc88a145
Merge pull request #800 from jestabro/set-tag-value
docker: T4318: libvyosconfig update for set_tag value
2024-10-07 15:00:40 -05:00
John Estabrook
394828f82e docker: T4318: libvyosconfig update for set_tag value 2024-10-07 13:10:14 -05:00
rebortg
c660a9c832 T973: upgrade go version in dockerfile 2024-10-07 20:09:06 +02:00
Christian Breunig
c1fc21a0ad
Merge pull request #797 from c-po/fix-T3303
T3303: fix location of os-release file
2024-10-07 17:27:17 +02:00
Daniil Baturin
49d41fa34a
Merge pull request #762 from sever-sever/T6713-current-realtek
T6713: Update Realtek r8152 driver
2024-10-07 15:58:30 +01:00
Christian Breunig
65b64c8807 T3303: fix location of os-release file 2024-10-07 16:34:59 +02:00
Christian Breunig
beb5d83003
Merge pull request #796 from c-po/smoketests
Testsuite: T6494: add new make target "test-interfaces"
2024-10-06 21:48:05 +02:00
Christian Breunig
eb8e689e38
Merge pull request #795 from vyos/c-po-patch-2
T6754: Ignore everyhting under packages folder via .gitignore
2024-10-06 21:47:24 +02:00
Christian Breunig
57d5afe0ff Testsuite: T6494: add new make target "test-interfaces"
We can not run the interface related tests, and non interface related
testcases in parallel to speedup the entire build process.
2024-10-06 16:16:02 +02:00
Christian Breunig
cf809b7750
T6754: Ignore everyhting under packages folder via .gitignore 2024-10-06 12:50:00 +02:00
Christian Breunig
66f12f1d26
Merge pull request #790 from vyos/c-po-patch-1
Kernel: T5887: update Linux Kernel to v6.6.53
2024-10-05 15:25:55 +02:00
Christian Breunig
39f59059f2
Merge pull request #791 from sever-sever/T6763
T6763: Delete Jenkins file
2024-10-05 08:17:27 +02:00
Christian Breunig
1e53e6451c Kernel: T5887: update Linux Kernel to v6.6.54 2024-10-05 08:15:55 +02:00
Viacheslav Hletenko
c6bffe481b T6763: Delete Jenkins file 2024-10-04 12:56:43 +00:00
Viacheslav Hletenko
c6231a51e8
Merge pull request #785 from sever-sever/T973
T973: Add build script for node_exporter package
2024-10-04 07:39:05 +03:00
Daniil Baturin
d2c98d1510
Merge pull request #788 from sever-sever/T6758
T6758: Add build package xen-guest-agent
2024-10-03 13:24:42 +01:00
Viacheslav Hletenko
1d69d490ca T6758: Add build package xen-guest-agent
The 'xen-guest-agent' could be used for XCP-NG images
2024-10-03 12:03:18 +00:00
Viacheslav Hletenko
40b0d63dcb T973: Add build script for node_exporter package 2024-10-02 16:18:07 +00:00
Viacheslav Hletenko
2b9303d0bd
Merge pull request #781 from sever-sever/T6754
T6754: Delete Jenkins build packages
2024-10-02 15:05:03 +03:00
Viacheslav Hletenko
1bc5f4de47
Merge pull request #780 from sever-sever/T6755
T6755: Change default vyos mirror URL
2024-10-02 15:04:20 +03:00
Viacheslav Hletenko
a3b515ca71 T6713: Update Realtek r8152 driver 2024-10-02 11:48:46 +00:00
Viacheslav Hletenko
2fed892f27 T6754: Delete Jenkins build packages 2024-10-02 08:02:51 +00:00
Viacheslav Hletenko
7bd5496de1 T6755: Change default vyos mirror URL 2024-10-02 07:34:49 +00:00
John Estabrook
c89609e997
Merge pull request #779 from dmbaturin/T6742-childless-leaf-nodes-rendering-libvyosconfig
docker: T6742: libvyosconfig update for childless node rendering
2024-10-01 13:50:21 -05:00
Daniil Baturin
c611f83ad1 docker: T6742: libvyosconfig update for childless node rendering 2024-10-01 19:44:49 +01:00
Viacheslav Hletenko
356ef07467
Merge pull request #778 from sever-sever/T861-mlnx
T861: Fix mellanox build by actions
2024-10-01 19:18:24 +03:00
Viacheslav Hletenko
8879bf0fdf T861: Fix mellanox build by actions 2024-10-01 15:53:10 +00:00
Christian Breunig
7670c2533b
Merge pull request #776 from sever-sever/T861
T861: Fix kernel suffix for package build by actions
2024-10-01 16:27:52 +02:00
Viacheslav Hletenko
db70544b0d T861: Fix kernel suffix for package build by actions 2024-10-01 12:45:16 +00:00
Daniil Baturin
a0deb45ac8
Merge pull request #774 from dmbaturin/T6742-childless-leaf-nodes-rendering
build-image: T6742: update vyos1x-config for childless non-leaf node rendering fixes
2024-09-30 16:19:40 +01:00
Christian Breunig
47de7d4103
Merge pull request #773 from dmbaturin/T6738-build-type-field
build: T6738: add build_type field to version data instead of the very limited and unused lts_build
2024-09-30 17:09:08 +02:00
Daniil Baturin
5788fc9075 build-image: T6742: update vyos1x-config for childless non-leaf node fixes 2024-09-27 17:01:14 +01:00
Christian Breunig
eff99f5eda
Merge pull request #772 from c-po/kernel-ephemeral-keys
T861: sign all Kernel modules with an ephemeral key
2024-09-25 20:24:47 +02:00
Christian Breunig
d235b31a09 T861: sign all Kernel modules with an ephemeral key
The shim review board (which is the secure boot base loader) recommends using
ephemeral keys when signing the Linux Kernel. This commit enables the Kernel
build system to generate a one-time ephemeral key that is used to:

* sign all build-in Kernel modules
* sign all other out-of-tree Kernel modules

The key lives in /tmp and is destroyed after the build container exits and is
named: "VyOS build time autogenerated kernel key".

In addition the Kernel now uses CONFIG_MODULE_SIG_FORCE. This now makes it
unable to load any Kernel Module to the image that is NOT signed by the
ephemeral key.
2024-09-25 20:24:21 +02:00
Daniil Baturin
e41d2f12b9 build: T6738: add build_type field to version data
instead of the very limited and unused lts_build
2024-09-25 11:50:48 +01:00
Christian Breunig
b93672d9fb T861: VyOS image build should use UTC timestamps 2024-09-22 09:31:31 +02:00
Christian Breunig
b2945a4753 Kernel: T5887: disable various unused/not needed debug options 2024-09-22 09:31:31 +02:00
Christian Breunig
88f072df3d Kernel: T5887: update Linux Kernel to v6.6.52 2024-09-22 09:31:31 +02:00
Christian Breunig
53bd06d17b T861: stripping Kernel modules would also remove module signatures
As the VyOS Linux Kernel will be compiled with CONFIG_MODULE_SIG_FORCE all
driver modules need to be cryptographically signed. This happens during build
of the Kernel and it's 3rd party modules.

Stripping the objects would remove said signature and the system will be unable
to boot b/c of CONFIG_MODULE_SIG_FORCE.
2024-09-22 09:31:31 +02:00
Daniil Baturin
fa50a5073b
Merge pull request #769 from vyos/t6729-ethtool
ethtool: T6729: upgrade to 6.10 to make use of more --json options
2024-09-21 19:51:47 +01:00
Christian Breunig
9e7dd13f52 ethtool: T6729: upgrade to 6.10 to make use of more --json options
Same as T6078 but we now wan't to make use of ethtool --json eth0 to drop out
own text based parsing of ethtool options in [1]. This is the base for moving
to a better, machine readable interface

1: https://github.com/vyos/vyos-1x/blob/e47d4fd385631236da68/python/vyos/ethtool.py#L77-L105
2024-09-21 09:27:41 +02:00
Viacheslav Hletenko
3f57943971
Merge pull request #768 from dmbaturin/artifact-filtering
build: T3664: add an option to specify artifact extensions
2024-09-20 20:40:18 +03:00
Daniil Baturin
25aeda5c4b build: T3664: add an option to specify artifact extensions
so that the manifest only contains files considered build artifacts,
and those artifacts can be automatically picked up by CI jobs and the like
2024-09-20 16:07:00 +01:00
Daniil Baturin
8274a41894
Merge pull request #767 from dmbaturin/post_build_hook_improvements
build: T3664: improve support for custom build hooks
2024-09-19 16:13:57 +01:00
Daniil Baturin
3fe55e7813 build: T3664: improve support for custom build hooks 2024-09-18 13:06:49 +01:00
Daniil Baturin
ead4cc2eba
Merge pull request #766 from dmbaturin/manifest-reuse-iso
build: T6653: fix a manifest generation error when using --reuse-iso
2024-09-18 08:29:01 +01:00
Daniil Baturin
d991d8779b build: T6653: fix a manifest generation error when using --reuse-iso 2024-09-17 22:20:33 +01:00
Simon
2a53f210ee
Merge pull request #765 from sarthurdev/tpm_luks 2024-09-17 20:04:04 +02:00
sarthurdev
983e4ffd97 build: T861: Add socat as needed by commit 7f23b57 2024-09-17 11:30:36 +02:00
sarthurdev
d60f5222c2 tpm: T4919: Fix TPM test for changes in 7f23b57 2024-09-17 11:30:36 +02:00
sarthurdev
e35345a446 tpm: T4919: Fix check for /dev/tpm0 2024-09-17 10:25:36 +02:00
Christian Breunig
be867edddc
Merge pull request #764 from c-po/secure-boot
Kernel: T861: use find over ls when probing for Kernel signing public keys
2024-09-16 23:37:05 +02:00
Christian Breunig
5aaf98f57c Kernel: T861: use find over ls when probing for Kernel signing public keys 2024-09-16 21:09:41 +02:00
Daniil Baturin
d5adf5b36c
Merge pull request #758 from HollyGurza/T6684
T6684: new Debian package repo snapshot logic
2024-09-16 16:51:14 +01:00
Viacheslav Hletenko
5255ad102a
Merge pull request #763 from c-po/secure-boot
T861: add UEFI Secure Boot support
2024-09-16 12:27:21 +03:00
khramshinr
a26ef9e170 T6684: new Debian package repo snapshot logic
patch live-build to save information about all installed packages and their source repo, including temporary packages
2024-09-16 14:23:59 +06:00
Christian Breunig
928c1f505b Docker: T861: fix warning for UID_MIN/UID_MAC out of range
Rise upper limit for UID when working in an Active Direcotry integrated
environment. This solves the warning: vyos_bld's uid 1632000007 outside of the
UID_MIN 1000 and UID_MAX 60000 range.
2024-09-14 23:14:19 +02:00
Christian Breunig
fd737172f1 T861: add UEFI Secure Boot support
This adds support for UEFI Secure Boot. It adds the missing pieces to the Linux
Kernel and enforces module signing. This results in an additional security
layer where untrusted (unsigned) Kernel modules can no longer be loaded into
the live system.

NOTE: This commit will not work unless signing keys are present. Arbitrary
keys can be generated using instructions found in:

  data/live-build-config/includes.chroot/var/lib/shim-signed/mok/README.md
2024-09-14 23:05:23 +02:00
Christian Breunig
beb3df0733 Kernel: T5887: cleanup Debian postinst files after package build 2024-09-14 20:58:44 +02:00
Christian Breunig
f523ae5cac Kernel: T5887: update Linux Kernel to v6.6.51 2024-09-14 20:58:44 +02:00
Christian Breunig
e4a2e22ced mellanox: T6231: execute build script with sudo 2024-09-14 20:58:44 +02:00
Christian Breunig
300674c144
Merge pull request #759 from sever-sever/T6674-netfilter
T6674: Fix build package netfilter dependencies
2024-09-12 19:07:03 +02:00
Viacheslav Hletenko
21370c5c7d T6674: Fix build package netfilter dependencies 2024-09-12 08:26:26 +00:00
Christian Breunig
55c17f9283
Merge pull request #755 from nvollmar/T6703
T6703: add support for amd pstate driver
2024-09-09 10:40:46 +02:00
Christian Breunig
fc3f8317e9
Merge pull request #754 from sever-sever/T6674
T6674: build-kernel: Get kernel version from the defatults
2024-09-09 10:38:59 +02:00
Christian Breunig
e86bfd7ab9 Testsuite: T861: add explicit --smoketest argument
In the past the CLI based smoketest was always executed under an else branch in
the testcase if-statement. Instead of using negative logic move all testcases
to positive logic adding an empty "catch all" else path.
2024-09-07 21:32:34 +02:00
Christian Breunig
6ef7069098 Testsuite: T861: use fix bootindex for install medium and non-volatile disks
This is required to support proper disk ejection and not reloading the disk on
system reboot when operation in BIOS mode.
2024-09-07 21:32:34 +02:00
Christian Breunig
115fb522c8 Testsuite: T861: add support to use VNC for a graphics console
To use VNC you could run "make test -- --vnc"
2024-09-07 21:32:34 +02:00
Christian Breunig
986b71af2d Testsuite: T861: use variable to define one single place for VM name 2024-09-07 21:32:34 +02:00
Christian Breunig
aa6ca5c65b Testsuite: T861: cleanup imports and use "kernel_flavor" from vyos_defaults 2024-09-07 21:32:34 +02:00
Christian Breunig
e5627bf050 Testsuite: T861: remove option to disable KVM and use soft-emulation
This code path was unused during CI runs.
2024-09-07 21:32:34 +02:00
Christian Breunig
7f23b57b19 Testsuite: T861: eject installation media CD-ROM over powercycle
When moving to UEFI and secure-boot it's better to just reboot the system
for Machine Owner Key installation, then powercycling the machine.

This commit will use `reboot now` over `poweroff` after base system installation
and boot into installed image for smoketest handling.
2024-09-07 21:32:34 +02:00
Christian Breunig
fd7d1d0d20 Kernel: T861: remove superfluous architecture from Kernel string 2024-09-07 21:31:46 +02:00
Viacheslav Hletenko
f7022914d2 T6674: Add trigger rebuild kernel if defaults.toml is changed 2024-09-06 11:30:43 +00:00
Viacheslav Hletenko
f9372b85dd T6674: Add symlink to original linux-kernel arch and patches 2024-09-06 09:43:59 +00:00
Nicolas Vollmar
01085c0512 T6703: add support for amd pstate driver 2024-09-06 10:30:11 +02:00
Viacheslav Hletenko
9055e9bae1 T6674: build-kernel: Get kernel version from the defatults
Get kernel version from the vyos-build/data/defaults.toml
for buld 'linux-kernel' and related packages
Retrun the original build-jool.py script
2024-09-06 08:15:22 +00:00
Christian Breunig
ae3e89deea
Merge pull request #753 from sever-sever/T6674-actions-keys
T6674: Add keys gpg_key_id and package_branch to rebuild packages
2024-09-06 07:23:41 +02:00
Viacheslav Hletenko
c371faf389 T6674: Add keys gpg_key_id and package_branch to rebuild packages 2024-09-05 14:42:43 +00:00
Daniil Baturin
c319ca6723
Merge pull request #751 from c-po/secure-boot-cleanup
T1416: T861: T3664: T3664: T2640: various cleanup commits
2024-09-05 15:42:15 +01:00
Viacheslav Hletenko
a6a4f08d56
Merge pull request #752 from sever-sever/T6674-actions
T6674: Add workflow to rebuild packages
2024-09-05 13:52:54 +03:00
Viacheslav Hletenko
ceb91a27a8 T6674: Add workflow to rebuild packages 2024-09-05 10:12:31 +00:00
Christian Breunig
68671774f9 T4974: remove package openvpn-dco as it has a proper dependency via vyos-1x 2024-09-05 07:14:43 +02:00
Christian Breunig
d851548515 Makefile: T2640: fix PHONY typo
Fix typo added in commit 499e8e1cbb ("Makefile: T2640: add helper to convert
ISO to OCI image to start a co…ntainer") should be PHONY over PHONE
2024-09-05 07:14:43 +02:00
Christian Breunig
3170bcaf2c build: T3664: remove unused psutil dependency 2024-09-05 07:13:08 +02:00
Christian Breunig
f53921911e telegraf: T3664: remove package dependency
Telegraf is not a full VyOS feature with a proper dependency in place via
vyos-1x package. Drop this temporary dependency.
2024-09-05 07:13:08 +02:00
Christian Breunig
3e9cda21c8 Docker: T861: fix warnings about latest ENV key=value syntax 2024-09-05 07:13:08 +02:00
Christian Breunig
388efd9f78 Makefile: T861: add possibility to pass CLI options to check-qemu-install
We can now pass any arbitrary option to the check-qemu-install script by
calling: make test -- --bar-option or make testc -- --foo-option

please note the -- which is not a typo but rather signals the end of options
and disables further option processing and passes the options down to the next
script.
2024-09-05 07:13:08 +02:00
Christian Breunig
d50707bb29 T1416: remove deprecated default-union-grub-entry 2024-09-05 07:13:08 +02:00
Christian Breunig
b82afa2bd5
Merge pull request #748 from vyos/t5887-kernel-6.6.49
Kernel: T5887: update Linux Kernel to v6.6.49
2024-09-05 00:24:01 +02:00
Christian Breunig
c635fc980e
Kernel: T5887: update Linux Kernel to v6.6.49 2024-09-04 21:23:47 +02:00
Daniil Baturin
9833897b7c
Merge pull request #745 from sever-sever/T6674
T6674: Add build-scrips for packages without Jenkins
2024-09-02 15:46:50 +01:00
Viacheslav Hletenko
cc7d0993b4 T6674: Add build-scrips for packages without Jenkins
Add build scripts for .deb packages without Jenkins.
To exclude Jenkins we need some place where we can put new builds-scripts
to run in parallel (old/new) during meantime
We will deprecate old Jenkins package builds in the future.
2024-08-29 09:30:52 +00:00
Christian Breunig
013e4d5dc9
Merge pull request #736 from c-po/artifacts-T6653
build: T6653: add build/manifest.json file
2024-08-26 20:53:33 +02:00
Christian Breunig
70bb3c5baa
Merge pull request #657 from rafaelgaspar/add-thunderbolt-net
linux-kernel: T6485: build modules for thunderbolt and thunderbolt-net
2024-08-26 17:09:21 +02:00
Christian Breunig
bca5611ef9
Merge pull request #744 from sempervictus/feature/mlx_update
T6231: update OFED version and fix build script
2024-08-26 09:53:58 +02:00
RageLtMan
21c33ff0b8 T6231: update OFED version and fix build script
Push OFED to 24.07-0.6.1.0
Replace bash syntax for conditional check with sh syntax in OFED
build script.
2024-08-24 11:03:26 -04:00
Christian Breunig
c5c6a1347c
Merge pull request #738 from bk2zsto/image_format_singular
build: T6666: singular image_format in flavor files
2024-08-22 11:47:04 +02:00
Viacheslav Hletenko
2e3f2b1981
Merge pull request #739 from vyos/kernel-6-6-47
Kernel: T5887: update Linux Kernel to v6.6.47
2024-08-21 17:25:23 +03:00
bk2zsto
16a4c4d503 build: T6666: singular image_format in flavor files 2024-08-20 09:49:04 -04:00
Rafael Antunes
2397042743
linux-kernel: T6485: build modules for thunderbolt and thunderbolt-net 2024-08-20 09:41:12 +02:00
Christian Breunig
035cf9bc12
Kernel: T5887: update Linux Kernel to v6.6.47 2024-08-20 07:10:48 +02:00
Christian Breunig
9928925b3b build: T6653: add build/manifest.json file 2024-08-19 19:38:14 +02:00
Christian Breunig
c75174bb4a
Merge pull request #733 from c-po/kernel-T5887
Kernel: T5887: update Linux Kernel to v6.6.45
2024-08-12 11:32:03 +02:00
Christian Breunig
faa6453ec8 Kernel: T5887: update Linux Kernel to v6.6.45 2024-08-11 14:46:58 +02:00
Christian Breunig
e40abc1e81
Merge pull request #729 from c-po/podman-deps
podman: T6598: add fuse-overlayfs runtime dependency
2024-08-07 09:20:33 +02:00
Nicolas Vollmar
7508677091 podman: T6635: add missing dependency on golang-github-containers-common
This is required as the dependency will add /etc/containers/policy.json
2024-08-07 07:26:05 +02:00
Christian Breunig
3f84d701fc podman: T6598: add fuse-overlayfs runtime dependency
Dependency already exists in vyos-1x for live-system, but it does not hurt to
also define the dependency here where it's needed by the filesystem layer.
2024-08-04 08:06:20 +02:00
Christian Breunig
4cec5e2d52
Merge pull request #723 from indrajitr/ddclient-rel-3.11.2
ddclient: T5792: Use Debian build from Trixie
2024-08-01 13:12:08 +02:00
Indrajit Raychaudhuri
df970a14e8 ddclient: T5792: Use Debian build from Trixie
As part of "T5792: Upgrade to ddclient 3.11.2" in commit 368b89ef056,
ddclient was built using build system from Debian Salsa and source code
from upstream GitHub.

This was subsequently modified in commit 7f7030d9281 to use both build
system and source code from Debian Salsa.

Now that Debian finally has ddclient 3.11.2 release, we can use the
release tag to build the package.
2024-07-30 21:00:22 +05:30
Christian Breunig
fd89090941
Merge pull request #724 from indrajitr/typo-fix
T6386: Fix typo in file name
2024-07-30 08:24:06 +02:00
Christian Breunig
bf3c5d3ac2
Merge pull request #722 from vyos/cpo-T5887-kernel
Kernel: T5887: update Linux Kernel to v6.6.43
2024-07-29 18:01:10 +02:00
Indrajit Raychaudhuri
80bd71410f T6386: Fix typo in file name 2024-07-29 17:21:59 +05:30
Christian Breunig
afbe969377 Kernel: T5887: update Linux Kernel to v6.6.43 2024-07-29 08:04:13 +02:00
Christian Breunig
d9b1177b78
Merge pull request #718 from c-po/podman-libs
podman: T6598: add libgpgme11 runtime dependency
2024-07-27 09:47:42 +02:00
Christian Breunig
a7d0c7b854 podman: T6598: add libgpgme11 runtime dependency 2024-07-26 21:08:40 +02:00
Christian Breunig
c00e0e1561
Merge pull request #714 from c-po/mellanox-drivers
build: T6231: include out-of-tree Mellanox driver in image
2024-07-26 20:58:25 +02:00
Christian Breunig
58025b253c build: T6231: include out-of-tree Mellanox driver in image 2024-07-25 20:31:30 +02:00
Christian Breunig
02379d3dd5
Merge pull request #665 from sempervictus/feature/mellanox_ofed_drivers
T6231: Mellanox OFED
2024-07-25 18:23:00 +02:00
Christian Breunig
dfa18329b8
Merge pull request #713 from vyos/cpo-T5887-kernel
Kernel: T5887: update Linux Kernel to v6.6.42
2024-07-25 16:05:13 +02:00
Christian Breunig
11e1620683
Kernel: T5887: update Linux Kernel to v6.6.42 2024-07-25 15:50:51 +02:00
Christian Breunig
f33a22bcf3 mellanox: T6231: we do not need to build all packages, delete all unused ones 2024-07-25 15:34:06 +02:00
Christian Breunig
404fec71d1 mellanox: T6231: add missing KERNEL_SUFFIX for module installation path
All VyOS kernel modules must live in the appropriate module directory,
example: /lib/modules/6.6.41-amd64-vyos/

In addition we do not abbreviate script options to make reading easier,
without call --help all the time.
2024-07-25 15:33:29 +02:00
Christian Breunig
0ce12e4c1a Kernel: T6231: verify mellanox driver source by SHA1 hash 2024-07-25 15:31:26 +02:00
Christian Breunig
9cbc700aee Kernel: T6231: update .gitignore for mellanox drivers 2024-07-25 15:30:57 +02:00
Christian Breunig
62ea6d9463
Merge pull request #711 from c-po/podman
podman: T6598: add search PATH for Go
2024-07-25 11:54:06 +02:00
Christian Breunig
84c5d5a3db podman: T6598: add search PATH for Go 2024-07-25 11:08:26 +02:00
Christian Breunig
abe46eca69
Merge pull request #710 from vyos/revert-704-frr-ospfd-ldp-sync
Revert "frr: T6600: apply pending upstream patch for ospfd ldp-sync"
2024-07-24 20:07:21 +02:00
Christian Breunig
c3513444a9
Merge pull request #709 from c-po/podman-T6598
podman: T6598: add custom podman build for version 4.9.5
2024-07-24 20:06:39 +02:00
Christian Breunig
dc6a23b37c
Revert "frr: T6600: apply pending upstream patch for ospfd ldp-sync" 2024-07-24 09:26:57 +02:00
Christian Breunig
a9baaaba16 podman: T6598: add custom podman build for version 4.9.5 2024-07-23 08:03:07 +02:00
Christian Breunig
67f8d13fc9
Merge pull request #703 from c-po/kernel-6-6-41
Kernel: T5887: update Linux Kernel to v6.6.41
2024-07-22 18:06:55 +02:00
Christian Breunig
d07b978408
Merge pull request #704 from c-po/frr-ospfd-ldp-sync
frr: T6600: apply pending upstream patch for ospfd ldp-sync
2024-07-22 15:26:07 +02:00
Christian Breunig
e880af90ac
Merge pull request #702 from c-po/wifi-hostapd
hostapd: T6597: update hostapd version
2024-07-22 15:21:32 +02:00
Christian Breunig
bef7b3eda9 frr: T6600: apply pending upstream patch for ospfd ldp-sync 2024-07-21 09:14:50 +02:00
Christian Breunig
12e531194d Kernel: T5887: update Linux Kernel to v6.6.41 2024-07-20 09:36:01 +02:00
Christian Breunig
2a6e687854 hostapd: T6597: update hostapd version
Using a discrete commit ID as there has not been a release in a longer time.
2024-07-20 09:29:25 +02:00
Christian Breunig
31684479b2
Merge pull request #699 from c-po/kernel-changes
Kernel changes
2024-07-17 15:07:26 +02:00
Christian Breunig
faf191ed85 T6584: Revert "T6293: add Mediatek MT7921 to defconfig"
This reverts commit dbf7e47a27537a9c298afd665244b7bc2b6cf5f6.
2024-07-17 08:47:38 +02:00
Christian Breunig
303ba89c14 Kernel: T5887: update Linux Kernel to v6.6.40 2024-07-17 08:47:27 +02:00
Christian Breunig
b7b0a582ec
Merge pull request #693 from c-po/t5887-kernel
Kernel: T5887: update Linux Kernel to v6.6.39
2024-07-13 08:57:47 +02:00
Viacheslav Hletenko
824ffc86ab
Merge pull request #694 from c-po/ddclient-build
ddclient: T5797: switch to Debian SALSA repository
2024-07-12 23:25:38 +03:00
Christian Breunig
7f7030d928 ddclient: T5797: switch to Debian SALSA repository
Commit 368b89ef05 ("ddclient: T5797: Upgrade to ddclient 3.11.2") bumped the
ddclient version by using the build system from Debian SALSA repo and the
upstream ddclient source code.

Debian now provides the same version from the SALSA repos.
2024-07-12 21:20:51 +02:00
Christian Breunig
022bb44588 Kernel: T5887: update Linux Kernel to v6.6.39 2024-07-12 14:47:09 +02:00
Christian Breunig
16753c9d3a
Merge pull request #690 from c-po/podman
container: T5867: pin specific podman version
2024-07-08 17:00:22 +02:00
Christian Breunig
41a9bc45ee
Merge pull request #689 from vyos/c-po-kernel-T5887
Kernel: T5887: update Linux Kernel to v6.6.37
2024-07-08 13:00:58 +02:00
Christian Breunig
0094dc2ecc container: T5867: pin specific podman version
As of Debian version 4.9.5+ds1-1 podman increased the dependency on
libc6 and libgpgme11t64.

  podman : Depends: libc6 (>= 2.38) but 2.36-9+deb12u7 is to be installed
           Depends: libgpgme11t64 (>= 1.4.1) but it is not going to be installed

Pin the version to a prior one that requires the old libc.
2024-07-08 10:13:08 +02:00
Christian Breunig
6b1b3e388e Kernel: T5887: update linux-firmware to 20240610 2024-07-06 09:47:29 +02:00
Christian Breunig
2e6e43ee71
Kernel: T5887: update Linux Kernel to v6.6.37 2024-07-06 09:45:52 +02:00
Christian Breunig
8ec205dd21
Merge pull request #686 from c-po/T6290-snmpd
snmp: T6290: add custom package build
2024-07-04 13:34:54 +02:00
Christian Breunig
56bc5a517c snmp: T6290: add custom package build 2024-07-04 12:50:50 +02:00
Christian Breunig
68e6f71f79
Merge pull request #685 from vyos/T6546-unused-import-permission-update
T6546: unused import check permission update
2024-07-03 21:22:25 +02:00
Vijayakumar A
34200e91d0
T6546: unused import check permission update 2024-07-04 00:42:58 +05:30
Christian Breunig
2ebf6c1dbb
Merge pull request #681 from c-po/T5887-kernel
Kernel: T5887: update Linux Kernel to v6.6.36
2024-07-03 13:52:13 +02:00
Christian Breunig
dd322145be Kernel: T5887: update Linux Kernel to v6.6.36 2024-07-02 21:46:01 +02:00
Christian Breunig
9d79c0c609
Merge pull request #680 from c-po/no-legacy
T6527: remove legacy packages
2024-07-02 18:21:56 +02:00
Christian Breunig
9883b41b67 smoketest: T6510: use vyos-configd also on "make test" 2024-06-30 07:33:00 +02:00
Christian Breunig
ff75b07681 T6527: remove legacy packages 2024-06-30 07:33:00 +02:00
Christian Breunig
057db80447
Merge pull request #667 from c-po/T6507-drop-vyos-world
T6507: remove references to vyos-world package
2024-06-27 16:44:28 +02:00
Christian Breunig
b90a73b304
Merge pull request #677 from c-po/T6510-smoketesting-docker
Docker: T6510: add missing build dependencies for vyos-configd tests
2024-06-26 21:18:03 +02:00
Christian Breunig
bf91ef9aab Docker: T6510: add missing build dependencies for vyos-configd tests 2024-06-26 20:42:57 +02:00
Christian Breunig
b82d8b6b9e
Merge pull request #675 from natali-rs1985/T6506-current
T6506: Add a linting rule for checking executable bits on scripts
2024-06-26 20:04:04 +02:00
Nataliia Solomko
974a35583c T6506: Add a linting rule for checking executable bits on scripts 2024-06-26 13:59:26 +03:00
Christian Breunig
4e9f1b4a21
Merge pull request #668 from vyos/feature/T6508-pr-check-workflow-fix
T6508: pr workflows updated for branch and target
2024-06-23 07:26:36 +02:00
Christian Breunig
453bcb75aa
Merge pull request #666 from c-po/T5887-kernel-6.6.35
Kernel: T5887: update Linux Kernel to v6.6.35
2024-06-23 07:26:12 +02:00
Vijayakumar A
4300ed36ef
T6508: pr workflows updated for branch and target 2024-06-22 15:44:40 +05:30
Christian Breunig
6e0f62a0ca T6507: remove references to vyos-world package
As we got rid of most of the old vyatta packages we can now also discontinue
vyos-world. It only served the purpose of keeping the package list during ISO
build small.
2024-06-22 09:07:05 +02:00
Christian Breunig
0c8ffe63e1 Kernel: T5887: update Linux Kernel to v6.6.35 2024-06-22 08:21:07 +02:00
RageLtMan
c0365df3ca T6231: Mellanox OFED Kernel and Userspace Packages
Build OFED drivers and userspace components against the kernel
source tree similar to Intel's NIC drivers.

OFED installers create Debian packages of their own tageting the
kernel version defined in the build invocation if DKMS is omitted.
Script builds with supporting components for VPP to permit handoff
of function to the underlying hardware as appropriate. Updating the
version is fairly trivial along with adding patching as needed to
handle kCFI and hardening measures as they are introduced.

Testing:
  Tested against GCC-built Linux Hardened kernel with the various
additions from PR 132 - sustained line-rate testing against 4x100g
links on a single machine at a hair below 200g for each LACP pair.
2024-06-21 22:45:12 -04:00
Christian Breunig
65333b4644
Merge pull request #660 from c-po/T5887-kernel-6.6.34
Kernel: T5887: update Linux Kernel to v6.6.34
2024-06-19 13:14:19 +02:00
Christian Breunig
41771586bd Kernel: T5887: update Linux Kernel to v6.6.34 2024-06-17 20:07:32 +02:00
Christian Breunig
2b3d116785
Merge pull request #653 from ZenithTecnologia/current
docker: arm: T6474: Initial support for dynamic arch toml loading
2024-06-15 22:32:13 +02:00
Christian Breunig
710351e0b5
Merge pull request #656 from MattKobayashi/current
T6484: Smoketest: Increase KVM memory limit
2024-06-14 14:11:04 +02:00
zdc
29bf1f3e3e
Merge pull request #658 from zdc/T6475-circinus
waagent: T6475: Disabled waagent build for ARM64
2024-06-14 14:30:23 +03:00
zsdc
32d4ae399d waagent: T6475: Disabled waagent build for ARM64
ARM64 build is not necessary, because waagent has one build for all platforms.
2024-06-14 14:16:17 +03:00
Matthew Kobayashi
893a90fa60
T6484: Smoketest: Increase KVM memory limit 2024-06-14 10:41:15 +10:00
zdc
1bffee8e7b
Merge pull request #655 from zdc/T6475-circinus
waagent: T6475: Fixed waagent build script permissions
2024-06-13 17:19:58 +03:00
zsdc
9bfcba889b waagent: T6475: Fixed waagent build script permissions
Added execution permissions to a build script.
2024-06-13 15:55:59 +03:00
Christian Breunig
3ebc9d2769
Merge pull request #654 from zdc/T6475-circinus
waagent: T6475: Added waagent build instructions
2024-06-13 13:19:25 +02:00
Christian Breunig
f2154b4252
Kernel: T5887: update Linux Kernel to v6.6.33 2024-06-12 21:09:26 +02:00
zsdc
f3a31a338a waagent: T6475: Added waagent build instructions
We need a version newer than in the Debian repository.

This commit adds instructions to build a version from sid.
2024-06-12 19:45:34 +03:00
Leonardo Amaral
c0af57d68c
docker: arm: T6474: Added Salt Project repo for armhf
Signed-off-by: Leonardo Amaral <contato@leonardoamaral.com.br>
2024-06-11 18:04:01 -03:00
Leonardo Amaral
946a608892
docker: arm: T6474: Initial support for dynamic arch toml loading.
Signed-off-by: Leonardo Amaral <contato@leonardoamaral.com.br>
2024-06-11 18:03:33 -03:00
Daniil Baturin
26181773ef
Merge pull request #651 from jestabro/config-default-system-version
migration: T6006: move config.boot.default to vyos-1x
2024-06-06 09:48:56 +02:00
John Estabrook
3f42cf0865 migration: T6006: move config.boot.default to vyos-1x 2024-06-05 20:00:59 -05:00
Christian Breunig
9c2ec5e3d3
Merge pull request #649 from dmbaturin/T6446-include-support-url-in-version
build: T6446: include support URL in the version data file
2024-06-05 17:44:50 +02:00
Daniil Baturin
4112d47e33 build: T6446: include support URL in the version data 2024-06-05 16:01:01 +01:00
Viacheslav Hletenko
38ff293a63
Merge pull request #648 from sever-sever/T6415
T6415: Add repo-sync
2024-06-03 10:04:25 +03:00
Viacheslav Hletenko
13e01082ec T6415: Add repo-sync 2024-06-01 12:47:13 +00:00
Christian Breunig
257496d6bf
Merge pull request #646 from dmbaturin/T6414-generic-flavor-name
build: T6414: rename the "iso" flavor to "generic"
2024-05-28 22:55:54 +02:00
Daniil Baturin
5753b4b624 build: T6414: rename the "iso" flavor to "generic" 2024-05-28 19:33:29 +01:00
Christian Breunig
501f392937
Merge pull request #645 from nvollmar/T6404
T6406: enables CONFIG_CFS_BANDWIDTH for cpu cgroup limits
2024-05-28 19:59:13 +02:00
Nicolas Vollmar
707c073f7c T6406: enables CONFIG_CFS_BANDWIDTH for cpu cgroup limits 2024-05-27 16:32:28 +02:00
Nicolas Vollmar
b809886538
Kernel: T6406: enables CONFIG_CGROUP_CPUACCT 2024-05-27 13:22:51 +02:00
Christian Breunig
39118b0185
Merge pull request #641 from c-po/vyos1x-config-update
T6404: update vyos1x-config commit reference
2024-05-27 07:31:09 +02:00
Christian Breunig
ab06c1a41a T6404: update vyos1x-config commit reference 2024-05-27 07:28:40 +02:00
Christian Breunig
cc9d1af8b7
Merge pull request #640 from vyos/feature/T6399-codeowner-correction-current
T6399: codeowners correction
2024-05-25 17:23:28 +02:00
Vijayakumar A
6dd663e550
T6399: codeowners correction 2024-05-25 20:47:44 +05:30
Christian Breunig
f3cde18f6f Kernel: T5887: update Linux Kernel to v6.6.32 2024-05-25 17:16:45 +02:00
Christian Breunig
e414f623ad
Merge pull request #638 from zdc/T6395-circinus
kernel: T6395: Enabled VFIO_NOIOMMU support
2024-05-25 08:15:54 +02:00
zsdc
db1bdb656b kernel: T6395: Enabled VFIO_NOIOMMU support
VFIO No-IOMMU support is required for environments where IOMMU is not available
but we still want to use VFIO.
2024-05-24 20:38:14 +03:00
John Estabrook
869792ab01
Merge pull request #635 from dmbaturin/T6388-ocaml-4.14.2
docker: T6388: use OCaml 4.14.2 for package builds
2024-05-23 08:23:54 -05:00
Daniil Baturin
18c90e9013 docker: T6388: use OCaml 4.14.2 for package builds 2024-05-23 14:11:43 +01:00
Vijayakumar A
e43017472c
T6386: added caller workflows and codeowners (#634) 2024-05-23 08:52:26 +02:00
Christian Breunig
fad55b3e97 Docker: add missing dependency on cmake to build accel-ppp 2024-05-19 09:20:17 +02:00
Christian Breunig
fffe00805b
Merge pull request #631 from c-po/frr-revert-local-patches
frr: T6250: T6283: revert local patches merged upstream
2024-05-19 08:26:58 +02:00
Christian Breunig
e7fad572ba Revert "frr: T6283: add pending upstream patch"
This reverts commit 1b61973b9143aa8a04cc7c857ec567fa962e4e43.

Upstream Patch merged
2024-05-19 08:25:00 +02:00
Christian Breunig
2d6b51e13a Revert "frr: T6250: add pending upstream patch"
This reverts commit 38cae97177191ad6876a4ce7afb4f53b21bf746c.

Upstream patch merged
2024-05-19 08:24:40 +02:00
Christian Breunig
d1852e392e
Merge pull request #629 from c-po/T5887-kernel
Kernel: T5887: update Linux Kernel to v6.6.31
2024-05-19 08:22:04 +02:00
Christian Breunig
20b42272c5 Kernel: T5887: update Linux Kernel to v6.6.31 2024-05-19 08:19:24 +02:00
Christian Breunig
be1d2fae78
Merge pull request #622 from zdc/T3664-circinus
build-script: T3664: Allowed all options in both config file and comm…
2024-05-17 15:37:39 +02:00
Christian Breunig
30f61940b7
Merge pull request #626 from jestabro/syntax-config-default
T6356: normalize '.., ntp, server' path syntax in config.boot.default
2024-05-17 07:13:42 +02:00
John Estabrook
04948aa983 T6356: normalize '.., ntp, server' path syntax in config.boot.default 2024-05-16 13:19:02 -05:00
Christian Breunig
1f59787ff6
Merge pull request #624 from c-po/target
hooks: T6346: set default boot target to multi-user.target
2024-05-16 07:31:27 +02:00
Christian Breunig
ca31af2cc3 hooks: T6346: set default boot target to multi-user.target 2024-05-16 07:19:59 +02:00
Christian Breunig
a33e9cfe0b
Merge pull request #614 from aidan-gibson/current
T6333 non-free-firmware to trixie
2024-05-16 07:19:17 +02:00
Aidan Gibson
7f82191abe T6333: drop reference to non-free of trixie as it's not used 2024-05-16 07:18:33 +02:00
zsdc
8186e82024 build-script: T3664: Allowed all options in both config file and command args
Moved defaults away from argparser to `defaults.py`. This unlocks the ability to
pass values that can be defined as command line arguments via a config file.

With this change logic looks like this (in order of overrides).

Pre-build config:
`data/defaults.toml` -> `build-flavors/<flavor>.toml` ->
`--<command line argument>`

Build config:
`defaults.py` -> `data/defaults.toml` -> `build-types/<type>.toml` ->
`architectures/<architecture>.toml` -> `build-flavors/<flavor>.toml` ->
`--<command line argument>`
2024-05-15 16:48:35 +03:00
Christian Breunig
eff3d4aab6
Merge pull request #620 from zdc/T3664-circinus
build-script: T3664: Add flavor and architecture to image name (rework)
2024-05-15 07:02:49 +02:00
zsdc
31b720b8f1 build-script: T3664: Add flavor and architecture to image name (rework)
The previous version did not work for all flavor types. This one should be
universal.
2024-05-14 21:00:20 +03:00
Christian Breunig
fabf5326b8
Merge pull request #582 from 0xThiebaut/suricata
suricata: T751: Disable suricata.service by default
2024-05-14 19:27:46 +02:00
Viacheslav Hletenko
fdcb5c1eca
Merge pull request #618 from sever-sever/T3420
T3420: Remove service upnp
2024-05-14 20:14:21 +03:00
Viacheslav Hletenko
618b1379b7 T3420: Remove service upnp 2024-05-14 16:59:59 +00:00
Daniil Baturin
fe1bb96c4d
Merge pull request #616 from zdc/T3664-circinus
build-script: T3664: Added flavor name to a target file name
2024-05-14 15:38:36 +02:00
zsdc
5cbd14cc0f build-script: T3664: Added flavor name to a target file name
Mark artifacts with a flavor name for better clarity.
2024-05-14 14:46:08 +03:00
Christian Breunig
3463386246
Merge pull request #612 from c-po/T6330-release-pref
build: T6330: fix indention of autogenerated release.pref.chroot
2024-05-12 08:50:53 +02:00
Christian Breunig
81be4c7f61 build: T6330: fix indention of autogenerated release.pref.chroot 2024-05-12 08:48:43 +02:00
Christian Breunig
f4d2678263
Merge pull request #609 from dmbaturin/T3664-architecture
build: T3664: include the architecture field in version data
2024-05-10 14:24:57 +02:00
Daniil Baturin
e832811c79 build: T3664: include the architecture field in version data 2024-05-09 17:43:57 +01:00
Christian Breunig
c58c5cc234
Merge pull request #605 from dmbaturin/T3664-flavor-field
build: T3664: include build flavor name in the version file
2024-05-09 16:14:49 +02:00
zdc
dc0c2c2789
Merge pull request #606 from dmbaturin/T3664-dict-merge-fixes
build: T3664: use explicit defaults argument in the dict merging function
2024-05-09 17:13:59 +03:00
Daniil Baturin
7656acd57d build: T3664: use explicit defaults argument in the dict merging function
to make it clear what is merged into what
2024-05-09 11:12:24 +01:00
Daniil Baturin
e215fad273 build: T3664: include build flavor name in the version file 2024-05-08 19:31:03 +01:00
Daniil Baturin
24a320e337
Merge pull request #603 from zdc/T3664-circinus
build-script: T3664: Added more options to the image format
2024-05-08 20:14:30 +02:00
zsdc
d144519a53 build-script: T3664: Added more options to the image format
Added two new options:
  - `image_ext`. Can be used if the file extension needs to be different than
the image format
  - `image_opts`. Required if a target format needs extra options.
2024-05-08 21:12:44 +03:00
Viacheslav Hletenko
01d79fb3eb
Merge pull request #600 from dmbaturin/T3664-mixin-path
build: T3664: fix architecture mix-in loading
2024-05-08 12:56:54 +03:00
Daniil Baturin
e68e7fb9f5 build: T3664: fix architecture mix-in loading 2024-05-08 10:47:20 +01:00
Daniil Baturin
bdde6daecd
Merge pull request #598 from sever-sever/T6311
T6311: Docker add dependency asciidoc-base for nftables
2024-05-07 12:48:44 +02:00
Viacheslav Hletenko
ac1b06cf2c T6311: Docker add dependency asciidoc-base for nftables
Add dependency `asciidob-base` for build nftables
2024-05-07 10:30:15 +00:00
Viacheslav Hletenko
dc0bcca3cf
Merge pull request #596 from dmbaturin/T3664-no-env-var
build: T3664: modify the module-level template path instead of setting an environment variable
2024-05-07 12:02:03 +03:00
Daniil Baturin
58fbf3a226 build: T3664: modify the module-level template path
instead of setting an environment variable
2024-05-06 16:19:26 +00:00
Christian Breunig
32132a13b7
Merge pull request #594 from sever-sever/T6307
T6307: Add dependency procps to build vyos-1x
2024-05-06 13:45:53 +02:00
Viacheslav Hletenko
9d07adceb7 T6307: Add dependency procps to build vyos-1x
This fixes the sysctl dependency
```
======================================================================
ERROR: test_sysctl_read (test_utils.TestVyOSUtils.test_sysctl_read)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/vyos/work/tmp/vyos-1x/src/tests/test_utils.py", line 28, in test_sysctl_read
    self.assertEqual(sysctl_read('net.ipv4.conf.lo.forwarding'), '1')
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/vyos/work/tmp/vyos-1x/python/vyos/utils/system.py", line 28, in sysctl_read
    tmp = run(['sysctl', '-nb', name], capture_output=True)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/subprocess.py", line 548, in run
    with Popen(*popenargs, **kwargs) as process:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/subprocess.py", line 1024, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.11/subprocess.py", line 1901, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'sysctl'
```
2024-05-06 11:35:38 +00:00
Christian Breunig
663255a3a6
Merge pull request #591 from c-po/frr
frr: T6283: T6250: add pending upstream patches
2024-05-04 16:39:53 +02:00
Christian Breunig
38cae97177 frr: T6250: add pending upstream patch 2024-05-04 16:17:50 +02:00
Christian Breunig
1b61973b91 frr: T6283: add pending upstream patch 2024-05-04 16:17:38 +02:00
Christian Breunig
6ff4b31c4a Docker: T6283: T6250: no need to include rtrlib and libyang in general
FRR build tracks the rtrlib and libyang version, so only one place is needed to
build to sources.
2024-05-04 16:15:54 +02:00
John Estabrook
4490b2aeec
Merge pull request #590 from jestabro/fix-clone-repo-raw-flavors
build: T3664: fix regression and bug in build script clone of vyos-1x repo
2024-05-03 18:49:03 -05:00
John Estabrook
02c340d9d7 build: T3664: fix regression and bug in clone vyos-1x repo 2024-05-03 15:07:08 -05:00
Christian Breunig
b9e60960fa
Merge pull request #584 from SaulGoodman1337/patch-2
T6293: add Mediatek MT7921 to defconfig
2024-05-03 14:18:05 +02:00
Christian Breunig
7b5a2b9b5a
Merge pull request #586 from c-po/current
container: T5867: podman depends on libgpgme11t64 from trixie
2024-05-03 14:14:49 +02:00
Christian Breunig
884de8dc76 container: T5867: podman depends on libgpgme11t64 from trixie 2024-05-03 14:13:35 +02:00
Christian Breunig
0c6a38c4ca
Merge pull request #585 from jestabro/clone-repo-raw-flavors
build: T3664: clone vyos-1x under build dir instead of as submodule
2024-05-03 06:57:11 +02:00
John Estabrook
a90809e213 build: T3664: clone vyos-1x under build dir instead of as submodule 2024-05-02 21:25:16 -05:00
Maxime THIEBAUT
845846108e suricata: T751: Disable suricata.service by default 2024-05-03 00:31:38 +02:00
Saul Goodman
dbf7e47a27
T6293: add Mediatek MT7921 to defconfig 2024-05-02 22:51:21 +02:00
Christian Breunig
5978fd1df8 Kernel: T5887: update Linux Kernel to v6.6.30 2024-05-02 20:53:33 +02:00
Christian Breunig
29f7a0c2e7
Merge pull request #579 from zdc/T6286-circinus
kernel: T6286: Enable Generic driver for Hyper-V VMBus
2024-05-01 00:26:08 +02:00
zsdc
999ccad3f8 kernel: T6286: Enable Generic driver for Hyper-V VMBus
Generic driver for Hyper-V VMBus is required in Hyper-V environments for direct
access to network devices from userspace.
2024-04-30 22:53:12 +03:00
Christian Breunig
fbe43ddcc2 ixgbe: T5619: update driver version to 5.20.3 2024-04-29 21:22:34 +02:00
Christian Breunig
2d817bb012
Merge pull request #540 from ErnyTech/current
ixgbe: T6162: Add 1000BASE-BX support
2024-04-29 21:20:16 +02:00
John Estabrook
8032e6f4e6
Merge pull request #576 from dmbaturin/T3664-fixes
build: T3664: typo fixes and small refactoring
2024-04-29 10:28:08 -05:00
Daniil Baturin
7dfd9232da build: T3664: fail the build on external command errors 2024-04-29 14:33:25 +00:00
Christian Breunig
471ac04b05
Kernel: T5887: update Linux Kernel to v6.6.29 2024-04-28 15:55:55 +02:00
Daniil Baturin
f6b0809f47 build: T3664: typo fixes and small refactoring 2024-04-25 13:17:52 +00:00
John Estabrook
53c3486d46
Merge pull request #575 from dmbaturin/T6262-circinus-boot-splash
iso: T6262: update the boot splash for 1.5/Circinus
2024-04-23 08:09:06 -05:00
Daniil Baturin
1edab4ef0b iso: T6262: update the boot splash for 1.5/Circinus
Picture courtesy of Oleg Gorobets
2024-04-23 11:31:22 +01:00
John Estabrook
c61c803233
Merge pull request #574 from dmbaturin/T3664-submodule-move
build: T3664: move the vyos-1x submodule to packages
2024-04-22 13:13:43 -05:00
Daniil Baturin
ec42af75e0 build: T3664: adjust the vyos-1x submodule path in scripts 2024-04-22 15:58:34 +00:00
Daniil Baturin
425f78ff30 build: T3664: add vyos-1x repo as packages/vyos-1x submodule 2024-04-22 15:58:29 +00:00
Daniil Baturin
131958be21 build: T3664: remove the vyos-1x submodule from the root
to prepare to move it to a subdirectory
2024-04-22 15:58:23 +00:00
Christian Breunig
d9499a16a4
Kernel: T5887: update Linux Kernel to v6.6.28 2024-04-20 10:01:51 +02:00
Christian Breunig
671bbd09b7
Merge pull request #550 from dmbaturin/T3664-raw-flavors
build: T3664: add support for building non-ISO flavors
2024-04-20 10:01:19 +02:00
Viacheslav Hletenko
67511ae3bf
Merge pull request #569 from jestabro/confirm-pass
image-tools: T6154: installer prompts to confirm password
2024-04-17 04:05:00 +03:00
John Estabrook
6fe57a7042 image-tools: T6154: installer prompts to confirm non-default password 2024-04-16 14:15:51 -05:00
Daniil Baturin
abb5b518ab build: T3664: move sudo out of the make target
to avoid permission problems
2024-04-16 19:01:00 +00:00
Daniil Baturin
3a674cfaa7
Merge pull request #568 from sever-sever/T6238
T6238: Fix title check commit message for f-string
2024-04-16 16:09:15 +02:00
Viacheslav Hletenko
2233e4687b T6238: Fix title check commit message should for f-string
Fix
```
Commit title '{title}' does not match the required format!
```
2024-04-16 08:49:54 +00:00
Daniil Baturin
008bb5063d build: T3664: correct the parameterized make rule 2024-04-15 19:05:51 +00:00
John Estabrook
867567e0ee build: T3664: initialize git vyos-1x submodule before imports
Signed-off-by: Daniil Baturin <daniil@vyos.io>
2024-04-15 18:11:43 +00:00
Daniil Baturin
29288652ea build: T3664: add a parameterized make rule for build targets
to simplify the now-rather-tricky build script invocation
2024-04-15 17:17:49 +00:00
Daniil Baturin
c535510bbc docker: T3664: add dependencies for raw disk building 2024-04-15 15:48:37 +00:00
John Estabrook
ed7bcbd0db fix path to versions file
Signed-off-by: Daniil Baturin <daniil@vyos.io>
2024-04-14 13:33:46 +00:00
Christian Breunig
eeb1a98a77
Kernel: T5887: update Linux Kernel to v6.6.27 2024-04-14 07:50:20 +02:00
Daniil Baturin
ba77dc5e04
Merge pull request #559 from Giggum/vyos-build_T5694-6123
ntp: T6080: T6123: restrict config.boot.default NTP settings to RFC1918 and fe80::/10, fc00::/7 only
2024-04-14 01:55:41 +02:00
Daniil Baturin
72c7c7ff99 build: T3664: add a sanity check for image_format
and normalize it to a list if only one format is specified
2024-04-13 20:06:53 +00:00
Daniil Baturin
c07268987c build: T3664: filter out non-TOML files from the build flavor dir
to avoid mistakenly listing auixilliary files like README
as flavors
2024-04-13 19:49:59 +00:00
John Estabrook
7fa66c77f1 Account for the working dir below the root in git invocation
Signed-off-by: Daniil Baturin <daniil@vyos.io>
2024-04-13 12:55:29 +00:00
Christian Breunig
74bd332e9b
Merge pull request #565 from c-po/T6173-fix
T6173: fix TypeError: 'NoneType' object is not iterable
2024-04-13 12:37:16 +02:00
Christian Breunig
801def2d71 T6173: fix TypeError: 'NoneType' object is not iterable
Commit 611cfc85c531 ("T6173: validate allowed characters in ISO image name")
missed the probability that version is a dict member bot empty.
2024-04-13 12:34:35 +02:00
Christian Breunig
8c6e4798d3
Merge pull request #560 from sever-sever/T6238
T6238: Check pull request title action requires the python script
2024-04-13 12:15:47 +02:00
Christian Breunig
491b42f58f
Merge pull request #561 from sever-sever/T6235-build
T6235: Git update actions-label-merge-conflict version
2024-04-13 12:14:00 +02:00
Viacheslav Hletenko
252f29949e T6235: Git update actions-label-merge-conflict version
Update `actions-label-merge-conflict` due to `Node.js 16 actions are deprecated.`
2024-04-13 08:35:42 +00:00
Viacheslav Hletenko
06d12a527e T6238: Check poll request title action requires the python script
The `check-pr-title-and-commit-messages.py` that used for the action
is not exists.
Add this script.
2024-04-13 08:18:45 +00:00
Ginko
d2d083ac57
Enhance config.boot.default NTP allow-clients for T5694 and T6123
Adds ipv4/ipv6 localhost, link-local and private address as allowed-clients to NTP service.
2024-04-11 11:29:14 -04:00
Christian Breunig
b04c480b60
Kernel: T5887: update Linux Kernel to v6.6.26 2024-04-11 16:55:17 +02:00
Christian Breunig
1a7a54730d
Merge pull request #556 from sever-sever/T6228
T6228: Cleanup of not existing systemd units
2024-04-11 16:05:48 +02:00
Christian Breunig
70239af62d
Merge pull request #555 from sever-sever/T1797-disable-service
T1797: Delete not exist disable vpp service
2024-04-11 16:05:15 +02:00
Viacheslav Hletenko
0622fa1ee5 T6228: Cleanup of not existing systemd units
Delete not existing units:
```
06:12:51  Failed to disable unit, unit logd.service does not exist.
06:12:51  Failed to disable unit, unit heartbeat.service does not exist.
```
2024-04-11 12:06:46 +00:00
Viacheslav Hletenko
daf8d44060 T1797: Delete not exist disable vpp service
The builder log:
```
06:12:53  Failed to disable unit, unit vpp.service does not exist.
```
2024-04-11 11:32:39 +00:00
Daniil Baturin
a896176ad8 build: T3664: add support for building non-ISO flavors 2024-04-10 16:36:10 +00:00
Daniil Baturin
a9cc581827
Merge pull request #553 from c-po/T6173
T6173: validate allowed characters in ISO image name
2024-04-10 16:36:46 +02:00
Christian Breunig
611cfc85c5 T6173: validate allowed characters in ISO image name
Building custom VyOS version: 1.5-asdf%-202404081841
I: Checking if packages required for VyOS image build are installed
Version contained illegal character(s), allowed: abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-+
2024-04-08 20:43:35 +02:00
Christian Breunig
f32d9fa78b
Merge pull request #551 from jestabro/default-config-choice
image-tools: T6207: update test script for prompt for boot config
2024-04-08 07:37:19 +02:00
John Estabrook
4a8bc369ef image-tools: T6207: update test script for prompt for boot config 2024-04-07 22:41:42 -05:00
Daniil Baturin
7d2c84fbb4 build: T3664: add vyos-1x as a submodule
to be able to use its functions in build scripts
2024-04-07 00:12:59 +00:00
Christian Breunig
0c12b79fd8 Debian: T6199: add pylint do list of build dependencies 2024-04-06 10:52:12 +02:00
Christian Breunig
70ff94dc37
Kernel: T5887: update Linux Kernel to v6.6.25 2024-04-05 21:24:02 +02:00
Daniil Baturin
53fea582e2
Merge pull request #549 from HollyGurza/T5124
T5124: Python3 deprecation distutils
2024-04-05 12:12:19 +02:00
khramshinr
046ddd7dfa T5124: Python3 deprecation distutils 2024-04-05 14:37:28 +08:00
Christian Breunig
28c08a784e Kernel: T5887: rebase inotify patch 2024-04-03 20:55:34 +02:00
Christian Breunig
22f3569e99 T6199: remove unneeded python3-sphinx build dependency for vyos-1x 2024-04-03 20:52:04 +02:00
Christian Breunig
9fed492e12
Kernel: T5887: update Linux Kernel to v6.6.24 2024-04-03 19:22:06 +02:00
Daniil Baturin
ff3645d4c3
Update the rolling release signing key 2024-04-02 14:19:31 +01:00
Christian Breunig
d9dd56fc53
Merge pull request #547 from c-po/dropbear
dropbear: T6195: package upgrade 2022.83-1+deb12u1
2024-04-01 16:11:35 +02:00
Christian Breunig
4417986365 dropbear: T6195: add missing libpam0g-dev build dependency 2024-04-01 16:10:17 +02:00
Christian Breunig
b17befe2e4 dropbear: T6195: package upgrade 2022.83-1+deb12u1
Fix CVE-2023-48795: (terrapin attack)

The SSH transport protocol with certain OpenSSH extensions allows remote
attackers to bypass integrity checks such that some packets are omitted (from
the extension negotiation message), and a client and server may consequently
end up with a connection for which some security features have been downgraded
or disabled, aka a Terrapin attack.
2024-04-01 16:07:06 +02:00
Christian Breunig
adab6badd7 Jenkins: remove Debian build dependency files from the workspace
No need to provide them via the package repository
2024-04-01 16:05:56 +02:00
Christian Breunig
ebfbdc852e
Merge pull request #546 from sever-sever/T4204
T4204: accel-ppp bump version 1.13.0
2024-03-30 21:56:11 +01:00
Viacheslav Hletenko
0892981df0 T4204: accel-ppp bump version 1.13.0
Update accel-pppd version to 1.13.0 release
Multiple fixes https://github.com/accel-ppp/accel-ppp/releases/tag/1.13.0
2024-03-30 18:35:51 +00:00
John Estabrook
790990c50c Docker: T6180: update commit refs for vyos1x-config/libvyosconfig 2024-03-29 18:52:30 -05:00
Christian Breunig
a5a0ca7880
Merge pull request #544 from sever-sever/T6033
T6033: bump hsflowd version v2.0.55-1 extended PCAP capabilities
2024-03-29 13:25:23 +01:00
Viacheslav Hletenko
eb05b77bac T6033: bump hsflowd version v2.0.55-1 extended PCAP capabilities
Bump the `hsflowd` version to `v2.0.55-1`
Fixed and extended PCAP capabilities for not hardware/bridge
interfaces (like GRE tunnel interface).

It fixes crashes the daemon if you use tunnel interfaces

```
hsflowd[9160]: PCAP: tun0 has no supported datalink encapsulaton
hsflowd[9160]: Received signal 11
hsflowd[9160]: SIGSEGV, faulty address is (nil)
```
The correct commit fix in 62346aa672

Updated version starts the hsflowd without issues
2024-03-29 11:42:18 +00:00
Christian Breunig
7fe033b20c
Kernel: T5887: update Linux Kernel to v6.6.23 2024-03-27 18:54:58 +01:00
Daniil Baturin
c730530d60
Merge pull request #542 from rebortg/patch-1
Github: PR Template: make related tasks optional
2024-03-25 01:27:50 +01:00
Robert Göhler
f010537d61
make related tasks optional 2024-03-24 22:09:16 +01:00
John Estabrook
e765407943
Merge pull request #541 from dmbaturin/T3664-move-image-build-scripts
build scripts: T3664: move image build scripts to a dedicated directory
2024-03-23 16:37:43 -05:00
Daniil Baturin
750819bfec build scripts: T3664: move image build scripts to a dedicated directory
to avoid a mix of image build scripts and ancilliary scripts in the same directory
2024-03-23 21:02:44 +00:00
John Estabrook
f08721e15b
Merge pull request #537 from dmbaturin/veps
build flavors: T3664: reimplement Dell VEP flavors using the new system
2024-03-23 15:15:37 -05:00
Ernesto Castellotti
a44647f098 ixgbe: T6162: Add 1000BASE-BX support
The ixgbe driver did not support the 1000BASE-BX standard so for example FS.com
SFP-GE-BX 1310/1490nm 10km transceiver received an unsupported module error even
with allow_unsupported_sfp enabled.

To solve this problem I created a patch that was accepted by Linux upstream
(1b43e0d20f)
so starting from kernel 6.9 the ixgbe driver will have 1000BASE-BX support,
however VyOS uses the out of tree driver so it is necessary to backport the patch.
2024-03-23 13:30:35 +01:00
Christian Breunig
70ac747b28 ixgbe: T6155: always enable allow_unsupported_sfp even if module_param_array is undefined
This extends an else path with the logic from commit ea7d59a4b ("ixgbe: T6155:
always enable allow_unsupported_sfp for all NICs by default")
2024-03-23 09:18:59 +01:00
Christian Breunig
311963f379 ixgbe: T6155: remove modprobe.d option file 2024-03-22 09:02:21 +01:00
Christian Breunig
b1280b3947
Merge pull request #538 from c-po/T6155-ixgbe
ixgbe: T6155: always enable allow_unsupported_sfp for all NICs by default
2024-03-22 08:54:54 +01:00
Christian Breunig
ea7d59a4bf ixgbe: T6155: always enable allow_unsupported_sfp for all NICs by default
In-tree vs. Out-Of-Tree drivers differ in the way how unsupported transceivers
are defined (uint vs array of int) for the Kernel module parameters.

This results in:

kernel: ixgbe 0000:5e:00.0: failed to initialize because an unsupported SFP+ module type was detected.
kernel: ixgbe 0000:5e:00.0: Reload the driver after installing a supported module.
kernel: ixgbe 0000:5e:00.0: removed PHC on eth6

This patch always enables unsupported SFP+ modules as wo do anyway from
the userspace but only for the first port.
2024-03-22 08:54:25 +01:00
Daniil Baturin
b35eb63db3 build flavors: T3664: reimplement Dell VEP flavors using the new system 2024-03-21 14:34:49 +00:00
John Estabrook
4e9a929051 Docker: T6149: update commit ref for vyos1x-config 2024-03-21 09:06:47 -05:00
Daniil Baturin
65b0321a8b build script: T3664: fix handling of missing or malformed flavor files 2024-03-21 13:58:48 +00:00
Christian Breunig
afd04be6c6
Merge pull request #536 from vyos/dead-scripts
chore: T671: remove unused scripts and references to them
2024-03-20 20:56:08 +01:00
Daniil Baturin
5dcb6b7711 chore: T671: remove unused scripts and references to them 2024-03-20 17:50:51 +00:00
Christian Breunig
a690a02bdc
Merge pull request #525 from Ingramz/add-rtsp-2
Kernel: T4022: add RTSP netfilter helper kernel module
2024-03-16 12:30:21 +01:00
Christian Breunig
50bdf2367f
Merge pull request #526 from sfinke0/fix-tagged-build
T6115: Fix tagged builds from detached Git HEAD
2024-03-16 09:45:23 +01:00
Christian Breunig
d4dd9bfcfa
Merge pull request #533 from dmbaturin/T1449-default-config-field-current
build: T1449: add default_config field support in flavor files to allow people to easily include a custom default config
2024-03-16 09:44:16 +01:00
Christian Breunig
7552e07320
Kernel: T5887: update Linux Kernel to v6.6.22 2024-03-16 00:22:41 +01:00
John Estabrook
3ffb72e024 Docker: T6111: update commit ref for vyos1x-config 2024-03-15 10:10:33 -05:00
sfinke0
3494ab3e0a T6115: fix failing builds from detached HEAD (e.g. git tags) 2024-03-14 13:33:58 +01:00
Daniil Baturin
11f4d356f6 build: T1449: add default_config field support in flavor files
to allow people to easily include a custom default config
2024-03-13 17:35:01 +00:00
Christian Breunig
2ef1bded20
Merge pull request #527 from dmbaturin/T6119-tomli-current
docker, build: T6119: use python3-tomli instead of python3-toml for a compliant implementation ot TOML
2024-03-12 23:30:52 +01:00
Daniil Baturin
bbddf9d0a3 docker, build: T6119: use python3-tomli instead of python3-toml
for a compliant implementation ot TOML
2024-03-12 20:59:46 +00:00
Christian Breunig
b6a56286c3 radvd: T6118: fix Jenkinsfile syntax 2024-03-12 18:36:38 +01:00
Christian Breunig
ed79a9fa93 radvd: T6118: add custom build support with recent source version 2024-03-12 16:38:39 +01:00
Indrek Ardel
404aa7e10c Kernel: T4022: add RTSP netfilter helper kernel module 2024-03-10 05:17:15 +02:00
Christian Breunig
330ee19eeb
Merge pull request #524 from sarthurdev/tpm_luks
build: T4919: Fix error due to variable not found
2024-03-08 06:59:58 +01:00
sarthurdev
d8313d2c2c build: T4919: Fix error due to variable not found 2024-03-08 01:48:05 +01:00
Christian Breunig
016809208d Kernel: T5887: forward patch linkstate-ip-device-attribute for 6.6.21 2024-03-07 22:00:54 +01:00
Daniil Baturin
089b595605
Merge pull request #297 from sarthurdev/tpm_luks
config: T4919: Add emulated TPM encryption test
2024-03-07 16:37:11 +01:00
Christian Breunig
6758b13c7e
Kernel: T5887: update Linux Kernel to v6.6.21 2024-03-07 08:46:16 +01:00
Daniil Baturin
c1fcec892b
Merge pull request #522 from c-po/flavor-updates
T6077: T3664: cleanup flavor build system and extensions for single source URL definitions
2024-03-02 10:38:56 +01:00
Christian Breunig
7b89f74c31 T6077: add bugtrcker, documentation and new URL to version file
Use single source for project related URLs that will later be consumed by the
MOTD template used.
2024-03-01 21:44:53 +01:00
Christian Breunig
195c13022d T3664: remove leading whitespaces from generated /usr/lib/os-release 2024-03-01 21:43:55 +01:00
Christian Breunig
8a49912cee T3664: remove obsolete make-version-file
Commit 3979b25dcf ("T3664: initial implementation of the build flavor system")
removed the call to make-version-file, thus we can also drop the file itself.
2024-03-01 21:39:49 +01:00
Christian Breunig
d93cb288d7 Kernel: T5887: forward patch linkstate-ip-device-attribute for 6.6.19 2024-03-01 21:08:52 +01:00
Christian Breunig
14dd3e7420
Kernel: T5887: update Linux Kernel to v6.6.19 2024-03-01 14:20:04 +01:00
Christian Breunig
931a2d2183
Merge pull request #519 from c-po/iproute2-T6078
Revert "iproute2: T6078: upgrade package to 6.6 to match Kernel"
2024-02-29 21:41:20 +01:00
Christian Breunig
c56d76986f Revert "iproute2: T6078: upgrade package to 6.6 to match Kernel"
This reverts commit 60d16e494958bfe4a43048ee3a7f63fd57600875.

We already use iproute2 6.7 from Debian Bookworm Backports
2024-02-29 21:40:01 +01:00
Christian Breunig
86c3ea30f3
Merge pull request #517 from c-po/libyang
frr: T5788: update libyang to v2.1.148
2024-02-29 21:39:01 +01:00
Christian Breunig
fb31cf3412 frr: T5788: update libyang to v2.1.148 2024-02-29 21:37:52 +01:00
Daniil Baturin
19f8068f03
Merge pull request #513 from c-po/banner
banner: T6077: implement ASCII contest winner default logo
2024-02-29 10:04:48 +01:00
Christian Breunig
7e58c12cef
Merge pull request #514 from c-po/T6078
T6078: package upgrade to v6.6 to match kernel for ethtool and iproute2
2024-02-28 21:36:21 +01:00
Christian Breunig
60d16e4949 iproute2: T6078: upgrade package to 6.6 to match Kernel 2024-02-28 21:21:57 +01:00
Christian Breunig
1ba64f600c ethtool: T6078: upgrade package to v6.6 to match Kernel 2024-02-28 21:21:41 +01:00
Christian Breunig
4110c7359d banner: T6077: implement ASCII contest winner default logo 2024-02-28 20:49:46 +01:00
Christian Breunig
f015fa1284
Merge pull request #506 from dmbaturin/T4440-oci-labels
docker: T4440: add OCI container labels
2024-02-27 18:36:36 +01:00
Daniil Baturin
8e8e8e4bc5
Merge pull request #509 from c-po/git-build
T6064: add build error if branch information from Git repository is missing
2024-02-25 10:26:54 +01:00
Christian Breunig
7c27657c79 T6064: add build error if branch information from Git repository is missing
This was discussed in slack, where a user was missing the Git commit ID in his
custom build

Reason is/was:
  git clone --single-branch -b 1.4.0-epa1 https://github.com/vyos/vyos-build

Checks out the 1.4.0-epa1 tag as HEAD and does not clone any branch information.
This results in:

>>> import git
>>> repo = git.Repo('.')
>>> repo.head.object.hexsha[:14]
'bcac2eb1f9b49c'
>>> git_branch = repo.active_branch.name
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3/dist-packages/git/repo/base.py", line 881, in active_branch
    return self.head.reference
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/git/refs/symbolic.py", line 311, in _get_reference
    raise TypeError("%s is a detached symbolic reference as it points to %r" % (self, sha))
TypeError: HEAD is a detached symbolic reference as it points to 'bcac2eb1f9b49cc15ebda65838e5465543dbb9c6'
during the build. The exception handler resets the branch and commit name to an empty string: a3e60a00b4/scripts/build-vyos-image (L281-L296)

This now adds a proper error message during build so it fails early.

(07:46) vyos_bld 08278c5a1172:/vyos/vyos-build # isobuild -test
Building custom VyOS version: 1.5-test-202402250746
I: Checking if packages required for VyOS image build are installed
build/config
Could not retrieve information from git: HEAD is a detached symbolic reference as it points to '39612f541e55bea19868f50f16d7a6c6e0034ed2'
2024-02-25 08:49:11 +01:00
Christian Breunig
a3e60a00b4
Kernel: T5887: update Linux Kernel to v6.6.18 2024-02-23 12:24:40 +01:00
sarthurdev
63a8f9d3c6 config: T4919: Add emulated TPM encryption test 2024-02-20 10:46:01 +01:00
Christian Breunig
3920af2500
Merge pull request #505 from dmbaturin/T3664-includes-chroot
build: T3664: fix the chroot includes path
2024-02-19 17:28:37 +01:00
Daniil Baturin
bca8043410 docker: T4440: add OCI container labels
Original implementation by jtcarnes
2024-02-19 14:15:52 +00:00
Daniil Baturin
a45a1b3927 build: T3664: fix the chroot includes path
to account for the current working dir
2024-02-19 13:28:07 +00:00
Christian Breunig
63369b1ac4
Kernel: T5887: update Linux Kernel to v6.6.17 2024-02-17 20:37:10 +01:00
Daniil Baturin
4d850fd1f3
Merge pull request #503 from c-po/isc-dhcp-T5965
isc-dhcp: T5965: add custom package build with dhclient patches for WWAN
2024-02-15 15:19:15 +00:00
Christian Breunig
f56b09145f isc-dhcp: T5965: add custom package build with dhclient patches for WWAN 2024-02-14 20:30:34 +01:00
Christian Breunig
22959ce1c0 Revert "frr: T6023: add pending upstream patches"
This reverts commit 798b95eb9776486aed874346869a8238383c18f6.
2024-02-12 21:38:04 +01:00
Christian Breunig
2ae9dce6d5
Merge pull request #501 from nicolas-fort/T6009-T6019
T6009-6019: fix hour decoding when timezone offset is negative; bump libnftnl and nftables version.
2024-02-12 16:51:43 +01:00
Nicolas Fort
b31f5fe934 T6009-6019: fix hour decoding when timezone offset is negative; bump libnftnl and nftables version. 2024-02-12 08:27:14 -03:00
Christian Breunig
8c5299e1cf
Merge pull request #499 from c-po/frr-t5788
frr: T5788: update to 9.1 release
2024-02-09 14:02:56 +01:00
Christian Breunig
a4ef86ab20 frr: T5788: update to 9.1 release 2024-02-09 14:00:54 +01:00
Daniil Baturin
c803de47b4
Merge pull request #327 from sskaje/T5121
T5121: Fix, make architecture and build-type loaded from build flavor and cli arguments
2024-02-09 09:44:45 +00:00
Christian Breunig
bb8e7d71df
Merge pull request #495 from Schamper/current
Kernel: T5499: update arm64 kernel configuration to v6.6.15
2024-02-09 08:26:47 +01:00
Christian Breunig
8332ae79cb
Merge pull request #497 from c-po/current
frr: T6023: add pending upstream patches
2024-02-08 23:00:18 +01:00
Christian Breunig
798b95eb97 frr: T6023: add pending upstream patches
Latest stable/9.0 FRR branch has an updated version of frr-reload.py which
is more strict on the commands to remove from the running config. This resulted
in some issues in the codebase of FRR which are addressed in the attached patches
and are pending for upstream integration.
2024-02-08 22:57:00 +01:00
Christian Breunig
8b89929fda Kernel: T5973: compile in vrf module for proper strict_mode setup 2024-02-07 17:39:04 +01:00
Viacheslav Hletenko
1227e6d796
Merge pull request #493 from sever-sever/T6014
T6014: Bump keepalived version to 2.2.8-1
2024-02-06 15:16:36 +02:00
Christian Breunig
3b906b3396
Kernel: T5887: update Linux Kernel to v6.6.16 2024-02-06 07:05:53 +01:00
Schamper
61691b4a4f Kernel: T5499: update arm64 kernel configuration to v6.6.15 2024-02-05 23:22:22 +01:00
Viacheslav Hletenko
8e2cfd6699 T6014: Bump keepalived version to 2.2.8-1 2024-02-05 09:25:52 +00:00
Christian Breunig
3b17c41885 GitHub: update PR request laballer to v5.0.0 tag 2024-02-01 16:12:58 +01:00
Christian Breunig
a49f83e2fc
Merge pull request #490 from c-po/T5887-kernel
Kernel: T5887: T5619: T5995: Update to v6.6.15, add IXGBE out-of-tree drivers and Huawei NIC driver
2024-02-01 10:07:14 +01:00
Christian Breunig
9376117efb T5619: Add out-of-tree Intel ixgbevf driver 2024-02-01 10:04:40 +01:00
Christian Breunig
ea4d2746ae Kernel: T5995: enable CONFIG_HINIC for Huawei NICs 2024-02-01 10:03:38 +01:00
Christian Breunig
36065ae874 ixgbe: T5619: remove pci_*_pcie_error_reporting() code to work with Kernel 6.6
This fixes commit 0f80a22b5 ("T5619: Add out-of-tree Intel ixgbe driver") to
work with the latest 6.6 code base.

For more information see
https://lore.kernel.org/lkml/f90837d0-810e-5772-7841-28d47c44d260@intel.com
2024-02-01 10:03:38 +01:00
Skyler Mäntysaari
738ce141fb T5619: Add out-of-tree Intel ixgbe driver 2024-02-01 10:03:38 +01:00
Christian Breunig
6c6fe821de Kernel: T5619: remove build-in Intel IXGBE driver for out-of-tree version 2024-02-01 08:49:56 +01:00
Christian Breunig
c910d5843a Kernel: T5887: update Linux Kernel to v6.6.15 2024-02-01 08:49:08 +01:00
Christian Breunig
6c6a585612
Merge pull request #488 from ishioni/T5954
T5954: Enable nvme_hwmon and drivetemp
2024-01-20 18:00:12 +01:00
Christian Breunig
24779752a7 Kernel: T5887: update Linux Kernel to v6.6.13 2024-01-20 17:59:58 +01:00
Piotr Maksymiuk
13a2c6ad63
Kernel: T5954: Enable nvme_hwmon and drivetemp 2024-01-20 17:09:00 +01:00
Christian Breunig
332e9ab04f
Merge pull request #486 from greenpsi/signature-verification-rolling-release
T5945: add minisign public key for rolling release
2024-01-18 16:31:56 +01:00
Christian Breunig
c1bfe9d939
Kernel: T5887: update Linux Kernel to v6.6.12 2024-01-17 05:21:55 +01:00
greenpsi
80fdd62c73 T5945: add minisign public key for rolling release 2024-01-14 23:55:48 +01:00
Christian Breunig
365f10340e
Kernel: T5887: update Linux Kernel to v6.6.11 2024-01-11 17:13:52 +01:00
Christian Breunig
4de9073380
Merge pull request #484 from sever-sever/T3429
T3429: Add kernel modules for Hyper-V
2024-01-10 20:34:12 +01:00
Christian Breunig
bf211f4558 Kernel: T5887: updae patch for HUNK offset 2024-01-10 20:33:13 +01:00
Christian Breunig
eb1a105587 Kernel: T5887: remove build-in QAT drivers, using out-of-tree modules 2024-01-10 20:32:42 +01:00
Viacheslav Hletenko
6f6e826977 T3429: Add kernel modules for Hyper-V
Add kernel modules for Hyper-V
Based on user reviews the following settings must be made:
```
CONFIG_CONNECTOR=y
CONFIG_HYPERV_UTILS=m
```
2024-01-10 10:39:15 +00:00
Christian Breunig
92195009af
Kernel: T5887: update Linux Kernel to v6.6.10 2024-01-07 10:37:28 +01:00
Christian Breunig
614bb6bf38
Merge pull request #482 from c-po/kernel-6.6
Kernel: T5887: update Linux Kernel to v6.6.9
2024-01-04 21:50:12 +01:00
Christian Breunig
cc04a75932 Kernel: T5887: update Linux Kernel to v6.6.9 2024-01-04 21:47:59 +01:00
Christian Breunig
db11c4bcef
Kernel: T4928: update Linux Kernel to v6.1.70 2024-01-01 23:23:19 +01:00
Christian Breunig
59e8817d2f
Merge pull request #480 from c-po/container-t5867
container: T5867: upgrade podman to 4.7.2 (Debian Trixie)
2023-12-28 16:59:59 +01:00
Christian Breunig
197feda601 container: T5867: upgrade podman to 4.7.2 (Debian Trixie) 2023-12-28 16:13:24 +01:00
Daniil Baturin
fecd206e9c
Update branch names in the README 2023-12-23 12:41:44 +00:00
Christian Breunig
e6701712e1 Kernel: T4928: rebase patches ontop of Kernel 6.1.59 to get clean applies 2023-12-22 11:13:13 +00:00
Christian Breunig
4e3fded1da Kernel: T4928: add "set -e" to kernel build script 2023-12-22 11:12:07 +00:00
Christian Breunig
cc4ee5b425 Jenkins: fix invalid base version when building ISO with custom version string 2023-12-21 20:04:32 +01:00
Christian Breunig
bd1b8cb60a
Merge pull request #474 from indrajitr/cleanup-openssh
ssh: T5841: Remove ssh-session-cleanup.service
2023-12-21 16:48:58 +01:00
Christian Breunig
1d37611142
Kernel: T4928: update Linux Kernel to v6.1.69 2023-12-21 09:09:02 +01:00
Christian Breunig
48c9b3dfd9
Merge pull request #476 from zdc/T5838-circinus
kernel: T5838: Enabled Infiniband for `mlx4` and `mlx5`
2023-12-20 11:28:17 +01:00
zsdc
0a5b69b847 kernel: T5838: Enabled Infiniband for mlx4 and mlx5
Mellanox/NVIDIA NICs require Infiniband support for proper communication with
user space, which is used by tools like DPDK.

This commit enables Infiniband with user access support and adds it to
`mlx4`/`mlx5`.
2023-12-20 12:11:04 +02:00
Viacheslav Hletenko
5f13b5c51f
Merge pull request #475 from indrajitr/kea-build-2
dhcp: T5840: Upgrade to Kea 2.4.x (fix copyright year)
2023-12-20 11:00:14 +02:00
Indrajit Raychaudhuri
5599430439 dhcp: T5840: Upgrade to Kea 2.4.x (fix copyright year) 2023-12-20 02:57:21 -06:00
Indrajit Raychaudhuri
10b5c5bc93 ssh: T5841: Remove ssh-session-cleanup.service
With libpam-systemd >= 230-2, ssh-session-cleanup.service is no longer
necessary because when `UsePAM yes` in `/etc/ssh/sshd_config` (which is
the default), SSH sessions are cleaned up automatically when ssh-server
is shutdown or the system is rebooted.
2023-12-20 01:33:34 -06:00
Christian Breunig
c65b0c0e0c
Merge pull request #473 from indrajitr/kea-build
dhcp: T5840: Upgrade to Kea 2.4.x
2023-12-20 07:44:26 +01:00
Indrajit Raychaudhuri
bf04cd8fea dhcp: T5840: Upgrade to Kea 2.4.x 2023-12-20 00:37:18 -06:00
Christian Breunig
25e0cdefbe GitHub: add state and PR message check action 2023-12-17 09:00:57 +01:00
Christian Breunig
69d7878dff
Kernel: T4928: update Linux Kernel to v6.1.68 2023-12-16 15:51:32 +01:00
Christian Breunig
fcdb64e6c4
Merge pull request #469 from zdc/T5824-circinus
initramfs: T5824: Added `openssl.cnf` to initramfs
2023-12-14 17:20:44 +01:00
zsdc
5765d67009 initramfs: T5824: Added openssl.cnf to initramfs
Without `openssl.cnf` software that uses `libssl` (for example busybox) has
issues with connections to some HTTPS servers.
2023-12-14 14:20:52 +02:00
Christian Breunig
be92cde475
Kernel: T4928: update Linux Kernel to v6.1.67 2023-12-13 08:04:18 +01:00
Christian Breunig
8ce1ae8594
Merge pull request #336 from sarthurdev/kea
dhcp: T3316: Disable Kea services
2023-12-09 21:36:00 +01:00
Christian Breunig
09f3d55117
Kernel: T4928: update Linux Kernel to v6.1.66 2023-12-08 20:37:37 +01:00
Christian Breunig
7f2d077a83
Merge pull request #468 from mcbridematt/t5809-grub-arm64-fix
T5809: live-build-config: insmod gzio for vmlinuz kernels on arm64
2023-12-08 20:37:10 +01:00
Mathew McBride
ff6d215240 T5809: live-build-config: insmod gzio for vmlinuz kernels on arm64
Without this, GRUB will report a 'invalid magic' or 'missing UEFI
stub' error when loading kernels on arm64.

This change has no effect on x86-64 systems.
2023-12-08 16:48:30 +11:00
Christian Breunig
a3d29d9110 T4426: disable arpwatch.service by default 2023-12-03 19:25:28 +01:00
Christian Breunig
835500dfa3
Kernel: T4928: update Linux Kernel to v6.1.65 2023-12-03 10:38:33 +01:00
Christian Breunig
33bb64cb37
Merge pull request #464 from indrajitr/ddclient-bump-3112
ddclient: T5797: Upgrade to ddclient 3.11.2
2023-12-01 17:36:56 +01:00
Indrajit Raychaudhuri
368b89ef05 ddclient: T5797: Upgrade to ddclient 3.11.2
Upgrade to ddclient 3.11.2 and remove the patches that are now included
in the release version.
2023-12-01 01:19:27 -06:00
Christian Breunig
e4e3701775
Kernel: T4928: update Linux Kernel to v6.1.64 2023-11-28 22:06:13 +01:00
Christian Breunig
3e836939ea
Merge pull request #462 from c-po/current
T2640: update VyOS in docker image to current version
2023-11-27 08:40:50 +01:00
Christian Breunig
499e8e1cbb Makefile: T2640: add helper to convert ISO to OCI image to start a container
Use either "make oci" or call the script manually:

$ scripts/iso-to-oci build/live-image-amd64.hybrid.iso

I: mount ISO build/live-image-amd64.hybrid.iso
I: extracting squashfs content
I: generate OCI container image vyos-1.5-strongswan-202311241125.tar
I: to import the previously generated OCI image to your local images run:

   docker import vyos-1.5-strongswan-202311241125.tar vyos:1.5-strongswan-202311241125 --change 'CMD [/sbin/init]'
2023-11-26 20:13:28 +01:00
Christian Breunig
0411ec870e T2640: update VyOS in docker image to current version 2023-11-26 20:12:24 +01:00
Christian Breunig
a0d3d87813 Docker: update README for VyOS inside container 2023-11-26 13:53:34 +01:00
Christian Breunig
360f7e2e0d
Merge pull request #457 from GurliGebis/T5754-strongswan-upgrade
T5754 strongswan upgrade
2023-11-24 20:54:26 +01:00
Bjarke Istrup Pedersen
68744626ea StrongSwan: T5754: Build changes needed 2023-11-24 17:08:22 +01:00
Christian Breunig
884b3c9a9c
Merge pull request #459 from sever-sever/T5776
T5776: kernel enable VFIO support
2023-11-23 14:31:23 +01:00
Viacheslav Hletenko
c237941c3c T5776: kernel enable VFIO support 2023-11-23 12:45:10 +00:00
Christian Breunig
148a955e8a
Kernel: T4928: update Linux Kernel to v6.1.63 2023-11-20 18:24:17 +01:00
Christian Breunig
b3d0ebaf1d Makefile: add new target qemu-live
Simply boot a live qemu version from the latest ISO build

(10:18) cpo lnx01:~/vyos-build [current] # sudo make qemu-live
if [ ! -f build/live-image-amd64.hybrid.iso ]; then
echo "Could not find build/live-image-amd64.hybrid.iso"
exit 1
fi
scripts/check-qemu-install --qemu-cmd build/live-image-amd64.hybrid.iso
 INFO - Creating Disk image testinstall-20231119-101823-4483.img
SeaBIOS (version 1.16.2-debian-1.16.2-1)
Machine UUID f48b60b2-e6ad-49ef-9d09-4245d0585e52
Booting from DVD/CD...

ISOLINUX 6.04 20200816 ETCD Copyright (C) 1994-2015 H. Peter Anvin et al
2023-11-19 10:18:49 +01:00
Bjarke Istrup Pedersen
f5d50b5203 StrongSwan: T5754: Remove patch already included in 5.9.11 2023-11-16 21:53:26 +01:00
Bjarke Istrup Pedersen
04acce88c8 StrongSwan: T5754: Update patches to match 5.9.11 2023-11-16 21:53:25 +01:00
Bjarke Istrup Pedersen
2844d38c77 StrongSwan: T5754: Update version in scripts 2023-11-16 21:53:24 +01:00
John Estabrook
80e223cc52
Merge pull request #352 from jestabro/image-tools
image: T4516: enable vyos-grub-update service
2023-11-16 13:46:27 -06:00
John Estabrook
64796852a4 image: T4516: update test script for changes in prompts/partition id 2023-11-15 15:33:42 -06:00
John Estabrook
e891c1e160 image: T4516: enable vyos-grub-update service 2023-11-15 08:15:01 -06:00
Christian Breunig
74bc5fa8b6
Merge pull request #454 from ichdasich/fix_frr_rpki_librtr_segfault
T5689: Include librtr-dev in Debian dependencies to fix RPKI crash
2023-11-15 10:03:02 +01:00
Tobias Fiebig
931571bd48
T5689: Include librtr-dev in Debian dependencies to fix RPKI crash
This fixes FRR crashing on vtysh -c "show rpki $prefix" with the vyos build when librtr-dev was not available at FRR built time, see T5689.
2023-11-15 09:47:13 +01:00
Christian Breunig
369c66ea66
Kernel: T4928: update Linux Kernel to v6.1.62 2023-11-08 21:18:28 +01:00
Christian Breunig
aeda9f37f5
Merge pull request #453 from indrajitr/ddclient-bump-311
ddclient: T5708: Upgrade to ddclient 3.11.1
2023-11-06 21:34:45 +01:00
Indrajit Raychaudhuri
f3cc9f58b6 ddclient: T5708: Upgrade to ddclient 3.11.1
- Upgrade to ddclient 3.11.1
- Remove patches that are now upstream
- Add patch for duckdns dual stack
2023-11-04 18:33:07 -05:00
Christian Breunig
74b06c308b
Merge pull request #452 from dmbaturin/iso-version-json
build script: T5711: copy version.json to the ISO image in addition to the SquashFS image
2023-11-04 08:22:51 +01:00
Daniil Baturin
f31701f1b4 build script: T5711: copy version.json to the ISO image
in addition to the SquashFS image
2023-11-03 17:14:58 +00:00
Christian Breunig
12479ef859
Kernel: T4928: update Linux Kernel to v6.1.61 2023-11-03 07:57:32 +01:00
Viacheslav Hletenko
4d8a68dea1
Merge pull request #450 from sever-sever/T5701
T5701: Fix build telegraf package
2023-11-01 11:25:15 +02:00
Viacheslav Hletenko
28c26106fa T5701: Fix build telegraf package
The sources of telegraf do not contnain 'etc/telegraf.conf'
anymore. Generate default config telegraf.conf to fix build
2023-11-01 09:22:02 +00:00
Daniil Baturin
20e7d69251
Merge pull request #448 from sever-sever/T5701
T5701: Bump telegraf to version v1.28.3
2023-10-31 17:04:34 +00:00
Viacheslav Hletenko
7322c0df64 T5701: Bump telegraf to version v1.28.3 2023-10-31 14:05:37 +00:00
Viacheslav Hletenko
749ca2bea4
Merge pull request #446 from sever-sever/T5415
T5415: upgrade libyang library to v2.1.128
2023-10-30 23:44:33 +02:00
Viacheslav Hletenko
d0649cf3b5 T5415: upgrade libyang library to v2.1.128 2023-10-30 20:41:25 +00:00
Christian Breunig
32a5fde533
Merge pull request #445 from sever-sever/T5695
T5695: Add LUA script to build FRR
2023-10-30 19:13:34 +01:00
Viacheslav Hletenko
83d4a07089 T5695: Add LUA script to build FRR
Build FRR with LUA scripts --enable-scripting option
2023-10-30 17:35:14 +00:00
Christian Breunig
c2e640db50
Merge pull request #442 from aapostoliuk/T5402-current
keepalived:T5402:Added patch with arp_ignore to 1 on IPv6 VMACs
2023-10-27 18:07:32 +02:00
aapostoliuk
86a9788070 keepalived:T5402:Added patch with arp_ignore to 1 on IPv6 VMACs
Added patch with commit '9ca8688' to pkg-keepalived 1:2.2.7-1
9ca8688c7f
Setting arp_ignore to 1 ensures that the VMAC interface does not respond
to ARP requests for IPv4 addresses not configured on the VMAC.
2023-10-27 16:02:26 +03:00
zdc
0506fc7663
Merge pull request #441 from andriiandrieiev/current
pmacct: T5663: the garbage headers issue fix
2023-10-27 15:14:04 +03:00
Andrii Andrieiev
9eea995869 pmacct: T5663: the garbage headers issue fix 2023-10-27 14:17:09 +03:00
Christian Breunig
f2614bf9dc
Kernel: T4928: update Linux Kernel to v6.1.60 2023-10-25 20:42:31 +02:00
Christian Breunig
142e877056
Kernel: T4928: update Linux Kernel to v6.1.59 2023-10-21 09:29:15 +02:00
Christian Breunig
a1402d5779
Merge pull request #436 from sever-sever/T4204
T4204: accel-ppp bump version 9669bcb99adc
2023-10-19 07:18:23 +02:00
Christian Breunig
ac77ceec26 Kernel: T4928: disable RNDIS in arm64 builds
It's the second time the maintainers talk about removing RNDIS from the Linux
Kernel. We should not bet on such a feature if not extremely necessary.

https://www.phoronix.com/news/Linux-Disabling-RNDIS-Drivers
2023-10-18 07:25:53 +02:00
Christian Breunig
ad214dba3e Revert "Kernel: T4928: enable CONFIG_USB_NET_RNDIS_HOST=m"
This reverts commit 88be901bc103d1c47adbbc874d02e8ec5cde3397.
2023-10-17 06:41:59 +02:00
Christian Breunig
aa2ab105e8 Kernel: T4928: forward port linkstate-ip-device-attribute patch 2023-10-17 06:41:42 +02:00
Christian Breunig
d361c54499
Kernel: T4928: update Linux Kernel to v6.1.58 2023-10-16 20:33:57 +02:00
Christian Breunig
f2cd80b36d
Kernel: T4928: update Linux Kernel to v6.1.57 2023-10-12 16:49:14 +02:00
Viacheslav Hletenko
3e9eefb12c T4204: accel-ppp bump version 9669bcb99adc 2023-10-11 13:59:42 +00:00
Christian Breunig
c0662f75cd
Merge pull request #434 from Apachez-/T5589
T5589: Nonstripped binaries exists in VyOS
2023-10-09 08:17:19 +02:00
Christian Breunig
168a86e1db
Kernel: T4928: update Linux Kernel to v6.1.56 2023-10-06 19:17:59 +02:00
sarthurdev
ab4b3ee64f dhcp: T3316: Disable Kea services 2023-10-05 13:53:52 +02:00
Apachez
d47424822d T5589: Nonstripped binaries exists in VyOS 2023-10-04 16:26:09 +02:00
Daniil Baturin
3639462b57
Merge pull request #426 from Apachez-/T5589
T5589: Nonstripped binaries exists in VyOS
2023-10-03 10:15:55 +01:00
Christian Breunig
888c90b525 GitHub: add labeler configuration 2023-10-03 09:41:00 +02:00
Christian Breunig
86f80f99c5 Kernel: T5626: only select required Kernel CGROUP controllers
TL;DR: systemd does not require the performance-sensitive bits of Linux control
groups enabled in the kernel. However, it does require some
non-performance-sensitive bits of the control group logic.

http://0pointer.de/blog/projects/cgroups-vs-cgroups.html

The only controllers required for VyOS to function are the memory and PID
controller required by the container feature. All other controlles can be
disabled.
2023-10-02 17:12:15 +02:00
Christian Breunig
33e78bde1a Kernel: T5626: update to latest version with Kernel defaults
With all the minor fixes applied to the Kernel, also options change - this
just syncs the previous config to the latest version with the new defaults
applied that slipped in during all those bugfixes.
2023-10-02 17:09:27 +02:00
Christian Breunig
352cfe5761
Merge pull request #432 from Apachez-/T5624
T5624: Remove /etc/debian_version from the image
2023-09-30 08:55:45 +02:00
Apachez
baac90e4de T5624: Remove /etc/debian_version from the image 2023-09-30 04:35:49 +02:00
Christian Breunig
1bd9c9990a
Merge pull request #430 from zdc/T5618-circinus
pmacct: T5618: Fixed mistake in pmacct build script
2023-09-29 07:10:37 +02:00
zsdc
59e34c855e pmacct: T5618: Fixed mistake in pmacct build script
Removed extra `not` in the `if` condition of the build script which inverts the
return code.
2023-09-28 22:44:49 +03:00
Christian Breunig
3c313a62e7 pmacct: T5618: install build time dependencies 2023-09-28 21:03:09 +02:00
Christian Breunig
ad85335c80
Merge pull request #428 from zdc/T5618-circinus
pmacct: T5618: Added build rules for custom pmacct package
2023-09-28 20:51:49 +02:00
zsdc
d5f6445381 pmacct: T5618: Added build rules for custom pmacct package
The current version of pmacct in Debian (`1.7.7-1`) contains the bug which leads
to a crash when IMT is enabled and ICMP traffic is forwarded through a router.

This commit adds our build with an extra patch, which solves the problem:
73af9545ea
2023-09-28 19:48:06 +03:00
Apachez
51cf19f135 T5589: Nonstripped binaries exists in VyOS 2023-09-26 23:11:04 +02:00
Apachez
b6d5529ceb T5589: Nonstripped binaries exists in VyOS 2023-09-26 22:43:29 +02:00
Christian Breunig
fe9d19e71f Kernel: extend .gitignore for new Intel and Realtek drivers 2023-09-26 19:27:39 +02:00
Christian Breunig
4cc2bbddb7 vpp: T1797: rmeove build instructions - moved to addon package 2023-09-26 19:27:39 +02:00
Christian Breunig
a8ba4d8be9 owamp: T4222: pin package to specific git tag
It's not a good idea to select master here as this might lead to unwanted code
slipping in. Latest master branch (v5.0) is currently unbuildable with the
build instructions used.
2023-09-26 19:27:39 +02:00
Christian Breunig
cd1c932fb7
Kernel: T4928: update Linux Kernel to v6.1.55 2023-09-24 07:47:44 +02:00
Christian Breunig
ab114f9533
Merge pull request #418 from Apachez-/T5604
T5604: List of debian archives is out of date (non-free-firmware is missing)
2023-09-23 12:45:57 +02:00
John Estabrook
83cdd40b15
Merge pull request #419 from jestabro/disk-by-id
smoketest: T5607: adjust for non-deterministic scsi device probing
2023-09-22 08:59:36 -05:00
John Estabrook
ecd3727d63 smoketest: T5607: adjust for non-deterministic scsi device probing 2023-09-20 15:22:32 -05:00
Apachez
e68631947a T5604: List of debian archives is out of date (non-free-firmware is missing) 2023-09-20 15:46:31 +02:00
Christian Breunig
dd9b5886f3
Kernel: T4928: update Linux Kernel to v6.1.54 2023-09-19 20:59:40 +02:00
Christian Breunig
27a6527011
Merge pull request #416 from sever-sever/T5588
T5588: Add kernel module CONFIG_NF_CONNTRACK_BRIDGE
2023-09-19 20:58:54 +02:00
Viacheslav Hletenko
72f55aaac8 T5125: bump hsflowd version to v2.0.52-1 2023-09-19 11:11:00 +00:00
Viacheslav Hletenko
97ddcaec1f T5588: Add kernel module CONFIG_NF_CONNTRACK_BRIDGE 2023-09-19 10:58:24 +00:00
Christian Breunig
24c918b646
Merge pull request #402 from indrajitr/ddclient-cache-fix
ddclient: T5573: Patch ddclient to fix caching issues with new providers
2023-09-17 19:35:25 +02:00
Christian Breunig
d51520f3c7 salt: T5592: upgrade package to 3005 2023-09-17 19:31:07 +02:00
Christian Breunig
d7828d2c7d
Merge pull request #414 from Apachez-/T5511
T5511: Cleanup of unused directories (and files) in order to shrink image-size
2023-09-17 10:44:09 +02:00
Apachez
e433bd4f43 T5511: Cleanup of unused directories (and files) in order to shrink image-size 2023-09-16 10:18:52 +02:00
Christian Breunig
2ca594db0d T5511: drop empty hooks
This is a roundup commit to 0be277647 ("T5511: Cleanup of unused directories
(and files) in order to shrink image-size") that dropy empty/commented out
live-build hook scripts.
2023-09-16 08:04:26 +02:00
Christian Breunig
67339c8c39
Merge pull request #413 from Apachez-/T5511
T5511: Cleanup of unused directories (and files) in order to shrink image-size
2023-09-16 08:02:32 +02:00
Apachez
0be277647d T5511: Cleanup of unused directories (and files) in order to shrink image-size 2023-09-16 05:09:56 +02:00
Christian Breunig
5f35b33543 GitHub: add branch label action 2023-09-15 20:27:17 +02:00
Christian Breunig
d7e4fbece7 Jenkins: nighly builds now run on GitHub including smoketests 2023-09-15 20:21:55 +02:00
Christian Breunig
419c71c0b6
Merge pull request #408 from sarthurdev/test_match
smoketest: live: T5568: Option to specify smoketests to run, serial boot option to live ISO
2023-09-15 17:30:40 +02:00
zdc
6a88f67116
Merge pull request #411 from sever-sever/T5261-build
T5261: aws-gwlbtun fix to build arm64 package
2023-09-15 12:40:59 +03:00
Viacheslav Hletenko
e65decc671 T5261: aws-gwlbtun fix to build arm64 package 2023-09-15 09:38:09 +00:00
zdc
411d7bacac
Merge pull request #410 from sever-sever/T5261-build
T5261: aws-gwlbtun prepare_package must be before build package
2023-09-15 12:18:28 +03:00
Viacheslav Hletenko
ffb07edf0e T5261: aws-gwlbtun prepare_package must be before build package
Fix build `aws-gwlbtun` package
Prepore must be before build
2023-09-15 09:15:02 +00:00
Viacheslav Hletenko
68256f4c41
Merge pull request #409 from sever-sever/T5261-build
T5261: Fix build aws-gwlbtun create the file before writing content
2023-09-15 11:42:58 +03:00
Viacheslav Hletenko
494e01ec4f T5261: Fix build aws-gwlbtun create file before write content 2023-09-15 08:32:16 +00:00
sarthurdev
d9e93d7353 live: T5568: Add serial boot option to live ISO 2023-09-14 22:04:26 +02:00
sarthurdev
4727dc1756 smoketest: Allow selection of smoketests to run
Example:
`make test MATCH="interfaces|policy"` will only run interfaces and policy tests
2023-09-14 20:04:54 +02:00
Christian Breunig
e7c29ed7be
Merge pull request #407 from Apachez-/T5511
T5511: Cleanup of unused directories (and files) in order to shrink image-size
2023-09-14 19:05:57 +02:00
Apachez
fcee06ba7f T5511: Cleanup of unused directories (and files) in order to shrink image-size 2023-09-14 13:53:09 +02:00
Daniil Baturin
219c87ee02
Merge pull request #406 from Apachez-/T5511
T5511: Cleanup of unused directories (and files) in order to shrink image-size
2023-09-14 09:19:04 +01:00
Christian Breunig
6448a2b1f6
Kernel: T4928: update Linux Kernel to v6.1.53 2023-09-14 08:01:14 +02:00
Christian Breunig
5152117ccb GitHub: fix Mergify repo name 2023-09-14 08:00:21 +02:00
Apachez
82de210a58 T5511: Cleanup of unused directories (and files) in order to shrink image-size 2023-09-13 22:53:31 +02:00
Christian Breunig
c2fca63ebe GitHub: add Mergify backport helper 2023-09-13 15:32:02 +02:00
zdc
1f14b2d766
Merge pull request #404 from sever-sever/T5261-build
T5261: Fix build aws-gwlbtun for binary path
2023-09-13 16:31:11 +03:00
Viacheslav Hletenko
23cd4575dc T5261: Fix build aws-gwlbtun for binary path 2023-09-13 13:20:25 +00:00
Viacheslav Hletenko
8aa1ae0b54
Merge pull request #403 from sever-sever/T5261-build
T5261: Improve build for aws-gwlbtun package
2023-09-13 15:56:38 +03:00
Viacheslav Hletenko
b933ff4493 T5261: Improve build for aws-gwlbtun package 2023-09-13 12:50:11 +00:00
Christian Breunig
d280a89ab9
Merge pull request #401 from c-po/t5239-frr
frr: T5239: remove daemons.conf generated by chroot hook
2023-09-13 13:42:12 +02:00
Indrajit Raychaudhuri
3d9c130ed2 ddclient: T5573: Patch ddclient to fix caching issues with new providers
For details see:
    - https://github.com/ddclient/ddclient/issues/544
    - https://github.com/rrthomas/ddclient/pull/10
2023-09-12 20:38:20 -05:00
Viacheslav Hletenko
31307dea67
Merge pull request #400 from sever-sever/T5261
T5261: build aws-gwlbtun replace build sh to build python Jenkins
2023-09-12 10:43:35 +03:00
Christian Breunig
a9a1ca3cbb frr: T5239: remove daemons.conf generated by chroot hook
Daemon configuration is now generated during boot via vyos-1x repo.

See https://github.com/vyos/vyos-1x/pull/2245
2023-09-11 22:04:20 +02:00
Viacheslav Hletenko
21e4aa010a T5261: build aws-gwlbtun replace build sh to build python Jenkins 2023-09-11 13:49:35 +00:00
Christian Breunig
0f75e12dd1 frr: fix build script to only rely on annotated tags
A recent added FRR tag base_fuzz_20230907 made the builds fail. Change "git
describe" command to only account annotated release tags.
2023-09-11 07:23:54 +02:00
Christian Breunig
704e472477
Merge pull request #395 from Apachez-/T5562
T5562: Fix smp-syntax for qemu-system-x86_64
2023-09-09 17:19:59 +02:00
Christian Breunig
3c1e27b8b6
Merge pull request #397 from sever-sever/T5261-build
T5261: Rewrite build aws-gwlbtun to python3 and add arch arm64
2023-09-09 17:19:03 +02:00
Viacheslav Hletenko
4bac19fcfd T5261: Rewrite build aws-gwlbtun to python3 and add arch arm64
Rewrite build package `aws-gwlbtun` to python3
Add build package for architecrute `arm64`
2023-09-09 13:26:04 +00:00
Apachez
fa1462aa6d T5562: Fix -smp syntax for qemu-system-x86_64 2023-09-09 12:24:55 +02:00
Christian Breunig
a863fe0b03 Testsuite: fix qemu SMP configuration 2023-09-09 07:33:44 +02:00
Christian Breunig
b0c50e6646
Merge pull request #394 from andriiandrieiev/current
T5560: Update the version of the rolling release
2023-09-08 11:25:20 +02:00
Andrii Andrieiev
5124d88862 T5560: Update the version of the rolling release. 2023-09-08 11:45:29 +03:00
Christian Breunig
343a33108b
Kernel: T4928: update Linux Kernel to v6.1.52 2023-09-07 07:10:54 +02:00
Christian Breunig
7b219e4b59
Jenkins: bump version to 1.5 2023-09-06 20:26:37 +02:00
sskaje
8fcd043483 T5121: Remove code of T5120 2023-03-30 11:58:45 +08:00
sskaje
4995bcb5b8 T5121: Fix, make architecture and build-type loaded from build flavor and cli arguments 2023-03-29 19:05:30 +08:00
383 changed files with 15889 additions and 13391 deletions

View File

@ -1,7 +1,7 @@
<!-- All PR should follow this template to allow a clean and transparent review -->
<!-- Text placed between these delimiters is considered a comment and is not rendered -->
## Change Summary
## Change summary
<!--- Provide a general summary of your changes in the Title above -->
## Types of changes
@ -18,24 +18,11 @@ the box, please use [x]
- [ ] Other (please describe):
## Related Task(s)
<!-- All submitted PRs must be linked to a Task on Phabricator. -->
* https://vyos.dev/Txxxx
<!-- optional: Link to related other tasks on Phabricator. -->
<!-- * https://vyos.dev/Txxxx -->
## Component(s) name
<!-- A rather incomplete list of components: ethernet, wireguard, bgp, mpls, ldp, l2tp, dhcp ... -->
## Proposed changes
<!--- Describe your changes in detail -->
## How to test
<!---
Please describe in detail how you tested your changes. Include details of your testing
environment, and the tests you ran. When pasting configs, logs, shell output, backtraces,
and other large chunks of text, surround this text with triple backtics
```
like this
```
-->
## Related PR(s)
<!-- Link here any PRs in other repositories that are required by this PR -->
## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->

10
.github/mergify.yml vendored Normal file
View File

@ -0,0 +1,10 @@
pull_request_rules:
- name: Label conflicting pull requests
description: Add a label to a pull request with conflict to spot it easily
conditions:
- conflict
- '-closed'
actions:
label:
toggle:
- conflict

View File

@ -1,3 +0,0 @@
---
"**/*":
- team: reviewers

18
.github/workflows/add-pr-labels.yml vendored Normal file
View File

@ -0,0 +1,18 @@
---
name: Add pull request labels
on:
pull_request_target:
branches:
- current
- equuleus
- sagitta
permissions:
pull-requests: write
contents: read
jobs:
add-pr-label:
uses: vyos/.github/.github/workflows/add-pr-labels.yml@current
secrets: inherit

View File

@ -3,25 +3,12 @@ on:
pull_request_target:
types: [opened, reopened, ready_for_review, locked]
permissions:
pull-requests: write
contents: read
jobs:
# https://github.com/marketplace/actions/auto-author-assign
assign-author:
runs-on: ubuntu-latest
steps:
- name: "Assign Author to PR"
uses: toshimaru/auto-author-assign@v1.3.5
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
# https://github.com/shufo/auto-assign-reviewer-by-files
assign_reviewer:
runs-on: ubuntu-latest
steps:
- name: Request review based on files changes and/or groups the author belongs to
uses: shufo/auto-assign-reviewer-by-files@v1.1.4
with:
token: ${{ secrets.PR_ACTION_ASSIGN_REVIEWERS }}
config: .github/reviewers.yml
uses: vyos/.github/.github/workflows/assign-author.yml@current
secrets: inherit

View File

@ -0,0 +1,15 @@
name: "PR Conflicts checker"
on:
pull_request_target:
types: [synchronize]
permissions:
pull-requests: write
contents: read
jobs:
check-pr-conflict:
if: github.repository_owner == 'vyos'
uses: vyos/.github/.github/workflows/check-pr-merge-conflict.yml@current
secrets: inherit

18
.github/workflows/check-pr-message.yml vendored Normal file
View File

@ -0,0 +1,18 @@
---
name: Check pull request message format
on:
pull_request_target:
branches:
- current
- sagitta
- equuleus
permissions:
pull-requests: write
contents: read
jobs:
check-pr-title:
uses: vyos/.github/.github/workflows/check-pr-message.yml@current
secrets: inherit

14
.github/workflows/check-stale.yml vendored Normal file
View File

@ -0,0 +1,14 @@
name: "Issue and PR stale management"
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
permissions:
pull-requests: write
contents: read
jobs:
stale:
uses: vyos/.github/.github/workflows/check-stale.yml@current
secrets: inherit

View File

@ -0,0 +1,17 @@
name: Check for unused imports using Pylint
on:
pull_request:
branches:
- current
- sagitta
- equuleus
workflow_dispatch:
permissions:
pull-requests: write
contents: read
jobs:
check-unused-imports:
uses: vyos/.github/.github/workflows/check-unused-imports.yml@current
secrets: inherit

18
.github/workflows/cla-check.yml vendored Normal file
View File

@ -0,0 +1,18 @@
name: "CLA Check"
permissions:
actions: write
contents: read
pull-requests: write
statuses: write
on:
pull_request_target:
types: [opened, synchronize, closed]
issue_comment:
types: [created]
jobs:
call-cla-assistant:
uses: vyos/vyos-cla-signatures/.github/workflows/cla-reusable.yml@current
secrets: inherit

23
.github/workflows/codeql.yml vendored Normal file
View File

@ -0,0 +1,23 @@
name: "Perform CodeQL Analysis"
on:
push:
branches: [ "current", "sagitta", "equuleus" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "current" ]
schedule:
- cron: '22 10 * * 0'
workflow_dispatch:
permissions:
actions: read
contents: read
security-events: write
jobs:
codeql-analysis-call:
uses: vyos/.github/.github/workflows/codeql-analysis.yml@current
secrets: inherit
with:
languages: "['python']"

12
.github/workflows/label-backport.yml vendored Normal file
View File

@ -0,0 +1,12 @@
name: Mergifyio backport
on: [issue_comment]
permissions:
pull-requests: write
contents: read
jobs:
mergifyio-backport:
uses: vyos/.github/.github/workflows/label-backport.yml@current
secrets: inherit

19
.github/workflows/linit-j2.yml vendored Normal file
View File

@ -0,0 +1,19 @@
---
name: J2 Lint
on:
pull_request:
branches:
- current
- sagitta
- equuleus
workflow_dispatch:
permissions:
pull-requests: write
contents: read
jobs:
j2lint:
uses: vyos/.github/.github/workflows/lint-j2.yml@current
secrets: inherit

View File

@ -1,18 +0,0 @@
name: "PR Conflicts checker"
on:
pull_request_target:
types: [synchronize]
jobs:
Conflict_Check:
name: 'Check PR status: conflicts and resolution'
runs-on: ubuntu-22.04
steps:
- name: check if PRs are dirty
uses: eps1lon/actions-label-merge-conflict@releases/2.x
with:
dirtyLabel: "state: conflict"
removeOnDirtyLabel: "state: conflict resolved"
repoToken: "${{ secrets.GITHUB_TOKEN }}"
commentOnDirty: "This pull request has conflicts, please resolve those before we can evaluate the pull request."
commentOnClean: "Conflicts have been resolved. A maintainer will review the pull request shortly."

View File

@ -0,0 +1,35 @@
name: PR Mirror and Repo Sync
on:
pull_request_target:
types: [closed]
branches: [current]
workflow_dispatch:
inputs:
sync_branch:
description: 'Branch to mirror'
required: true
default: 'current'
type: choice
options:
- current
permissions:
pull-requests: write
contents: write
issues: write
jobs:
call-pr-mirror-repo-sync:
if: |
github.repository_owner == 'vyos' &&
(
github.event_name == 'workflow_dispatch' ||
(github.event_name == 'pull_request_target' && github.event.pull_request.merged == true)
)
uses: vyos/.github/.github/workflows/pr-mirror-repo-sync.yml@current
with:
sync_branch: ${{ github.event.inputs.sync_branch || 'current' }}
secrets:
PAT: ${{ secrets.PAT }}
REMOTE_OWNER: ${{ secrets.REMOTE_OWNER }}

View File

@ -0,0 +1,47 @@
name: Trigger Docker image build
on:
pull_request_target:
types:
- closed
branches:
- current
permissions:
packages: write
contents: read
attestations: write
id-token: write
pull-requests: read
jobs:
track-changes:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
env:
REF: main # Used for curl to trigger image build
steps:
- name: Checkout vyos/vyos-build repo
uses: actions/checkout@v4
with:
ref: ${{ github.ref_name }}
- uses: dorny/paths-filter@v3
id: changes
with:
filters: |
docker-dir:
- 'docker/**'
- name: "Trigger Docker image build for ${{ github.ref_name }}"
if: ${{ steps.changes.outputs.docker-dir == 'true' }}
run: |
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer ${{ secrets.PAT }}" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/${{ secrets.REMOTE_OWNER }}/${{ secrets.REMOTE_REUSE_REPO }}/actions/workflows/build-docker-image.yml/dispatches \
-d '{"ref": "${{ env.REF }}", "inputs":{"branch":"${{ github.ref_name }}", "environment":"production"}}'

View File

@ -0,0 +1,264 @@
name: Trigger to build package
on:
push:
branches:
- current
jobs:
changes:
runs-on: ubuntu-latest
env:
REF: main # Used for curl to trigger build package
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.ref_name }}
- uses: dorny/paths-filter@v3
id: changes
with:
base: ${{ github.ref_name }}
filters: |
amazon-cloudwatch-agent:
- 'scripts/package-build/amazon-cloudwatch-agent/**'
amazon-ssm-agent:
- 'scripts/package-build/amazon-ssm-agent/**'
aws-gwlbtun:
- 'scripts/package-build/aws-gwlbtun/**'
blackbox_exporter:
- 'scripts/package-build/blackbox_exporter/**'
bash-completion:
- 'scripts/package-build/bash-completion/**'
ddclient:
- 'scripts/package-build/ddclient/**'
dropbear:
- 'scripts/package-build/dropbear/**'
ethtool:
- 'scripts/package-build/ethtool/**'
frr:
- 'scripts/package-build/frr/**'
frr_exporter:
- 'scripts/package-build/frr_exporter/**'
hostap:
- 'scripts/package-build/hostap/**'
hsflowd:
- 'scripts/package-build/hsflowd/**'
isc-dhcp:
- 'scripts/package-build/isc-dhcp/**'
keepalived:
- 'scripts/package-build/keepalived/**'
libnss-mapuser:
- 'scripts/package-build/libnss-mapuser/**'
libpam-radius-auth:
- 'scripts/package-build/libpam-radius-auth/**'
linux-kernel:
- 'data/defaults.toml'
- 'scripts/package-build/linux-kernel/**'
ndppd:
- 'scripts/package-build/ndppd/**'
net-snmp:
- 'scripts/package-build/net-snmp/**'
netfilter:
- 'scripts/package-build/netfilter/**'
node_exporter:
- 'scripts/package-build/node_exporter/**'
openvpn-otp:
- 'scripts/package-build/openvpn-otp/**'
owamp:
- 'scripts/package-build/owamp/**'
pam_tacplus:
- 'scripts/package-build/pam_tacplus/**'
podman:
- 'scripts/package-build/podman/**'
pyhumps:
- 'scripts/package-build/pyhumps/**'
radvd:
- 'scripts/package-build/radvd/**'
strongswan:
- 'scripts/package-build/strongswan/**'
tacacs:
- 'scripts/package-build/tacacs/**'
telegraf:
- 'scripts/package-build/telegraf/**'
udp-broadcast-relay:
- 'scripts/package-build/udp-broadcast-relay/**'
unionfs-fuse:
- 'scripts/package-build/unionfs-fuse/**'
vpp:
- 'scripts/package-build/vpp/**'
waagent:
- 'scripts/package-build/waagent/**'
wide-dhcpv6:
- 'scripts/package-build/wide-dhcpv6/**'
xen-guest-agent:
- 'scripts/package-build/xen-guest-agent/**'
zerotier-one:
- 'scripts/package-build/zerotier-one/**'
- name: Trigger builds for changed packages
run: |
set -eux
function trigger_build() {
PACKAGE_NAME=$1
echo "${PACKAGE_NAME} change detected!"
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer ${{ secrets.PAT }}" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/${{ secrets.REMOTE_OWNER }}/${{ secrets.REMOTE_REUSE_REPO }}/actions/workflows/build-package.yml/dispatches \
-d '{"ref": "${{ env.REF }}", "inputs":{"package_name":"'"$PACKAGE_NAME"'", "gpg_key_id": "${{ secrets.GPG_KEY_ID }}", "package_branch": "${{ github.ref_name }}", "pat": "${{ secrets.PAT }}"}}'
}
# Trigger builds based on detected changes
if [ "${{ steps.changes.outputs.amazon-cloudwatch-agent }}" == "true" ]; then
trigger_build "amazon-cloudwatch-agent"
fi
if [ "${{ steps.changes.outputs.amazon-ssm-agent }}" == "true" ]; then
trigger_build "amazon-ssm-agent"
fi
if [ "${{ steps.changes.outputs.aws-gwlbtun }}" == "true" ]; then
trigger_build "aws-gwlbtun"
fi
if [ "${{ steps.changes.outputs.bash-completion }}" == "true" ]; then
trigger_build "bash-completion"
fi
if [ "${{ steps.changes.outputs.blackbox_exporter }}" == "true" ]; then
trigger_build "blackbox_exporter"
fi
if [ "${{ steps.changes.outputs.ddclient }}" == "true" ]; then
trigger_build "ddclient"
fi
if [ "${{ steps.changes.outputs.dropbear }}" == "true" ]; then
trigger_build "dropbear"
fi
if [ "${{ steps.changes.outputs.ethtool }}" == "true" ]; then
trigger_build "ethtool"
fi
if [ "${{ steps.changes.outputs.frr }}" == "true" ]; then
trigger_build "frr"
fi
if [ "${{ steps.changes.outputs.frr_exporter }}" == "true" ]; then
trigger_build "frr_exporter"
fi
if [ "${{ steps.changes.outputs.hostap }}" == "true" ]; then
trigger_build "hostap"
fi
if [ "${{ steps.changes.outputs.hsflowd }}" == "true" ]; then
trigger_build "hsflowd"
fi
if [ "${{ steps.changes.outputs.isc-dhcp }}" == "true" ]; then
trigger_build "isc-dhcp"
fi
if [ "${{ steps.changes.outputs.keepalived }}" == "true" ]; then
trigger_build "keepalived"
fi
if [ "${{ steps.changes.outputs.libnss-mapuser }}" == "true" ]; then
trigger_build "libnss-mapuser"
fi
if [ "${{ steps.changes.outputs.libpam-radius-auth }}" == "true" ]; then
trigger_build "libpam-radius-auth"
fi
if [ "${{ steps.changes.outputs.linux-kernel }}" == "true" ]; then
trigger_build "linux-kernel"
fi
if [ "${{ steps.changes.outputs.ndppd }}" == "true" ]; then
trigger_build "ndppd"
fi
if [ "${{ steps.changes.outputs.net-snmp }}" == "true" ]; then
trigger_build "net-snmp"
fi
if [ "${{ steps.changes.outputs.netfilter }}" == "true" ]; then
trigger_build "netfilter"
fi
if [ "${{ steps.changes.outputs.node_exporter }}" == "true" ]; then
trigger_build "node_exporter"
fi
if [ "${{ steps.changes.outputs.openvpn-otp }}" == "true" ]; then
trigger_build "openvpn-otp"
fi
if [ "${{ steps.changes.outputs.owamp }}" == "true" ]; then
trigger_build "owamp"
fi
if [ "${{ steps.changes.outputs.pam_tacplus }}" == "true" ]; then
trigger_build "pam_tacplus"
fi
if [ "${{ steps.changes.outputs.podman }}" == "true" ]; then
trigger_build "podman"
fi
if [ "${{ steps.changes.outputs.pyhumps }}" == "true" ]; then
trigger_build "pyhumps"
fi
if [ "${{ steps.changes.outputs.radvd }}" == "true" ]; then
trigger_build "radvd"
fi
if [ "${{ steps.changes.outputs.strongswan }}" == "true" ]; then
trigger_build "strongswan"
fi
if [ "${{ steps.changes.outputs.tacacs }}" == "true" ]; then
trigger_build "tacacs"
fi
if [ "${{ steps.changes.outputs.telegraf }}" == "true" ]; then
trigger_build "telegraf"
fi
if [ "${{ steps.changes.outputs.udp-broadcast-relay }}" == "true" ]; then
trigger_build "udp-broadcast-relay"
fi
if [ "${{ steps.changes.outputs.unionfs-fuse }}" == "true" ]; then
trigger_build "unionfs-fuse"
fi
if [ "${{ steps.changes.outputs.vpp }}" == "true" ]; then
trigger_build "vpp"
fi
if [ "${{ steps.changes.outputs.waagent }}" == "true" ]; then
trigger_build "waagent"
fi
if [ "${{ steps.changes.outputs.wide-dhcpv6 }}" == "true" ]; then
trigger_build "ethtool"
fi
if [ "${{ steps.changes.outputs.xen-guest-agent }}" == "true" ]; then
trigger_build "xen-guest-agent"
fi
if [ "${{ steps.changes.outputs.zerotier-one }}" == "true" ]; then
trigger_build "zerotier-one"
fi

10
.gitignore vendored
View File

@ -1,9 +1,15 @@
.build/config
build/*
config/*
*.pyc
packer_build/*
packer_cache/*
key/*
packages/*
!packages/*/
testinstall*.img
*.qcow2
/testinstall*.img
/testinstall*.efivars
/*.qcow2
/*.tar
.DS_Store
._.DS_Store

2
CODEOWNERS Normal file
View File

@ -0,0 +1,2 @@
# Users from reviewers github team
# * @vyos/reviewers

View File

@ -40,7 +40,7 @@ task first. Once there is an entry in Phabricator, you should reference its id
in your commit message, as shown below:
* `ddclient: T1030: auto create runtime directories`
* `Jenkins: add current Git commit ID to build description`
* `keepalived: T1234: do not autostart service, will be done by CLI`
If there is no [Phabricator](https://vyos.dev) reference in the
commits of your pull request, we have to ask you to amend the commit message.

215
Jenkinsfile vendored
View File

@ -1,215 +0,0 @@
#!/usr/bin/env groovy
// Copyright (C) 2019-2021 VyOS maintainers and contributors
//
// This program is free software; you can redistribute it and/or modify
// in order to easy exprort images built to "external" world
// it under the terms of the GNU General Public License version 2 or later as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
@NonCPS
// Using a version specifier library, use 'current' branch. The underscore (_)
// is not a typo! You need this underscore if the line immediately after the
// @Library annotation is not an import statement!
@Library('vyos-build@current')_
setDescription()
node('Docker') {
stage('Setup Container') {
script {
// create container name on demand
def branchName = getGitBranchName()
// Adjust PR target branch name so we can re-map it to the proper Docker image.
if (isPullRequest())
branchName = env.CHANGE_TARGET.toLowerCase()
if (branchName.equals('master'))
branchName = 'current'
env.DOCKER_IMAGE = 'vyos/vyos-build:' + branchName
// Get the current UID and GID from the jenkins agent to allow use of the same UID inside Docker
env.USR_ID = sh(returnStdout: true, script: 'id -u').toString().trim()
env.GRP_ID = sh(returnStdout: true, script: 'id -g').toString().trim()
env.DOCKER_ARGS = '--privileged --sysctl net.ipv6.conf.lo.disable_ipv6=0 -e GOSU_UID=' + env.USR_ID + ' -e GOSU_GID=' + env.GRP_ID
env.BASE_VERSION = '1.4-rolling-'
}
}
}
pipeline {
agent {
docker {
label "Docker"
args "${env.DOCKER_ARGS}"
image "${env.DOCKER_IMAGE}"
alwaysPull true
reuseNode true
}
}
triggers {
cron('H 3 * * *')
}
parameters {
string(name: 'BUILD_BY', defaultValue: 'autobuild@vyos.net', description: 'Builder identifier (e.g. jrandomhacker@example.net)')
string(name: 'BUILD_VERSION', defaultValue: env.BASE_VERSION + 'ISO8601-TIMESTAMP', description: 'Version number (release builds only)')
booleanParam(name: 'BUILD_PUBLISH', defaultValue: false, description: 'Publish this build AWS S3')
booleanParam(name: 'BUILD_SNAPSHOT', defaultValue: false, description: 'Upload image to AWS S3 snapshot bucket')
booleanParam(name: 'TEST_SMOKETESTS', defaultValue: true, description: 'Run Smoketests after ISO build')
booleanParam(name: 'TEST_RAID1', defaultValue: true, description: 'Perform RAID1 installation tests')
}
options {
disableConcurrentBuilds()
timeout(time: 240, unit: 'MINUTES')
timestamps()
buildDiscarder(logRotator(numToKeepStr: '20'))
}
stages {
stage('Build ISO') {
when {
beforeOptions true
beforeAgent true
// Only run ISO image build process of explicit user request or
// once a night triggered by the timer.
anyOf {
triggeredBy 'TimerTrigger'
triggeredBy cause: "UserIdCause"
}
}
environment {
PYTHONDONTWRITEBYTECODE = 1
}
steps {
script {
// Display Git commit Id used with the Jenkinsfile on the Job "Build History" pane
def commitId = sh(returnStdout: true, script: 'git rev-parse --short=11 HEAD').trim()
currentBuild.description = sprintf('Git SHA1: %s', commitId[-11..-1])
def CUSTOM_PACKAGES = ''
if (params.TEST_SMOKETESTS)
CUSTOM_PACKAGES = '--custom-package vyos-1x-smoketest'
def VYOS_VERSION = params.BUILD_BY
if (params.BUILD_VERSION == env.BASE_VERSION + 'ISO8601-TIMESTAMP')
VYOS_VERSION = env.BASE_VERSION + sh(returnStdout: true, script: 'date -u +%Y%m%d%H%M').toString().trim()
sh """
sudo --preserve-env ./build-vyos-image \
--build-by "${params.BUILD_BY}" \
--debian-mirror http://deb.debian.org/debian/ \
--build-type release \
--version "${VYOS_VERSION}" ${CUSTOM_PACKAGES} iso
"""
if (fileExists('build/live-image-amd64.hybrid.iso') == false) {
error('ISO build error')
}
}
}
}
stage('Smoketests for RAID-1 system installation') {
when {
expression { fileExists 'build/live-image-amd64.hybrid.iso' }
expression { return params.TEST_RAID1 }
}
steps {
sh "sudo make testraid"
}
}
stage('Smoketests') {
when {
expression { return params.TEST_SMOKETESTS }
}
parallel {
stage('CLI validation') {
when {
expression { fileExists 'build/live-image-amd64.hybrid.iso' }
}
steps {
sh "sudo make test"
}
}
stage('vyos-configd and arbitrary config loader') {
when {
expression { fileExists 'build/live-image-amd64.hybrid.iso' }
}
steps {
sh "sudo make testc"
}
}
}
}
}
post {
success {
script {
// only deploy ISO if build from official repository
if (isCustomBuild())
return
// always store local artifacts
archiveArtifacts artifacts: '**/build/vyos-*.iso, **/build/vyos-*.qcow2',
allowEmptyArchive: true
// only deploy ISO if requested via parameter
if (!params.BUILD_PUBLISH)
return
files = findFiles(glob: 'build/vyos*.iso')
// Publish ISO image to daily builds bucket
if (files) {
// Publish ISO image to snapshot bucket
if (files && params.BUILD_SNAPSHOT) {
withAWS(region: 'us-east-1', credentials: 's3-vyos-downloads-rolling-rw') {
s3Upload(bucket: 's3-us.vyos.io', path: 'snapshot/' + params.BUILD_VERSION + '/', workingDir: 'build', includePathPattern: 'vyos*.iso',
cacheControl: "public, max-age=2592000")
}
} else {
// Publish build result to AWS S3 rolling bucket
withAWS(region: 'us-east-1', credentials: 's3-vyos-downloads-rolling-rw') {
s3Upload(bucket: 's3-us.vyos.io', path: 'rolling/' + getGitBranchName() + '/',
workingDir: 'build', includePathPattern: 'vyos*.iso')
s3Copy(fromBucket: 's3-us.vyos.io', fromPath: 'rolling/' + getGitBranchName() + '/' + files[0].name,
toBucket: 's3-us.vyos.io', toPath: 'rolling/' + getGitBranchName() + '/vyos-rolling-latest.iso')
}
}
// Trigger GitHub action which will re-build the static community website which
// also holds the AWS download links to the generated ISO images
withCredentials([string(credentialsId: 'vyos.net-build-trigger-token', variable: 'TOKEN')]) {
sh '''
curl -X POST --header "Accept: application/vnd.github.v3+json" \
--header "authorization: Bearer $TOKEN" --data '{"ref": "production"}' \
https://api.github.com/repos/vyos/community.vyos.net/actions/workflows/main.yml/dispatches
'''
}
}
// Publish ISO image to snapshot bucket
if (files && params.BUILD_SNAPSHOT) {
withAWS(region: 'us-east-1', credentials: 's3-vyos-downloads-rolling-rw') {
s3Upload(bucket: 's3-us.vyos.io', path: 'snapshot/',
workingDir: 'build', includePathPattern: 'vyos*.iso')
}
}
}
}
failure {
archiveArtifacts artifacts: '**/build/vyos-*.iso, **/build/vyos-*.qcow2',
allowEmptyArchive: true
}
cleanup {
echo 'One way or another, I have finished'
// the 'build' directory got elevated permissions during the build
// cdjust permissions so it can be cleaned up by the regular user
sh 'sudo make purge'
deleteDir() /* cleanup our workspace */
}
}
}

View File

@ -1,84 +0,0 @@
#!/usr/bin/env groovy
// Copyright (C) 2019-2021 VyOS maintainers and contributors
//
// This program is free software; you can redistribute it and/or modify
// in order to easy exprort images built to "external" world
// it under the terms of the GNU General Public License version 2 or later as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
@NonCPS
// Using a version specifier library, use 'current' branch. The underscore (_)
// is not a typo! You need this underscore if the line immediately after the
// @Library annotation is not an import statement!
@Library('vyos-build@current')_
setDescription()
pipeline {
agent none
environment {
GIT_BRANCH_NAME = getGitBranchName()
}
options {
disableConcurrentBuilds()
timeout(time: 240, unit: 'MINUTES')
timestamps()
buildDiscarder(logRotator(numToKeepStr: '20'))
}
stages {
stage('Build containers') {
when {
beforeOptions true
beforeAgent true
// Only run ISO image build process of explicit user request or
// once a night triggered by the timer.
anyOf {
changeset pattern: "**/docker/*"
changeset pattern: "**/Jenkinsfile.docker"
triggeredBy cause: "UserIdCause"
}
}
parallel {
stage('x86_64') {
agent {
label "ec2_amd64"
}
steps {
script {
DOCKER_IMAGE_AMD64 = "vyos/vyos-build:" + env.GIT_BRANCH_NAME
sh "docker build --no-cache --tag ${DOCKER_IMAGE_AMD64} docker"
if (! isCustomBuild()) {
withDockerRegistry([credentialsId: "DockerHub"]) {
sh "docker push ${DOCKER_IMAGE_AMD64}"
}
}
}
}
}
stage('arm64') {
agent {
label "ec2_arm64"
}
steps {
script {
DOCKER_IMAGE_ARM64 = "vyos/vyos-build:" + env.GIT_BRANCH_NAME + "-arm64"
sh "docker build --no-cache --tag ${DOCKER_IMAGE_ARM64} --build-arg ARCH=arm64v8/ docker"
if (! isCustomBuild()) {
withDockerRegistry([credentialsId: "DockerHub"]) {
sh "docker push ${DOCKER_IMAGE_ARM64}"
}
}
}
}
}
}
}
}
}

View File

@ -5,21 +5,10 @@ build_dir := build
.PHONY: all
all:
@echo "Make what specifically?"
@echo "The most common target is 'iso'"
@echo "The most common target is 'generic'"
.PHONY: iso
.ONESHELL:
iso: clean
set -o pipefail
@./build-vyos-image iso
exit 0
.PHONY: prepare-package-env
.ONESHELL:
prepare-package-env:
@set -e
@scripts/pbuilder-config
@scripts/pbuilder-setup
%:
./build-vyos-image $*
.PHONY: checkiso
.ONESHELL:
@ -32,27 +21,62 @@ checkiso:
.PHONY: test
.ONESHELL:
test: checkiso
scripts/check-qemu-install --debug --uefi build/live-image-amd64.hybrid.iso
scripts/check-qemu-install --debug --configd --match="$(MATCH)" --smoketest --uefi --cpu 4 --memory 8 build/live-image-amd64.hybrid.iso $(filter-out $@,$(MAKECMDGOALS))
.PHONY: test-no-interfaces
.ONESHELL:
test-no-interfaces: checkiso
scripts/check-qemu-install --debug --no-interfaces build/live-image-amd64.hybrid.iso
scripts/check-qemu-install --debug --configd --smoketest --uefi --no-interfaces --cpu 4 --memory 8 --huge-page-size 2M --huge-page-count 1800 build/live-image-amd64.hybrid.iso
.PHONY: testd
.PHONY: test-no-interfaces-no-vpp
.ONESHELL:
testd: checkiso
scripts/check-qemu-install --debug --configd build/live-image-amd64.hybrid.iso
test-no-interfaces-no-vpp: checkiso
scripts/check-qemu-install --debug --configd --smoketest --uefi --no-interfaces --no-vpp build/live-image-amd64.hybrid.iso
.PHONY: test-interfaces
.ONESHELL:
test-interfaces: checkiso
scripts/check-qemu-install --debug --configd --match="interfaces_" --smoketest --uefi build/live-image-amd64.hybrid.iso
.PHONY: test-vpp
.ONESHELL:
test-vpp: checkiso
scripts/check-qemu-install --debug --configd --match="vpp" --smoketest --uefi --cpu 4 --memory 8 --huge-page-size 2M --huge-page-count 1800 build/live-image-amd64.hybrid.iso
.PHONY: testc
.ONESHELL:
testc: checkiso
scripts/check-qemu-install --debug --configd --configtest build/live-image-amd64.hybrid.iso
scripts/check-qemu-install --debug --configd --match="!vpp" --cpu 2 --memory 7 --configtest build/live-image-amd64.hybrid.iso $(filter-out $@,$(MAKECMDGOALS))
.PHONY: testcvpp
.ONESHELL:
testcvpp: checkiso
scripts/check-qemu-install --debug --configd --match="vpp" --cpu 4 --memory 8 --huge-page-size 2M --huge-page-count 1800 --configtest build/live-image-amd64.hybrid.iso $(filter-out $@,$(MAKECMDGOALS))
.PHONY: testraid
.ONESHELL:
testraid: checkiso
scripts/check-qemu-install --debug --configd --raid --configtest build/live-image-amd64.hybrid.iso
scripts/check-qemu-install --debug --configd --raid build/live-image-amd64.hybrid.iso $(filter-out $@,$(MAKECMDGOALS))
.PHONY: testsb
.ONESHELL:
testsb: checkiso
scripts/check-qemu-install --debug --uefi --sbtest build/live-image-amd64.hybrid.iso $(filter-out $@,$(MAKECMDGOALS))
.PHONY: testtpm
.ONESHELL:
testtpm: checkiso
scripts/check-qemu-install --debug --tpmtest build/live-image-amd64.hybrid.iso $(filter-out $@,$(MAKECMDGOALS))
.PHONY: qemu-live
.ONESHELL:
qemu-live: checkiso
scripts/check-qemu-install --qemu-cmd --uefi build/live-image-amd64.hybrid.iso $(filter-out $@,$(MAKECMDGOALS))
.PHONY: oci
.ONESHELL:
oci: checkiso
scripts/iso-to-oci build/live-image-amd64.hybrid.iso
.PHONY: clean
.ONESHELL:
@ -65,7 +89,7 @@ clean:
rm -f config/binary config/bootstrap config/chroot config/common config/source
rm -f build.log
rm -f vyos-*.iso
rm -f *.img
rm -f *.img *.efivars
rm -f *.xz
rm -f *.vhd
rm -f *.raw

View File

@ -33,15 +33,13 @@ There are several directories with their own purpose:
* `build/` Used for temporary files used for the build and for build artifacts
* `data/` Data required for building the ISO (e.g. boot splash/configs)
* `packages/` This directory has two meanings. First it can hold arbitrary *.deb
packages which will be embeded into the resulting ISO, but it also
holds Jenkins Pipeline definitions for required VyOS packages.
* `packages/` This directory can hold arbitrary *.deb
packages which will be embeded into the resulting ISO.
Among other things those packages will be: Linux Kernel, FRR,
Netfiler...
* `scripts/` Scripts that are used for the build process
* `tools/` Scripts that are used for maintainer's tasks automation and other
purposes, but not during ISO build process
* `vars/` Jenkins Pipeline library for reusable functions
# Building VyOS
@ -51,28 +49,21 @@ be found in our [Documentation - Build VyOS](https://docs.vyos.io/en/latest/cont
# Development Branches
The default branch that contains the most recent VyOS code is called `current`
rather than `master`. We know it's confusing, but it's not easy to fix. In a
nutshell, the code we inherited from Vyatta Core had its `master` branch so out
of sync with everything it was beyond any repair. Vyatta developers used to create
a new branch not when a release is ready for code freeze, but rather before
starting to work on a new release. This is hard to change in existing code, so
this is just the way it is, for now.
The default branch that contains the most recent VyOS code is called `current`.
We may or may not eventually switch to `main`.
All new code goes to the `current` branch. When it's time for a code freeze, a
All new code goes to the `current` branch. When a new LTS release is ready for feature freeze, a
new branch is created for the release, and new code from `current` is backported
to the release branch as needed.
In packages that originate from VyOS the master branch is kept in sync with
`current`, but we still use `current` as default branch for uniformity. When the
last legacy package is gone, we will switch to using the `master` branch and
retire `current`.
Post-1.2.0 branches are named after constellations sorted by area from smallest
to largest. There are 88 of them, here's the
[complete list](https://en.wikipedia.org/wiki/IAU_designated_constellations_by_area).
* VyOS 1.2: `crux` (Southern Cross)
* VyOS 1.3: `equuleus` (Little Horse)
* VyOS 1.4: `sagitta` (Arrow)
* ...
Existing branches:
* VyOS 1.4: `sagitta` (Arrow) [LTS]
* VyOS 1.3: `equuleus` (Little Horse) [LTS]
* VyOS 1.2: `crux` (Southern Cross) [Unsupported]
The next LTS release will be VyOS 1.5 `circinus` (Compasses).

View File

@ -1 +1 @@
scripts/build-vyos-image
scripts/image-build/build-vyos-image

View File

@ -1,15 +1,26 @@
additional_repositories = [
"deb [arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/3004 bullseye main"
]
kernel_flavor = "amd64-vyos"
# Packages added to images for x86 by default
packages = [
"grub2",
"grub-pc",
"vyos-drivers-realtek-r8152",
"vyos-linux-firmware",
"vyos-intel-qat",
"openvpn-dco",
"telegraf"
"vyos-intel-ixgbe",
"vyos-intel-ixgbevf",
"vyos-ipt-netflow",
"intel-microcode",
"amd64-microcode"
]
[additional_repositories.salt]
architecture = "amd64"
url = "https://packages.vyos.net/saltproject/debian/11/amd64/3005"
distribution = "bullseye"
[additional_repositories.zabbix]
url = "https://repo.zabbix.com/zabbix/6.0/debian"
[additional_repositories.kea]
architecture = "amd64"
url = "https://dl.cloudsmith.io/public/isc/kea-3-0/deb/debian"
distribution = "bookworm"

View File

@ -1,9 +1,19 @@
additional_repositories = [
"deb [arch=arm64] https://repo.saltproject.io/py3/debian/11/arm64/3004 bullseye main"
]
kernel_flavor = "arm64-vyos"
# Packages included in ARM64 images by default
packages = ["grub-efi-arm64", "openvpn-dco"]
packages = [
"grub-efi-arm64",
]
bootloaders = "grub-efi"
squashfs_compression_type = "xz -b 256k -always-use-fragments -no-recovery"
[additional_repositories.salt]
architecture = "arm64"
url = "https://packages.vyos.net/saltproject/debian/11/arm64/3005"
distribution = "bullseye"
[additional_repositories.zabbix]
url = "https://repo.zabbix.com/zabbix/6.0/debian-arm64"
[additional_repositories.kea]
architecture = "arm64"
url = "https://dl.cloudsmith.io/public/isc/kea-3-0/deb/debian"
distribution = "bookworm"

View File

@ -1,2 +1,6 @@
additional_repositories = [
"deb [arch=armhf] https://packages.vyos.net/saltproject/debian/11/arm64/3005 bullseye main"
]
# Packages included in armhf images by default
packages = ["grub-efi-arm"]

View File

@ -1,76 +0,0 @@
# VyOS build flavors
VyOS supports multiple different hardware and virtual platforms.
Those platforms often need custom packages and may require custom
configs. To make maintenance of existing flavors simpler
and to allow everyone to make and maintain their own flavors,
the build scripts support storing flavor configuration in [TOML](https://toml.io) files.
Flavor files must be in `data/build-flavors`. Here's an example:
```toml
# Generic (aka "universal") ISO image
image_format = "iso"
# Include these packages in the image regardless of the architecture
packages = [
# QEMU and Xen guest tools exist for multiple architectures
"qemu-guest-agent",
"vyos-xe-guest-utilities",
]
[architectures.amd64]
# Hyper-V and VMware guest tools are x86-only
packages = ["hyperv-daemons", "vyos-1x-vmware"]
```
## Image format
The `image_format` option specifies the default format to build.
```toml
image_format = "iso"
```
**Note:** currently, ISO is the only supported format,
support for different flavors is in progress.
## Including custom packages
If you want the build scripts to include custom packages from repositories
in the image, you can list them in the `packages` field.
For example, this is how to include the GNU Hello package:
```toml
packages = ['hello']
```
It's possible to include packages only in images with certain build architectures
by placing them in a subtable.
If you want to include GNU Hello only in AMD64 images, do this:
```toml
[architectures.amd64]
packages = ['hello']
```
## Including custom files
You can include files inside the SquashFS filesystem by adding entries
to the `includes_chroot` array.
```toml
[[includes_chroot]]
path = "etc/question.txt"
data = '''
Can you guess how this file ended up in the image?
'''
path = "etc/answer.txt"
data = '''
It was in the flavor file!
'''
```

View File

@ -1,3 +0,0 @@
image_format = "iso"
packages = ["amazon-cloudwatch-agent"]

View File

@ -1,5 +0,0 @@
image_format = "iso"
packages = ["waagent"]

View File

@ -1,46 +0,0 @@
# ISO image for EdgeCore routers
image_format = "iso"
# udev rules for correct ordering of onboard NICs
[[includes_chroot]]
path = "lib/udev/rules.d/64-vyos-SAF51015I-net.rules"
data = '''
ATTR{[dmi/id]board_name}!="SAF51015I-0318-EC", GOTO="end_ec_nic"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.0", ENV{VYOS_IFNAME}="eth1"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:03:00.0", ENV{VYOS_IFNAME}="eth2"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:04:00.0", ENV{VYOS_IFNAME}="eth3"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.0", ENV{VYOS_IFNAME}="eth4"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:06:00.0", ENV{VYOS_IFNAME}="eth5"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:06:00.1", ENV{VYOS_IFNAME}="eth6"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:06:00.2", ENV{VYOS_IFNAME}="eth7"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:06:00.3", ENV{VYOS_IFNAME}="eth8"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:0a:00.0", ENV{VYOS_IFNAME}="eth9"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:0a:00.1", ENV{VYOS_IFNAME}="eth10"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:0b:00.0", ENV{VYOS_IFNAME}="eth11"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:0b:00.1", ENV{VYOS_IFNAME}="eth12"
LABEL="end_ec_nic"
'''
[[includes_chroot]]
path = "lib/udev/rules.d/64-vyos-SAF51003I-net.rules"
data = '''
ATTR{[dmi/id]board_name}!="SAF51003I", GOTO="end_ec_nic"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.0", ENV{VYOS_IFNAME}="eth1", ATTR{ifalias}="LAN1"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.1", ENV{VYOS_IFNAME}="eth2", ATTR{ifalias}="LAN2"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.2", ENV{VYOS_IFNAME}="eth3", ATTR{ifalias}="LAN3"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.3", ENV{VYOS_IFNAME}="eth4", ATTR{ifalias}="LAN4"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.0", ENV{VYOS_IFNAME}="eth5", ATTR{ifalias}="LAN5"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.1", ENV{VYOS_IFNAME}="eth6", ATTR{ifalias}="LAN6"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.2", ENV{VYOS_IFNAME}="eth7", ATTR{ifalias}="LAN7"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.3", ENV{VYOS_IFNAME}="eth8", ATTR{ifalias}="LAN8"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:08:00.0", ENV{VYOS_IFNAME}="eth9", ATTR{ifalias}="DMZ"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:08:00.1", ENV{VYOS_IFNAME}="eth10", ATTR{ifalias}="WAN"
LABEL="end_ec_nic"
'''

View File

@ -0,0 +1,3 @@
# Generic (aka "universal") ISO image
image_format = "iso"

View File

@ -1,14 +0,0 @@
# Generic (aka "universal") ISO image
image_format = "iso"
# Include these packages in the image regardless of the architecture
packages = [
# QEMU and Xen guest tools exist for multiple architectures
"qemu-guest-agent",
"vyos-xe-guest-utilities",
]
[architectures.amd64]
# Hyper-V and VMware guest tools are x86-only
packages = ["hyperv-daemons", "vyos-1x-vmware"]

View File

@ -1,6 +0,0 @@
# Installation ISO for the XCP-ng virtualization platform
image_formats = "iso"
# Include these packages in the image
packages = ["xe-guest-utilities"]

View File

@ -6,3 +6,73 @@ packages = [
"vim",
"vyos-1x-smoketest"
]
[[includes_chroot]]
path = 'usr/share/vyos/EULA'
data = '''
VyOS ROLLING RELEASE END USER LICENSE AGREEMENT
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE INSTALLING AND/OR USING VyOS ROLLING RELEASE.
IF YOU DO NOT ACCEPT THE TERMS OF THIS AGREEMENT, THEN YOU MUST NOT USE VyOS ROLLING RELEASE.
I. This End-User License Agreement (Agreement) is a legal document between you and VyOS Inc.
(a company organized and existing under the laws of California,
having its registered office at 12585 Kirkham Ct, Suite 1, Poway, California 92604)
that governs your use of VyOS Rolling Release, available at vyos.io website.
II. By downloading, installing and using VyOS Rolling Release you:
- irrevocably agree to comply with all applicable laws, restrictions,
regulations, rules, the GNU GPL and other applicable licenses, and with this Agreement;
- confirm you have all legal rights to enter into this Agreement
and your authority is not limited by any legal means;
- obligate to certainly, indisputably and immediately
(but in any case at the first request of the VyOS Inc.)
compensate for any damage, if such is caused to the VyOS Inc. by your actions;
- assure and enforce any third party you grant access to Rolling Release
will bear the same amount of obligations.
For the purpose of this Agreement such third party will be referred to also as you.
III. VyOS Rolling Release (Rolling Release) are copyrighted works
released under the terms of the GNU General Public License (GPL)
and other licenses approved by the Open Source Initiative (www.opensource.org),
(hereinafter, the Public Licenses).
Verbatim copies of such works may be made and distributed, by anyone,
in accordance with the terms of the GPL and the Public Licenses.
The GPL and the Public Licenses also grant you certain rights
to make and distribute derivative works based on the source code to Rolling Release.
You can redistribute and/or modify the Rolling Release under the terms of the GPL and the Public Licenses.
You may obtain a copy of the source code corresponding to the binaries for the Rolling Release
from public Git repositories as https://github.com/vyos
The GPL and the Public Licenses do not grant you any right, license or interest to use VyOS trademarks and logos,
that are trademarks or registered trademarks in the US, EU and other countries,
in connection with these derivative works.
VyOS trademarks may not be used in connection with any such derivative works
unless that usage is explicitly and specifically permitted, in writing.
Otherwise, You must modify the files identifiable as VyOS logos and VyOS trademarks
so as to remove all use of images containing them.
Note that mere deletion of these files may corrupt the Rolling Release.
IV. Under no circumstances VyOS Inc. will be liable to you for any damages,
however caused or arising in any way out of the use of
or of inability to use the Rolling Release.
VyOS Inc. provides no warranty for Rolling Release.
V. This Agreement comes into force upon your acceptance in the form of downloading,
installing or using Rolling Release (whatever happens first) and remains valid until termination.
This Agreement shall terminate immediately if you violate any applicable law,
restriction, regulation, rule, GPL or other applicable license, or any provision of this Agreement.
Upon termination of this Agreement you shall discontinue to use Rolling Release
and delete it as well as all copies you made from all storage devices.
VI. This Agreement may be amended by VyOS Inc. at any time and brought to your attention
by publication on vyos.io website with enter into force immediately after such publication.
VII. This Agreement, and any dispute or claim arising out of or in connection with it,
shall be governed by, and construed in accordance with the laws of California.
The courts of California shall have exclusive jurisdiction to settle any dispute or claim.
For more information or any other query please contact VyOS Inc. at: legal@vyos.io
'''

View File

@ -0,0 +1,441 @@
[[includes_chroot]]
path = 'usr/share/vyos/EULA'
data = '''
VyOS END USER LICENSE AGREEMENT
PLEASE READ THIS END USER LICENSE AGREEMENT (EULA, THIS AGREEMENT') CAREFULLY
BEFORE USING VYOS FROM US. BY USING VYOS, YOU ("YOU", "LICENSEE", "CUSTOMER")
SIGNIFY YOUR ASSENT TO AND ACCEPTANCE OF THIS END USER LICENSE AGREEMENT AND
ACKNOWLEDGE YOU HAVE READ AND UNDERSTAND THE TERMS. THIS AGREEMENT IS
ENFORCEABLE AGAINST ANY PERSON OR ENTITY THAT USES THE SOFTWARE AND ANY PERSON
OR ENTITY (E.G., SYSTEMS INTEGRATOR, CONSULTANT OR CONTRACTOR) THAT USES THE
SOFTWARE ON ANOTHER PERSON'S OR ENTITY'S BEHALF. IF YOU DO NOT ACCEPT THE TERMS
OF THIS AGREEMENT, THEN YOU MUST NOT USE THE SOFTWARE. THE EFFECTIVE DATE OF
THIS AGREEMENT IS THE EARLIEST OF THE START DATE OF SERVICES STATED IN OUR
INVOICE, PREVIOUS ACCEPTANCE OF THIS AGREEMENT (OR OUR BUSINESS PARTNER'S ORDER
OR/AND INVOICE, PREVIOUS ACCEPTANCE OF THIS AGREEMENT) OR THE DATE THAT
CUSTOMER HAS ACCESS AND IS ABLE TO USE OUR PRODUCTS OR SERVICES. THIS END USER
LICENSE AGREEMENT DOES NOT COVER ANY SERVICES FROM US, OR THROUGH OUR BUSINESS
PARTNER, OTHER THAN ACCESS TO THE SOFTWARE, SUCH AS TECHNICAL SUPPORT, UPGRADES
OR SUPPORT SERVICES. PLEASE REVIEW YOUR SERVICES OR SUBSCRIPTION AGREEMENT(S)
THAT YOU MAY HAVE WITH US OR OTHER AUTHORIZED VYOS SERVICES PROVIDER OR
BUSINESS PARTNER REGARDING THE SOFTWARE AND SERVICES AND ASSOCIATED PAYMENTS.
1. Definitions
1.1 "We, Our, Us" means VyOS Contracting Entity defined in Section 13.
1.2 "VyOS" or "Software" means VyOS software provided by Us (or authorized
services provider or business partner) and consisting of VyOS software
application (exclusively or along with any third-party software included
therein or therewith) that includes or refers to this Agreement and any related
documentation (including, without limitation, user and technical documentation,
further explanatory written materials related to the Software, etc.), services
(including, without limitation, SaaS, internet-based service, etc.), tool,
application, component, object code, source code, appearance (including,
without limitation, images, designs, fonts, etc.), structure as well as any
modification
and update thereof, regardless of the delivery mechanism.
"Services" means software support services and any other services provided by
Us, or through Our Business Partner, on a subscription basis.
1.3 "Authorized Users" means employees or individual contractors to whom,
pursuant to this Agreement, the Licensee has granted a right to access and use
the Software with your credentials, provided that such access shall be for your
sole benefit and in full compliance with this EULA.
All Authorized Users are bound by the terms of this Agreement.
1.4 "Cloud Provider" means authorized hosting partner's cloud marketplace
platform, a company that delivers cloud computing based services, resources and
solutions to businesses and/or offers solutions via the cloud marketplace.
1.5 "Business Partner" shall mean Our authorized sales agent, partner, Cloud
Provider reseller or distributor of the Software and Our Services authorized to
sell Software and Services via our subscriptions. Purchases through or by a
Business Partner. In instances where Customer purchases through a Business
Partner, final prices and terms and conditions of sale will be as agreed
between Customer and the Business Partner from which Customer makes such
purchases; however, the terms set forth in this EULA are applicable to
Customer's use and the performance of VyOS. Customer acknowledges that:
(a) We may share information with the Business Partner related to Customer's
use and consumption of VyOS, and vice versa, for account management and
billing purposes;
(b) the termination provisions below will also apply if Customer's Business
Partner fails to pay Us applicable fees; and
(c) Business Partner is not authorized to make any changes to this EULA or
otherwise authorized to make any warranties, representations, promises or
commitments on Our behalf or in any way concerning the VyOS.
"Business Partner's order" means the ordering document(s), issued during Your
purchasing process by Our Business Partner in a way and manner as defined by
Our Business Partner. Business Partner's order may describe specific Software
and Services, Subscription(s), associated fees, payment terms, and shall be
subject to the terms of this Agreement and EULA.
1.6 "Customer", "You", "Licensee", "Your" - user of VyOS and its heirs, agents,
successors, assigns and - for the purpose of Global subscription - its
Affiliates.
2. License Grant
Subject to the following terms, We grant to You a perpetual, worldwide license
to the Software (most of which includes multiple software components) pursuant
to different open sourced and public licenses. The license agreement for each
software component is located in the software component's source code and
permits you to run, copy, modify, and redistribute the software component
(subject to certain obligations in some cases), both in source code and binary
code forms, with the exception of the images identified in Section 4 below. You
shall either agree to the terms of each applicable public license or You must
not install/use those components or exercise such licensed rights.
This EULA pertains solely to the Software and does not limit your rights under,
or grant you rights that supersede, the license terms of any particular
component.
2.1 Limited Modifications. For the avoidance of doubt, Licensee is permitted to
use VyOS from Us in accordance with VyOS terms and conditions and on the
specific quotation, purchase order and/or the subscription or customized
agreements, if any. Any other modifications of VyOS terms and conditions won't
be allowed, except as expressly authorized through a separate custom agreement,
unless otherwise defined by this Agreement, specific quotation, purchase order
and/or the subscription or customized agreements.
2.2 No Unbundling. Nonetheless, the Software is designed and provided to
Licensee solely as permitted herein. Licensee shall not unbundle or repackage
the Software for distribution, transfer or other disposition, unless otherwise
specified by this Agreement.
3. Prohibited Use and Allowed Use
3.1 Except as expressly authorized through a separate custom agreement,
Licensee and the Authorized Users are prohibited from:
(a) using the Software on behalf of third parties;
(b) sublicensing, licensing, renting, leasing, lending or granting other rights
in the Software including rights on a membership or subscription basis;
(c) providing use of the Software in a service bureau arrangement, outsourcing
or on a time sharing basis;
(d) interfere with or disrupt the Software or systems used to provide the VyOS
or other equipment or networks connected;
(e) circumvent or disclose the user authentication or security of the Software
or any host, network, or account related thereto or attempt to gain
unauthorized access;
(f) store or transmit SPAM or malicious code;
(g) duplicate the Software or publish the Software for others to copy;
(h) infringe the intellectual property rights of any entity or person; or
(i) make any use of the Software that violates any applicable local, state,
national, international or foreign law or regulation.
For more information about how to obtain a custom agreement, please contact us
at: sales@vyos.io.
3.2 The following uses of the Software shall be allowed:
(a) any lab setup within the Licensee or on an Authorized User's personal
device, for the purpose of learning, testing, or debugging company network
configs, and
(b) any use in Authorized User's personal home networks, including but not
limited to Internet access, corporate VPN access, learning and
experimentation.
4. Intellectual Property Rights
The Software and each of their components are owned by Us and other licensors
and are protected under copyright law and other laws as applicable. Title to
the Software and any component and systems, or to any copy or modification
shall remain with Us and other licensors, subject to the applicable license.
The "VyOS" mark, the individual Software marks, and the "VyOS" logo are
trademarks or registered trademarks in the EU, US and other countries. Artwork
files that feature the VyOS logo, including but not limited to boot splash
images and user interface elements, are Our property, distributed on the "all
rights reserved" basis. You cannot redistribute those files separately or as
part of Software without an express permission from the copyright holder. By
accepting this Agreement You commit not to register or request registration of
any commercial name, domain name, email, trademark, symbol or distinctive;
sign, with similar characteristics, color, typography, style or appearance or
that includes the word "VyOS" or/and VyOS logo.
This EULA does not permit you to distribute the Software using VyOS trademarks,
regardless of whether the Software has been modified. You may make a commercial
redistribution of the Software only if
(a) permitted under a separate written agreement with Us authorizing such
commercial redistribution or
(b) you remove and replace all Our occurrences and VyOS trademarks and logos.
Modifications to the software may corrupt the Software.
4.1 The Licensee grants Us a right to use its logos and trademarks for the
purpose of displaying their Licensee status on the VyOS website, and for the
purposes specified in VyOS Subscription Agreement. We will not claim that the
Licensee endorses VyOS and will not publicize any details of Licensee's VyOS
usage, network setup, or any other information not explicitly provided by the
Licensee for public release.
4.1.1 The Licensee can revoke Our right to use Licensee's trademarks and logos
at any time, unless otherwise agreed in VyOS Subscription Agreement, or Our
Quotation.
5. Updates
Along with all software update subscriptions, We provide security updates,
hot-fixes and security advisory notifications before public disclosure
(herein after collectively referred to as the "Updates"). You expressly
acknowledge and agree that We have no obligation to make available and/or
provide any Updates. All upgrades and Updates are provided by Us or through
Our Business Partners to Licensee at Our sole discretion and are subject to
the terms of this Agreement on a license exchange basis. Any obligations that
We may have to support previous versions during the license term may end upon
the availability of this update. Upgrades and Updates may be licensed to
Licensee by Us with additional or different terms.
6. Support
This agreement does not automatically entitle the Licensee to any support for
the Software provided by Us or through Our Business Partners unless otherwise
specified in the subscription terms. For the avoidance of doubt, We have no
liability and provide no support for any hardware or any cloud marketplace
services provided by any Business Partner or Cloud Provider. Where available,
maintenance and support may be purchased separately subject to a separate
VyOS's support services included subscriptions.
Support for software built from source code by a party other than Us, with or
without modifications made by the Licensee or a third party, is provided only
through separate agreements.
For more information about how to obtain a VyOS's software and support services
included subscriptions, please contact us at: sales@vyos.io.
7. Term and Termination.
This Agreement begins on the Effective Date and shall remain in effect until
terminated due to
(a) Licensee fails to pay the fees amounts associated to Our subscriptions
when due or otherwise materially breaches this Agreement, specific
quotation, purchase order and/or the subscription or customized agreements
and fails to remedy the breach within ten (10) days from the receipt of a
notification sent in writing or electronically,
(b) Licensee's deactivation or subscription cancellation of the Software,
(c) Licensee fails to pay the Business Partner, or terminate the agreement with
a Business Partner, or Business Partner fails to pay Us the applicable fees
of your Software and/or Services, or
(d) We change, cease to provide or discontinue the Software at any time.
Upon the occurrence of (a), (b), (c) or (d), above, We are entitled to
terminate this Agreement. Upon termination of this Agreement for any reason,
Licensee shall discontinue use of the Software. If you have copies of the
Software obtained when You still had an active subscription, you can keep using
them indefinitely as long as you comply with this Agreement and VyOS
Subscription Agreement, in particular - with Section 4 above and provided this
is not intended to interfere with any rights you may have from other public
and open source licenses.Termination shall not, however, relieve either party
of obligations incurred prior to the termination. The following Sections shall
survive termination of this Agreement: Definitions, Intellectual Property
Rights, Limited Warranty, Limitation of Remedies and Liability, General, Term
and Termination, and others which by their nature are intended to survive.
8. Limited Warranty
Except as specifically stated in this Section 8, a separate agreement with Us,
or a license for a particular component, to the maximum extent permitted under
applicable law, the Software and the components are provided and licensed
"as is" without warranty of any kind, express or implied, including the
implied warranties of merchantability, non-infringement, integration, quiet
enjoyment, satisfactory quality or fitness for a particular purpose. Neither
Us nor Our affiliates and Business Partners warrant that the Software will
meet your requirements, will be uninterrupted, timely, secure; that the
operation of the Software will be entirely error-free, appear or perform
precisely as described in the accompanying documentation, or comply with
regulatory requirements; that the results that may be obtained from the use of
the Software will be effective, accurate or reliable; the quality of the
Software will meet your expectations; or that any errors or defects in the
Software will be corrected. This warranty extends only to the party that
purchases subscription services for the Software from Us and/or Our affiliates
or a Our authorized Business Partner.
We and Our affiliates specifically disclaim any liability with regard to any
actions resulting from your use of the Software. Any material downloaded or
otherwise obtained through use of the Software is accessed at your own
discretion and risk, and you will be solely responsible for any damage to your
computer system or loss of data that results from use of the Software. We and
Our affiliates assume no liability for any malicious software that may be
downloaded to your computer as a result of your use of the Software.
We will not be liable for any loss that you may incur as a result of a third
party using your password or account or account information in connection with
the Software, either with or without your knowledge.
Licensee assumes the entire cost of all necessary servicing, repair, or
correction of problems caused by viruses or other harmful components; We
disclaim and makes no warranties or representations as to the accuracy,
quality, reliability, suitability, completeness, truthfulness, usefulness, or
effectiveness of the outputs, logs, reports, data, results or other information
obtained, generated or otherwise received by Licensee from accessing and/or
using the Software or otherwise resulting from this Agreement; and Licensee
shall use the Software at its own risk and in no event shall We be liable to
Licensee for any loss or damage of any kind (except personal injury or death
resulting from Our negligence, fraud or fraudulent misrepresentation and any
other liability that cannot be excluded by law) arising from Licensee's use of
or inability to use the Software or from faults or defects in the Software
whether caused by negligence or otherwise.
Licensee agrees to defend, indemnify and hold Us harmless from any losses,
liabilities, damages, actions, claims or expenses (including legal fees and
court costs) arising or resulting from Licensee's breach of any term of this
agreement or caused by acts or omissions performed by licensee.
Some jurisdictions do not allow the exclusion of certain warranties, the
limitation or exclusion of implied warranties, or limitations on how long an
implied warranty may last, so the above limitations may not apply to you.
9. Limitation of Remedies and Liability
To the maximum extent permitted under applicable law, under no circumstances
will We, Our affiliates, any of Our authorized Business Partner, or the
licensor of any component provided to you under this EULA be liable to you for
any direct, indirect, incidental, special, exemplary, punitive, or
consequential damages (including, but not limited to, procurement of substitute
goods or services, computer failure or malfunction, loss of data or profits,
business interruption, etc.) however caused and on any theory of liability,
whether in contract, strict liability, or tort (including negligence or
otherwise) arising in any way out of the use of the software or inability to
use the software, even if We, Our affiliates, an authorized Business Partner,
and/or licensor are aware of or have been advised of the possibility of such
damage. To the extent permitted by law and as the maximum aggregate liability,
Our or Our affiliates' liability, an authorized Business Partner's liability
or the liability of the licensor of a component provided to you under or in
connection with this EULA will be limited to the lesser of either five hundred
United States dollars ($500) or the fees paid by the Licensee or by Business
Partner and received by Us for the Software and attributable to the 6 month
period immediately preceding the first event giving rise to such liability. The
limitations and exclusions in this section apply to the maximum extent
permitted by applicable law in your jurisdiction. Some jurisdictions prohibit
the exclusion or limitation of liability for incidental, consequential or
punitive damages. Accordingly, the limitations and exclusions set forth above
may not apply to you.
10. Compliance and Export Control
You understand that countries may restrict the import, use, export, re-export
or transfer of encryption products and other controlled materials (which may
include the Software or related technical information licensed hereunder). You
agree to comply with export regulations by the Bureau of Industry and Security
of the U.S. Department of Commerce and all applicable laws, restrictions and
regulations in Your use of the Software, including but not limited to export
restrictions of various countries that the Software may be subject to, and
personal data protection regulations. You should comply with and oblige to
secure Us from any breach of any law and regulation, from any claim or
litigation arising as a result of such breach and to reimburse Us any loss,
resulting from such breach. You will not use the Software for a prohibited use.
10.1 Sanctions compliance. You undertake to follow that You and any person,
allowed to use the Software and the Services by You, is not a subject or the
target of sanctions, embargoes and restrictive measures ("Sanctions"),
administered by the Office of Foreign Assets Control of the U.S. Department of
the Treasury or the U.S. Department of State, the United Nations Security
Council, the European Union, Her Majesty's Treasury of the United Kingdom,
Department of Foreign Affairs and Trade of the Australian Federal Government,
or other relevant sanctions authority ("Sanctioning Authorities").
You undertake to comply with all the abovementioned Sanctions in all possible
ways to keep Us harmless and oblige to immediately terminate relations with
any person that becomes (or is) subject or target of any of the abovementioned
Sanctions, or assists anybody to evade or violate the above mentioned Sanctions.
11. Third-Party Beneficiary
Licensee acknowledges and agrees that Our licensors (and/or Us if Licensee
obtained the Software from any party other than Us) are third party
beneficiaries of this Agreement, with the right to enforce the obligations set
forth herein with respect to the respective technology of such licensors and/or
Ours.
12. Third-party components, contributions and software programs
We do not assert any Intellectual Property Rights over:
(a) components created by third parties that may be taken from upstream
sources in binary form compiled by Us from the source code;
(b) source code and documentation of the Software, which is develope
ollaboratively and is open to contributions by parties not affiliated with
Us (to such purpose, contributors give Us non-exclusive rights according
to the licenses of the Software and documentation);
(c) third parties software or programs included therein or therewith the
Software.
13. General
If any provision of this EULA is held to be unenforceable, the enforceability
of the remaining provisions shall not be affected.
Updates and upgrades may be licensed to Licensee by Us with additional or
different terms.
You are not allowed to transfer or assign this EULA or any rights hereunder,
unless with Our previous written consent. Please inform Us of Your intention
to transfer or assign in advance so We can respond accordingly. Conversely, We
may transfer, assign, sublicense or delegate the EULA or any portions thereof,
without restriction. We also may subcontract any performance associated with
the Software to third parties, provided that such subcontract does not relieve
Us of any of Our obligations under this EULA.
Licensee may not sublicense, transfer or assign, whether voluntarily or by
operation of law, any right or license in or to the Software. Any attempted
sublicense, transfer or assignment shall be void.
We may, from time-to-time modify this agreement.
Licensee shall comply with all applicable laws and regulations pertaining to
this Agreement
This Agreement, along with a VyOS Subscription Agreement, Privacy Policy and
Terms and Conditions, any quotation, purchase order and services level
agreement, if applicable, and any other documents deemed to be incorporated by
reference in it, constitutes the entire agreement between the parties with
respect to its subject matter and it supersedes all prior or contemporaneous
agreements concerning such matter. If you order VyOS from a Business Partner,
then any agreement that you enter into with a Business Partner is solely
between you and a Business Partner and will not be binding on Us.
In the table below, "Customer Location" refers to where Customer is located
(as determined by Customer's business address on the invoice) and determines
which table row applies to Customer:
Customer Location* VyOS Contracting Entity Governing Law Venue/Courts
================== ======================= ============= ============
North & South America VyOS Inc California Poway
EEA & UK VyOS EMEA Operations Ireland Cork
(except Spain & Portugal) Limited
Spain, Andorra & Portugal VyOS Networks Iberia SLU Spain Madrid
Asia & Oceania VyOS APAC Pty Ltd Australia Sydney
Non-EEA parts of Europe, VyOS Networks Cyprus Cyprus Limassol
Middle East, & Africa Limited
(except Andorra)
*all sales via Cloud Providers are generally done by VyOS Inc., unless
otherwise decided by Us regardless of Customer location.
References to "We", "Our", "Us" are references to the applicable VyOS
Contracting Entity specified in the Contracting Entity Table, unless otherwise
has been decided for operational purposes, in the Quotation and in the invoice.
The Services are provided by that VyOS Contracting Entity.
This Agreement, and any disputes arising out of or related hereto, will be
governed exclusively by the applicable governing law above, without giving
effect to any of its conflicts of laws, rules or principles. The courts located
in the applicable venue above will have exclusive jurisdiction to adjudicate
any dispute arising out of or relating to this Agreement or its formation,
interpretation, or enforcement. Each party hereby consents and submits to the
exclusive jurisdiction of such courts. Before resorting to any external dispute
resolution mechanisms, the parties agree to use their best efforts in good
faith to settle any dispute in relation to the Agreement.
We may, in our sole discretion, amend this EULA at any time by posting a
revised version thereof on Our website and, by updating the "last updated"
date on the applicable page, or by providing reasonable notice. Your continued
use of the Software following changes to the Agreement after the effective
date of a revised version thereof constitutes Your expressed acceptance of and
the agreement to be bound by the Agreement and its future versions or updates.
'''

View File

@ -0,0 +1,8 @@
packages = [
"gdb",
"strace",
"apt-rdepends",
"tshark",
"vim",
"vyos-1x-smoketest"
]

1
data/certificates/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
*.key

View File

@ -7,14 +7,15 @@ debian_distribution = "bookworm"
debian_mirror = "http://deb.debian.org/debian"
debian_security_mirror = "http://deb.debian.org/debian-security"
debian_archive_areas = "main contrib non-free"
debian_archive_areas = "main contrib non-free non-free-firmware"
vyos_mirror = "https://rolling-packages.vyos.net/current"
vyos_mirror = "https://packages.vyos.net/repositories/current"
vyos_branch = "current"
release_train = "current"
kernel_version = "6.1.51"
kernel_version = "6.6.108"
kernel_flavor = "vyos"
bootloaders = "syslinux,grub-efi"
squashfs_compression_type = "xz -Xbcj x86 -b 256k -always-use-fragments -no-recovery"
@ -22,3 +23,5 @@ squashfs_compression_type = "xz -Xbcj x86 -b 256k -always-use-fragments -no-reco
website_url = "https://vyos.io"
support_url = "https://support.vyos.io"
bugtracker_url = "https://vyos.dev"
documentation_url = "https://docs.vyos.io/en/latest"
project_news_url = "https://blog.vyos.io"

View File

@ -0,0 +1,11 @@
Package: iproute2
Pin: release n=bookworm-backports
Pin-Priority: 600
Package: suricata libhtp2
Pin: release n=bookworm-backports
Pin-Priority: 600
Package: *
Pin: release n=bookworm-backports
Pin-Priority: -100

View File

@ -1,3 +0,0 @@
deb http://deb.debian.org/debian/ buster main non-free
deb http://deb.debian.org/debian/ buster-updates main non-free
deb http://security.debian.org/debian-security buster/updates main non-free

View File

@ -1,11 +0,0 @@
Package: bash
Pin: release n=buster
Pin-Priority: 600
Package: bash-completion
Pin: release n=buster
Pin-Priority: 600
Package: *
Pin: release n=buster
Pin-Priority: -10

View File

@ -0,0 +1,24 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQGNBGhVJw8BDACXwlMdVKg40L87xcyG6fuo1KAOdk3cqx0jcojtYXYo16R5A1xD
ILW/Nw/b9qWkoXAjCOL8xgspSYx8Cqg73o+Jy2tzBNSzXGYmh/8sDicJmTGBt9n7
AhwlhW7ztzYYNaJeyyGvWR+JMqGtPWuc/LixtCu/SzA6siMKCTZfUp/3nqiWQiYV
zyYCuUI9MTaS0/LCfEclORE2GU5cED4LJli5iZFcJ8RXXTfaCncIeYFFvJTPf9TP
mbKS8QGPYMPdtwsvqBEpej3pDXHetWuIIchPokq/rSa3QX7NmBhvh14ptaIu0usn
i+5XvExH4a5RC0qgHFdLeYskzlRqw3dLwGHYZZ8geLaSrLSdla2rjQFzZhEcIDKI
FnGaoAj0B3WtpJPvhmWW/1Ecryq0iOgtdNXdYxnun8eCEW6Bo5ebAW7NAI9kmWto
i+YFsVUYAZF+gP856BSaiDMFi7LV4bOu9p78o0s6DGmBe+yVPW1Lo7Vi0X8dcLnZ
07Cy0JoN+QRlqgMAEQEAAbQ4Q2xvdWRzbWl0aCBQYWNrYWdlIChpc2Mva2VhLTMt
MCkgPHN1cHBvcnRAY2xvdWRzbWl0aC5pbz6JAc4EEwEIADgWIQSdpXC7GSIRiF5O
soCxbETNRVFMPAUCaFUnDwIbLwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRCx
bETNRVFMPPxAC/0eSSK+2Z4AOsyGun2zBDLPp3qEFrAl5KjAeZCgtYJs3UiQ65DX
0iuvdq39SRWkSRw5w5og+nZbPdDzhw3KFSVgdCsQBv83DUH0Zlmn5Wf6eTh72T5F
lmaaE02picOD3/9L0RdxZOEns/19f2OtSzRHxRMKuv7crcAsnJlkWYP2w96AM0ln
QqmpVDbI8XWtQclJUkPPU+I/m6nG7Z+tc8miJ1uBfA0wP22Zj6HzRTWf9patcfTy
IDr9rO5KmiAlO+f3YbVsKGNcuxdbMusDwpe13BRfKFDlwLKbdrSeSIw1JQc2uhhX
/u1QTAXfLSoP4VAYwbfotgG9a/LKRJGG/M9mMtroOQYO15y+Vo2uSN4q5krv589h
l6MAPFr2sDiedibMl9SGAPtT83afCrSZ6BgobytsdtV3u2WOqxrVUXDpvhZKjxX6
pXrrSV9tPhZlq5pZvnDCS392FlMfHmjR4BUxzwD4Wnax8G7uQfEUWMkTaqQAZfuN
EsbY2TeLjn3ZojI=
=+igW
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -4,6 +4,7 @@ set timeout=10
insmod serial
serial --unit=0 --speed=115200
insmod gzio
insmod part_msdos
insmod ext2
insmod efi_gop

View File

@ -0,0 +1,31 @@
#!/bin/sh
GRUB_PATH=boot/grub/grub.cfg
ISOLINUX_PATH=isolinux/live.cfg
KVM_CONSOLE="console=ttyS0,115200 console=tty0"
SERIAL_CONSOLE="console=tty0 console=ttyS0,115200"
# Grub.cfg Update
GRUB_MENUENTRY=$(sed -e '/menuentry.*hotkey.*/,/^}/!d' -e 's/--hotkey=l//g' $GRUB_PATH)
# Update KVM menuentry name
sed -i 's/"Live system \((.*vyos)\)"/"Live system \1 - KVM console"/' $GRUB_PATH
# Insert serial menuentry
echo "$GRUB_MENUENTRY" | sed \
-e 's/"Live system \((.*vyos)\)"/"Live system \1 - Serial console"/' \
-e "s/$KVM_CONSOLE/$SERIAL_CONSOLE/g" >> $GRUB_PATH
# Live.cfg Update
ISOLINUX_MENUENTRY=$(sed -e '/label live-\(.*\)-vyos$/,/^\tappend.*/!d' $ISOLINUX_PATH)
# Update KVM menuentry name
sed -i 's/Live system \((.*vyos)\)/Live system \1 - KVM console/' $ISOLINUX_PATH
# Insert serial menuentry
echo "\n$ISOLINUX_MENUENTRY" | sed \
-e 's/live-\(.*\)-vyos/live-\1-vyos-serial/' \
-e '/^\tmenu default/d' \
-e 's/Live system \((.*vyos)\)/Live system \1 - Serial console/' \
-e "s/$KVM_CONSOLE/$SERIAL_CONSOLE/g" >> $ISOLINUX_PATH

View File

@ -0,0 +1,7 @@
#!/bin/sh
# Delete Dropbear SSH keys that might be generated
# by postinst scripts
# to prevent non-unique keys from appearing in images
rm -f /etc/dropbear/dropbear_*_host_key

View File

@ -1,11 +1,15 @@
#!/bin/sh
echo I: Disabling services
systemctl disable syslog.service
systemctl disable rsyslog.service
systemctl disable arpwatch.service
systemctl disable smartd.service
systemctl disable isc-dhcp-server.service
systemctl disable isc-kea-dhcp4-server.service
systemctl disable isc-kea-dhcp6-server.service
systemctl disable isc-kea-dhcp-ddns-server.service
systemctl disable isc-dhcp-relay.service
systemctl disable nfacctd.service
systemctl disable pmacctd.service
systemctl disable sfacctd.service
systemctl disable uacctd.service
systemctl disable ssh.service
@ -18,7 +22,6 @@ systemctl disable conntrackd.service
systemctl disable 'udp-broadcast-relay@*.service'
systemctl disable pdns-recursor.service
systemctl disable tftpd-hpa.service
systemctl disable logd.service
systemctl disable frr.service
systemctl disable salt-minion.service
systemctl disable certbot.service
@ -26,7 +29,6 @@ systemctl disable certbot.timer
systemctl disable nginx.service
systemctl disable wpa_supplicant.service
systemctl disable squid.service
systemctl disable heartbeat.service
systemctl disable apt-daily.service
systemctl disable apt-daily.timer
systemctl disable apt-daily-upgrade.timer
@ -39,7 +41,6 @@ systemctl disable snmpd.service
systemctl disable conserver-server.service
systemctl disable dropbear.service
systemctl disable fancontrol.service
systemctl disable fastnetmon.service
systemctl disable ddclient.service
systemctl disable ocserv.service
systemctl disable tuned.service
@ -59,25 +60,25 @@ systemctl disable atop-rotate.timer
systemctl disable ModemManager.service
systemctl disable dnsdist.service
systemctl disable haproxy.service
systemctl disable miniupnpd.service
systemctl disable owamp-server.service
systemctl disable twamp-server.service
systemctl disable podman-auto-update.service
systemctl disable podman-auto-update.timer
systemctl disable podman-restart.service
systemctl disable vyos-wan-load-balance.service
systemctl disable nvmf-autoconnect.service
systemctl disable vpp.service
systemctl disable dpkg-db-backup.timer
systemctl disable dpkg-db-backup.service
systemctl disable zabbix-agent2.service
systemctl disable suricata.service
systemctl disable vyconfd.service
systemctl disable vpp.service
systemctl disable netplug.service
echo I: Enabling services
systemctl enable ssh-session-cleanup.service
systemctl enable vyos-hostsd.service
systemctl enable acpid.service
systemctl enable vyos-router.service
systemctl enable vyos-configd.service
systemctl enable vyos-grub-update.service
systemctl enable vyos-commitd.service
echo I: Masking services
systemctl mask systemd-journald-audit.socket

View File

@ -1,6 +1,9 @@
#!/bin/sh
echo I: Creating kernel symlinks.
echo I: Creating Linux Kernel symbolic links
cd /boot
ln -s initrd.img-* initrd.img
ln -s vmlinuz-* vmlinuz
echo I: Remove Linux Kernel symbolic link to source folder
rm -rf /lib/modules/*/build

View File

@ -1,9 +0,0 @@
#!/bin/sh
if [ -f /etc/dhcp/dhclient-exit-hooks.d/ddclient ]; then
rm -f /etc/dhcp/dhclient-exit-hooks.d/ddclient
fi
if [ -f /etc/ddclient.conf ]; then
rm -f /etc/ddclient.conf
fi

View File

@ -0,0 +1,4 @@
#!/bin/sh
echo I: Choose systemd multi-user.target over graphical.target
systemctl set-default -f multi-user.target

View File

@ -1,6 +0,0 @@
#!/bin/sh
if [ -f /etc/cron.d/atop ]; then
rm -f /etc/cron.d/atop
fi

View File

@ -1,72 +0,0 @@
#!/usr/bin/env python3
# For FRR to work in VyOS as expected we need a few fixups
#
# 1. Enable daemons we use in /etc/frr/daemons
# 2. Set the VRF backend of Zebra to netns (-n option) in /etc/frr/daemons.conf
# Otherwise multiple routing tables for PBR won't work
# 3. Create empty configs for daemons with use
# That is to make them possible to start on boot before config is loaded
#
import os
daemons = """
zebra=yes
bgpd=yes
ospfd=yes
ospf6d=yes
ripd=yes
ripngd=yes
isisd=yes
pimd=no
pim6d=yes
ldpd=yes
nhrpd=no
eigrpd=yes
babeld=yes
sharpd=no
pbrd=no
bfdd=yes
staticd=yes
vtysh_enable=yes
zebra_options="-s 90000000 --daemon -A 127.0.0.1 -M snmp"
bgpd_options="--daemon -A 127.0.0.1 -M snmp -M rpki -M bmp"
ospfd_options="--daemon -A 127.0.0.1 -M snmp"
ospf6d_options="--daemon -A ::1 -M snmp"
ripd_options="--daemon -A 127.0.0.1 -M snmp"
ripngd_options="--daemon -A ::1"
isisd_options="--daemon -A 127.0.0.1 -M snmp"
pimd_options="--daemon -A 127.0.0.1"
pim6d_options=""--daemon -A ::1"
ldpd_options="--daemon -A 127.0.0.1"
nhrpd_options="--daemon -A 127.0.0.1"
mgmtd_options=" --daemon -A 127.0.0.1"
eigrpd_options="--daemon -A 127.0.0.1"
babeld_options="--daemon -A 127.0.0.1"
sharpd_options="--daemon -A 127.0.0.1"
pbrd_options="--daemon -A 127.0.0.1"
staticd_options="--daemon -A 127.0.0.1"
bfdd_options="--daemon -A 127.0.0.1"
watchfrr_enable=no
valgrind_enable=no
"""
frr_conf = """
log syslog
log facility local7
"""
frr_log = ''
with open("/etc/frr/daemons", "w") as f:
f.write(daemons)
with open("/etc/frr/frr.conf", "w") as f:
f.write(frr_conf)
# Prevent writing logs to /var/log/frr/frr.log. T2061
with open("/etc/rsyslog.d/45-frr.conf", "w") as f:
f.write(frr_log)

View File

@ -0,0 +1,13 @@
#!/bin/sh
CRACKLIB_DIR=/var/cache/cracklib
CRACKLIB_DB=cracklib_dict
if [ ! -f "${CRACKLIB_DIR}/${CRACKLIB_DB}.pwd" ]; then
echo "I: Creating the cracklib database ${CRACKLIB_DIR}/${CRACKLIB_DB}"
mkdir -p $CRACKLIB_DIR
/usr/sbin/create-cracklib-dict -o $CRACKLIB_DIR/$CRACKLIB_DB \
/usr/share/dict/cracklib-small
fi

View File

@ -1,42 +0,0 @@
#!/bin/bash
# Delete various unused files and directories in order free some space and shrink imagesize.
# We do not need any documentation on the system.
# Copyright/licenses files are ignored for deletion.
shopt -s extglob
rm -rf /usr/share/doc/*/!(copyright*|README*) /usr/share/doc-base
# We do not need any manpages on the system since man-binary is missing.
rm -rf /usr/local/man
rm -rf /usr/local/share/man
rm -rf /usr/share/man
# We do not need any games on the system.
rm -rf /usr/games
rm -rf /usr/local/games
# We do not need any caches on the system (will be recreated when needed).
rm -rf /var/cache/*
# We do not need any log-files on the system (will be recreated when needed).
rm -rf /var/log/alternatives.log
rm -rf /var/log/bootstrap.log
rm -rf /var/log/dpkg.log
rm -rf /var/log/apt/history.log
rm -rf /var/log/apt/term.log
rm -rf /var/log/nginx/access.log
rm -rf /var/log/nginx/error.log
rm -rf /var/log/squidguard/squidGuard.log
rm -rf /var/log/stunnel4/stunnel.log
# We do not need any backup-files on the system.
rm -rf /etc/sudoers.bak
rm -rf /etc/xml/catalog.old
rm -rf /etc/xml/polkitd.xml.old
rm -rf /etc/xml/xml-core.xml.old
rm -rf /root/.gnupg/pubring.kbx~
rm -rf /var/lib/dpkg/diversions-old
rm -rf /var/lib/dpkg/status-old
rm -rf /var/lib/sgml-base/supercatalog.old

View File

@ -1,11 +0,0 @@
#!/bin/sh
# we use systemd to control ISC daemons from within vyos-1x
FILES="/etc/default/isc-dhcp-server /etc/default/isc-dhcp-relay"
for FILE in ${FILES}
do
if [ -f ${FILE} ]; then
rm -f ${FILE}
fi
done

View File

@ -1,7 +0,0 @@
#!/bin/sh
# 99-default.link rule always calls link_config that trying to set
# autonegotiation and duplex even for PPP interfaces.
# Need to delete this rule to prevent overhead on interface creation stage
rm /lib/systemd/network/99-default.link

View File

@ -1,12 +0,0 @@
#!/bin/sh
if ! command -v gpg &> /dev/null; then
echo "gpg binary could not be found"
exit 1
fi
GPG_KEY="/usr/share/vyos/keys/vyos-release.pub.asc"
echo I: Import GPG key
gpg --import ${GPG_KEY}
exit $?

View File

@ -1,4 +0,0 @@
#!/bin/sh
if [ -f /etc/update-motd.d/10-uname ]; then
rm -f /etc/update-motd.d/10-uname
fi

View File

@ -0,0 +1,75 @@
#!/bin/sh
#
# Discard symbols and other data from object files.
#
# Reference:
# https://www.linuxfromscratch.org/lfs/view/systemd/chapter08/stripping.html
# https://www.debian.org/doc/debian-policy/ch-files.html
#
# Set variables.
STRIPCMD_REGULAR="strip --remove-section=.comment --remove-section=.note --preserve-dates"
STRIPCMD_DEBUG="strip --strip-debug --remove-section=.comment --remove-section=.note --preserve-dates"
STRIPCMD_UNNEEDED="strip --strip-unneeded --remove-section=.comment --remove-section=.note --preserve-dates"
STRIPDIR_REGULAR="
"
STRIPDIR_DEBUG="
"
STRIPDIR_UNNEEDED="
/etc/hsflowd/modules
/usr/bin
/usr/lib/openvpn
/usr/lib/x86_64-linux-gnu
/usr/lib32
/usr/lib64
/usr/libx32
/usr/sbin
"
STRIP_EXCLUDE=`dpkg-query -L libbinutils | grep '.so'`
# Perform stuff.
echo "Stripping symbols..."
# List excluded files.
echo "Exclude files: ${STRIP_EXCLUDE}"
# CMD: strip
for DIR in ${STRIPDIR_REGULAR}; do
echo "Parse dir (strip): ${DIR}"
find ${DIR} -type f -exec file {} \; | grep 'not stripped' | cut -d ":" -f 1 | while read FILE; do
echo "${STRIP_EXCLUDE}" | grep -F -q -w "${FILE}"
if [ $? -ne 0 ]; then
echo "Strip file (strip): ${FILE}"
${STRIPCMD_REGULAR} ${FILE}
fi
done
done
# CMD: strip --strip-debug
for DIR in ${STRIPDIR_DEBUG}; do
echo "Parse dir (strip-debug): ${DIR}"
find ${DIR} -type f -exec file {} \; | grep 'not stripped' | cut -d ":" -f 1 | while read FILE; do
echo "${STRIP_EXCLUDE}" | grep -F -q -w "${FILE}"
if [ $? -ne 0 ]; then
echo "Strip file (strip-debug): ${FILE}"
${STRIPCMD_DEBUG} ${FILE}
fi
done
done
# CMD: strip --strip-unneeded
for DIR in ${STRIPDIR_UNNEEDED}; do
echo "Parse dir (strip-unneeded: ${DIR}"
find ${DIR} -type f -exec file {} \; | grep 'not stripped' | cut -d ":" -f 1 | while read FILE; do
echo "${STRIP_EXCLUDE}" | grep -F -q -w "${FILE}"
if [ $? -ne 0 ]; then
echo "Strip file (strip-unneeded): ${FILE}"
${STRIPCMD_UNNEEDED} ${FILE}
fi
done
done
# Remove binutils package.
apt-get -y purge --autoremove binutils

View File

@ -0,0 +1,31 @@
#!/bin/sh
SIGN_FILE=$(find /usr/lib -name sign-file)
KERNEL_KEY="/var/lib/shim-signed/mok/vyos-dev-2025-linux.key"
KERNEL_CERT="/var/lib/shim-signed/mok/vyos-dev-2025-linux.pem"
VMLINUZ=$(readlink /boot/vmlinuz)
# All Linux Kernel modules need to be cryptographically signed
find /lib/modules -type f -name \*.ko | while read MODULE; do
modinfo ${MODULE} | grep -q "signer:"
if [ $? != 0 ]; then
echo "E: Module ${MODULE} is not signed!"
read -n 1 -s -r -p "Press any key to continue"
fi
done
if [ ! -f ${KERNEL_KEY} ] && [ ! -f ${KERNEL_CERT} ]; then
echo "I: Signing key for Linux Kernel not found - Secure Boot not possible"
else
echo "I: Signing Linux Kernel for Secure Boot"
sbsign --key ${KERNEL_KEY} --cert ${KERNEL_CERT} /boot/${VMLINUZ} --output /boot/${VMLINUZ}
sbverify --list /boot/${VMLINUZ}
rm -f ${KERNEL_KEY}
fi
for cert in $(ls /var/lib/shim-signed/mok/); do
if grep -rq "BEGIN PRIVATE KEY" /var/lib/shim-signed/mok/${cert}; then
echo "Found private key - bailing out"
exit 1
fi
done

View File

@ -0,0 +1,10 @@
# VyOS 1.3.x image upgrade scipt checked if an image file was a valid ISO file
# by grepping it for "ISO9660".
# (The correct way to do that would be to use file/libmagic,
# but we cannot change the past).
# At some point something has changed in xorriso or some other tool
# and images no longer include that string.
# so the image validity check fails.
# To allow direct upgrades from older versions,
# we artificially include that string to make the old check pass.
ISO9660

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -33,3 +33,4 @@ copy_exec /usr/sbin/fsck.ext4
# copy other files ("other" here is a file type, so do not delete this keyword)
copy_file other /etc/ssl/certs/ca-certificates.crt
copy_file other /etc/ssl/openssl.cnf

View File

@ -1 +0,0 @@
options ixgbe allow_unsupported_sfp=1

View File

@ -53,3 +53,4 @@ ShowStatus=yes
#DefaultLimitNICE=
#DefaultLimitRTPRIO=
#DefaultLimitRTTIME=
StatusUnitFormat=description

View File

@ -1,13 +0,0 @@
[Unit]
Description=OpenBSD Secure Shell session cleanup
Wants=network.target
After=network.target
[Service]
ExecStart=/bin/true
ExecStop=/usr/lib/openssh/ssh-session-cleanup
RemainAfterExit=yes
Type=oneshot
[Install]
WantedBy=multi-user.target

View File

@ -1,11 +0,0 @@
#! /bin/sh
ssh_session_pattern='sshd: \S.*@pts/[0-9]+'
IFS="$IFS@"
pgrep -a -f "$ssh_session_pattern" | while read pid daemon user pty; do
echo "Found ${daemon%:} session $pid on $pty; sending SIGTERM"
kill "$pid" || true
done
exit 0

View File

@ -1,9 +0,0 @@
Welcome to VyOS!
Check out project news at https://blog.vyos.io
and feel free to report bugs at https://vyos.dev
You can change this banner using "set system login banner post-login" command.
VyOS is a free software distribution that includes multiple components,
you can check individual component licenses under /usr/share/doc/*/copyright

View File

@ -1,52 +0,0 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.22 (GNU/Linux)
mQINBFXKsiIBEACyid9PR/v56pSRG8VgQyRwvzoI7rLErZ8BCQA2WFxA6+zNy+6G
+0E/6XAOzE+VHli+wtJpiVJwAh+wWuqzOmv9css2fdJxpMW87pJAS2i3EVVVf6ab
wU848JYLGzc9y7gZrnT1m2fNh4MXkZBNDp780WpOZx8roZq5X+j+Y5hk5KcLiBn/
lh9Zoh8yzrWDSXQsz0BGoAbVnLUEWyo0tcRcHuC0eLx6oNG/IHvd/+kxWB1uULHU
SlB/6vcx56lLqgzywkmhP01050ZDyTqrFRIfrvw6gLQaWlgR3lB93txvF/sz87Il
VblV7e6HEyVUQxedDS8ikOyzdb5r9a6Zt/j8ZPSntFNM6OcKAI7U1nDD3FVOhlVn
7lhUiNc+/qjC+pR9CrZjr/BTWE7Zpi6/kzeH4eAkfjyALj18oC5udJDjXE5daTL3
k9difHf74VkZm29Cy9M3zPckOZpsGiBl8YQsf+RXSBMDVYRKZ1BNNLDofm4ZGijK
mriXcaY+VIeVB26J8m8y0zN4/ZdioJXRcy72c1KusRt8e/TsqtC9UFK05YpzRm5R
/nwxDFYb7EdY/vHUFOmfwXLaRvyZtRJ9LwvRUAqgRbbRZg3ET/tn6JZk8hqx3e1M
IxuskOB19t5vWyAo/TLGIFw44SErrq9jnpqgclTSRgFjcjHEm061r4vjoQARAQAB
tDZWeU9TIE1haW50YWluZXJzIChWeU9TIFJlbGVhc2UpIDxtYWludGFpbmVyc0B2
eW9zLm5ldD6JAjgEEwECACIFAlXKsiICGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4B
AheAAAoJEP0iAoWg/m1+xbgP+QEDYZi5dA4IPY+vU1L95Bavju2m2o35TSUDPg5B
jfAGuhbsNUceU+l/yUlxjpKEmvshyW3GHR5QzUaKGup/ZDBo1CBxZNhpSlFida2E
KAYTx4vHk3MRXcntiAj/hIJwRtzCUp5UQIqHoU8dmHoHOkKEP+zhJuR6E2s+WwDr
nTwE6eRa0g/AHY+chj2Je6flpPm2CKoTfUE7a2yBBU3wPq3rGtsQgVxPAxHRZz7A
w4AjH3NM1Uo3etuiDnGkJAuoKKb1J4X3w2QlbwlR4cODLKhJXHIufwaGtRwEin9S
1l2bL8V3gy2Hv3D2t9TQZuR5NUHsibJRXLSa8WnSCcc6Bij5aqfdpYB+YvKH/rIm
GvYPmLZDfKGkx0JE4/qtfFjiPJ5VE7BxNyliEw/rnQsxWAGPqLlL61SD8w5jGkw3
CinwO3sccTVcPz9b6A1RsbBVhTJJX5lcPn1lkOEVwQ7l8bRhOKCMe0P53qEDcLCd
KcXNnAFbVes9u+kfUQ4oxS0G2JS9ISVNmune+uv+JR7KqSdOuRYlyXA9uTjgWz4y
Cs7RS+CpkJFqrqOtS1rmuDW9Ea4PA8ygGlisM5d/AlVkniHz/2JYtgetiLCj9mfE
MzQpgnldNSPumKqJ3wwmCNisE+lXQ5UXCaoaeqF/qX1ykybQn41LQ+0xT5Uvy7sL
9IwGuQINBFXKsiIBEACg2mP3QYkXdgWTK5JyTGyttE6bDC9uqsK8dc1J66Tjd5Ly
Be0amO+88GHXa0o5Smwk2QNoxsRR41G/D/eAeGsuOEYnePROEr3tcLnDjo4KLgQ+
H69zRPn77sdP3A34Jgp+QIzByJWM7Cnim31quQP3qal2QdpGJcT/jDJWdticN76a
Biaz+HN13LyvZM+DWhUDttbjAJc+TEwF9YzIrU+3AzkTRDWkRh4kNIQxjlpNzvho
9V75riVqg2vtgPwttPEhOLb0oMzy4ADdfezrfVvvMb4M4kY9npu4MlSkNTM97F/I
QKy90JuSUIjE05AO+PDXJF4Fd5dcpmukLV/2nV0WM2LAERpJUuAgkZN6pNUFVISR
+nSfgR7wvqeDY9NigHrJqJbSEgaBUs6RTk5hait2wnNKLJajlu3aQ2/QfRT/kG3h
ClKUz3Ju7NCURmFE6mfsdsVrlIsEjHr/dPbXRswXgC9FLlXpWgAEDYi9Wdxxz8o9
JDWrVYdKRGG+OpLFh8AP6QL3YnZF+p1oxGUQ5ugXauAJ9YS55pbzaUFP8oOO2P1Q
BeYnKRs1GcMI8KWtE/fze9C9gZ7Dqju7ZFEyllM4v3lzjhT8muMSAhw41J22mSx6
VRkQVRIAvPDFES45IbB6EEGhDDg4pD2az8Q7i7Uc6/olEmpVONSOZEEPsQe/2wAR
AQABiQIfBBgBAgAJBQJVyrIiAhsMAAoJEP0iAoWg/m1+niUQAKTxwJ9PTAfB+XDk
3qH3n+T49O2wP3fhBI0EGhJp9Xbx29G7qfEeqcQm69/qSq2/0HQOc+w/g8yy71jA
6rPuozCraoN7Im09rQ2NqIhPK/1w5ZvgNVC0NtcMigX9MiSARePKygAHOPHtrhyO
rJQyu8E3cV3VRT4qhqIqXs8Ydc9vL3ZrJbhcHQuSLdZxM1k+DahCJgwWabDCUizm
sVP3epAP19FP8sNtHi0P1LC0kq6/0qJot+4iBiRwXMervCD5ExdOm2ugvSgghdYN
BikFHvmsCxbZAQjykQ6TMn+vkmcEz4fGAn4L7Nx4paKEtXaAFO8TJmFjOlGUthEm
CtHDKjCTh9WV4pwG2WnXuACjnJcs6LcK377EjWU25H4y1ff+NDIUg/DWfSS85iIc
UgkOlQO6HJy0O96L5uxn7VJpXNYFa20lpfTVZv7uu3BC3RW/FyOYsGtSiUKYq6cb
CMxGTfFxGeynwIlPRlH68BqH6ctR/mVdo+5UIWsChSnNd1GreIEI6p2nBk3mc7jZ
7pTEHpjarwOjs/S/lK+vLW53CSFimmW4lw3MwqiyAkxl0tHAT7QMHH9Rgw2HF/g6
XD76fpFdMT856dsuf+j2uuJFlFe5B1fERBzeU18MxML0VpDmGFEaxxypfACeI/iu
8vzPzaWHhkOkU8/J/Ci7+vNtUOZb
=Ld8S
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -0,0 +1,2 @@
untrusted comment: minisign public key D3643767F448688
RWSIhkR/dkM2DSaBRniv/bbbAf8hmDqdbOEmgXkf1RxRoxzodgKcDyGq

View File

@ -1,6 +1,4 @@
debconf
gpgv
gnupg
vyos-world
vyos-1x
vyos-user-utils
zstd

View File

@ -2,3 +2,4 @@ systemd-sysv
systemd-bootchart
ncurses-term
kitty-terminfo
binutils

View File

@ -0,0 +1,63 @@
# Exclude various unused files and directories in order to free some space and shrink imagesize.
#
# For information on how to use wildcards properly (Anchored and Non-anchored excludes):
#
# https://github.com/plougher/squashfs-tools/blob/master/RELEASE-READMEs/README-3.3
#
# Note:
#
# - root starts without leading '/'.
#
# Txxx: Drop isc-dhcp helper files from /etc/default.
# We use systemd to control ISC daemons from within vyos-1x.
etc/default/isc-dhcp-server
etc/default/isc-dhcp-relay
# T2185: Clean leftover files (ddclient) from base package.
etc/dhcp/dhclient-exit-hooks.d/ddclient
etc/ddclient.conf
# T3242: Add hook to prevent link_config redundancy call in systemd-udev.
# 99-default.link rule always calls link_config thats trying to set autonegotiation and duplex even for PPP interfaces.
# Need to delete this rule to prevent overhead on interface creation stage.
lib/systemd/network/99-default.link
# T3774: Disabled atop services.
etc/cron.d/atop
# T3912: Remove superfluous motd.d kernel version shell script.
etc/update-motd.d/10-uname
# T4415: We do not need any documentation on the system.
# Copyright/licenses files are ignored for deletion.
usr/share/doc/*/!(copyright*|README*)
usr/share/doc-base
# T5468: We do not need any manpages on the system since man-binary is missing.
usr/local/man/*
usr/local/share/man/*
usr/share/man/*
# T5511: We do not need any games on the system.
usr/games/*
usr/local/games/*
# T5511: We do not need any caches on the system (will be recreated when needed).
# T7278: We need directory created by python3-cracklib for password checks
var/cache/!(cracklib)
# T5511: We do not need any log-files on the system (will be recreated when needed).
var/log/*.log
var/log/*/*.log
var/log/*/*.log.xz
# T5511: We do not need any backup-files on the system (will be recreated when needed).
... *.bak
... *.old
... *.kbx~
var/lib/dpkg/*-old
# T5624: Remove the Debian version file to avoid false positives from security scanners.
etc/debian_version

View File

@ -1,3 +1,3 @@
{
"current": "1.4"
"current": "1.5"
}

View File

@ -1,6 +1,6 @@
# syntax = docker/dockerfile:1
# Copyright (C) 2020 VyOS maintainers and contributors
# Copyright (C) 2020-2023 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
@ -17,37 +17,63 @@
# Define arguments for VyOS image
ARG VYOS_VERSION
ARG BUILD_DATE
ARG DEBIAN_VERSION
# Use Debian as base layer
FROM debian:${DEBIAN_VERSION}-slim
# Copy installer script and default build settings
COPY [ "data/defaults.json", "data/live-build-config/archives/*", "docker-vyos/vyos_install_common.sh", "docker-vyos/vyos_install_stage_01.sh", "/tmp/" ]
COPY [ "data/live-build-config/hooks/live/*", "/tmp/hooks/" ]
FROM debian:bookworm-slim
LABEL authors="VyOS Maintainers <maintainers@vyos.io>"
ENV DEBIAN_FRONTEND noninteractive
RUN /bin/echo -e 'APT::Install-Recommends "0";\nAPT::Install-Suggests "0";' > /etc/apt/apt.conf.d/01norecommends
# Clean cache after each apt-get install command so that it is not stored in the image
RUN /bin/echo -e 'DPkg::Post-Invoke {"/bin/rm -f /var/cache/apt/archives/*.deb /var/lib/apt/lists/* || true";};' > /etc/apt/apt.conf.d/clean
# Base packaged needed to build packages and their package dependencies
RUN apt-get update && apt-get install -y \
ca-certificates \
gnupg \
curl \
fuse-overlayfs \
jq \
yq
# Copy installer script and default build settings
COPY [ "data/defaults.toml", \
"data/live-build-config/archives/*", \
"docker-vyos/vyos_install_common.sh", \
"docker-vyos/vyos_install_stage_01.sh", \
"/tmp/"]
COPY [ "data/architectures/*", "/tmp/architectures_triage/" ]
COPY [ "data/live-build-config/hooks/live/*", "/tmp/hooks/" ]
# Install VyOS dependencies
WORKDIR /tmp
RUN bash -c 'mv /tmp/architectures_triage/$(dpkg --print-architecture).toml /tmp && rm -rf /tmp/architectures_triage'
RUN bash /tmp/vyos_install_stage_01.sh
# Install VyOS specific software
COPY [ "data/defaults.json", "docker-vyos/vyos_install_common.sh", "docker-vyos/vyos_install_stage_02.sh", "/tmp/" ]
COPY [ "data/defaults.toml", \
"docker-vyos/vyos_install_common.sh", \
"docker-vyos/vyos_install_stage_02.sh", "/tmp/" ]
COPY [ "data/architectures/*", "/tmp/architectures_triage/" ]
RUN bash -c 'mv /tmp/architectures_triage/$(dpkg --print-architecture).toml /tmp && rm -rf /tmp/architectures_triage'
RUN bash /tmp/vyos_install_stage_02.sh
# Tune system for VyOS
COPY [ "docker-vyos/vyos_install_common.sh", "docker-vyos/vyos_install_stage_03.sh", "/tmp/" ]
# Copy skel for bash profile
COPY data/live-build-config/includes.chroot/etc/skel/.bashrc /etc/skel/.bashrc
# Copy default config
COPY data/live-build-config/includes.chroot/opt/vyatta/etc/config.boot.default /opt/vyatta/etc/
COPY tools/container/config.boot.default /opt/vyatta/etc/
RUN bash /tmp/vyos_install_stage_03.sh
# Delete installer scripts
RUN rm -rf /tmp/*
# Remove cleanup script so that in-container apt-get install uses cache
RUN rm /etc/apt/apt.conf.d/clean
# Make changes specific to the container environment
@ -65,4 +91,15 @@ LABEL maintainer="support@vyos.io" \
description="VyOS for Docker" \
vendor="Sentrium S.L." \
version=${VYOS_VERSION} \
io.vyos.build-date=${BUILD_DATE}
io.vyos.build-date=${BUILD_DATE} \
org.opencontainers.image.authors="support@vyos.io" \
org.opencontainers.image.created=${BUILD_DATE} \
org.opencontainers.image.version=${VYOS_VERSION} \
org.opencontainers.image.url="https://github.com/vyos/vyos-build" \
org.opencontainers.image.documentation="https://docs.vyos.io/en/latest/contributing/build-vyos.html" \
org.opencontainers.image.source="https://github.com/vyos/vyos-build" \
org.opencontainers.image.vendor="Sentrium S.L." \
org.opencontainers.image.licenses="GNU" \
org.opencontainers.image.title="vyos-build" \
org.opencontainers.image.description="VyOS for Docker" \
org.opencontainers.image.base.name="docker.io/debian/debian:${DEBIAN_VERSION}-slim"

View File

@ -2,58 +2,81 @@
VyOS can be run as a Docker container on a Linux host with a compatible kernel.
## Build Container
## Building Docker image
To build a Docker image you need to have the whole `vyos-build` repository, not
only a folder with Dockerfile, because some files from this repository are
required for building.
To build a Docker image you need to have the whole `vyos-build` repository, not only a folder with Dockerfile, because some files from this repository are required for building.
Docker image with VyOS can be built on Linux host with the next command:
```
docker build --compress -f Dockerfile -t vyos:version-`date -u +%Y%m%d%H%M%S` --build-arg BUILD_DATE="`date -u --rfc-3339=seconds`" --build-arg VYOS_VERSION=version --build-arg DEBIAN_VERSION=debian --progress plain ..
```console
docker build --compress --file Dockerfile \
--tag vyos:version-`date -u +%Y%m%d%H%M%S` \
--build-arg BUILD_DATE="`date -u --rfc-3339=seconds`" \
--build-arg VYOS_VERSION=version \
--build-arg DEBIAN_VERSION=debian \
--progress plain ..
```
Or, if you want to rebuild completely from the scratch (without cache):
```
docker build --no-cache --pull --compress -f Dockerfile -t vyos:version-`date -u +%Y%m%d%H%M%S` --build-arg BUILD_DATE="`date -u --rfc-3339=seconds`" --build-arg VYOS_VERSION=version --build-arg DEBIAN_VERSION=debian --progress plain ..
```console
docker build --no-cache --pull --compress --file Dockerfile \
--tag vyos:version-`date -u +%Y%m%d%H%M%S` \
--build-arg BUILD_DATE="`date -u --rfc-3339=seconds`" \
--build-arg VYOS_VERSION=version \
--build-arg DEBIAN_VERSION=debian \
--progress plain ..
```
> **NOTE:** You must use proper version value for `DEBIAN_VERSION` variable. It can be only `jessie` (for VyOS 1.2) or `buster` (for VyOS 1.3).
> **_NOTE:_** You must use proper version value for `DEBIAN_VERSION` variable.
It can be only `jessie` (for VyOS 1.2) or `buster` (for VyOS 1.3).
## Running Docker image
## Run Container
Docker container with VyOS can be running with the next command:
```
docker run -v /lib/modules:/lib/modules --privileged --name vyos_inside_docker -d vyos:version
```console
docker run --privileged --detach \
--volume /lib/modules:/lib/modules \
--name vyos_inside_docker vyos:version
```
You need to use the `--privileged` flag because the system actively interacts with a host kernel to perform routing operations and tune networking options.
You need to use the `--privileged` flag because the system actively interacts
with a host kernel to perform routing operations and tune networking options.
**Experimantal:** You can limit access to some system resources with:
```
docker run --tmpfs /tmp --tmpfs /run --tmpfs /run/lock -v /sys/fs/cgroup:/sys/fs/cgroup:ro -v /lib/modules:/lib/modules --privileged --name vyos_inside_docker -d vyos:version
```console
docker run --privileged --detach \
--tmpfs /tmp \
--tmpfs /run \
--tmpfs /run/lock \
--volume /lib/modules:/lib/modules:ro \
--volume /sys/fs/cgroup:/sys/fs/cgroup:ro \
--name vyos_inside_docker vyos:version
```
## Logging into a VyOS container
### Log into container
To open VyOS CLI, you can use SSH connection to the Docker container or run on host:
To open VyOS CLI, you can use SSH connection to the Docker container or run
on host:
```
```console
docker exec -it vyos_inside_docker su vyos
```
## Troubleshooting
If in VyOS appears IPv6-related errors, for example, it cannot assign an IPv6 for an interface, it is necessary to enable IPv6 support in Docker. This can be done, by editing `/etc/docker/daemon.json`:
If in VyOS appears IPv6-related errors, for example, it cannot assign an IPv6
address for an interface, it is necessary to enable IPv6 support in Docker.
```
This can be done, by editing `/etc/docker/daemon.json`:
```console
{
"ipv6": true,
"fixed-cidr-v6": "fe80::/64"
}
```

View File

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (C) 2020 VyOS maintainers and contributors
# Copyright (C) 2020-2023 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
@ -14,7 +14,6 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Set environment variables
export DEBIAN_FRONTEND="noninteractive"
@ -23,21 +22,21 @@ function prepare_apt() {
# Update packages list
apt-get update
# Install jq (required to easily extract variables from defaults.json)
apt-get install -y --no-install-recommends jq gnupg
# Add VyOS repository to the system
local APT_VYOS_MIRROR=`jq --raw-output .vyos_mirror /tmp/defaults.json`
local APT_VYOS_BRANCH=`jq --raw-output .vyos_branch /tmp/defaults.json`
local APT_ADDITIONAL_REPOS=`jq --raw-output .additional_repositories[] /tmp/defaults.json`
local RELEASE_TRAIN=`jq --raw-output .release_train /tmp/defaults.json`
local APT_VYOS_MIRROR=$(tomlq --raw-output .vyos_mirror /tmp/defaults.toml)
local APT_VYOS_BRANCH=$(tomlq --raw-output .vyos_branch /tmp/defaults.toml)
local APT_ADDITIONAL_REPOS=$(tomlq --raw-output .additional_repositories[] /tmp/$(dpkg --print-architecture).toml)
local RELEASE_TRAIN=$(tomlq --raw-output .release_train /tmp/defaults.toml)
if [[ "${RELEASE_TRAIN}" == "crux" ]]; then
echo -e "deb ${APT_VYOS_MIRROR}/vyos ${APT_VYOS_BRANCH} main\ndeb ${APT_VYOS_MIRROR}/debian ${APT_VYOS_BRANCH} main\n${APT_ADDITIONAL_REPOS}" > /etc/apt/sources.list.d/vyos.list
fi
echo "APT_VYOS_MIRROR : $APT_VYOS_MIRROR"
echo "APT_VYOS_BRANCH : $APT_VYOS_BRANCH"
echo "APT_ADDITIONAL_REPOS : $APT_ADDITIONAL_REPOS"
echo "RELEASE_TRAIN : $RELEASE_TRAIN"
if [[ "${RELEASE_TRAIN}" == "equuleus" || "${RELEASE_TRAIN}" == "sagitta" ]]; then
echo -e "deb ${APT_VYOS_MIRROR} ${APT_VYOS_BRANCH} main\n${APT_ADDITIONAL_REPOS}" > /etc/apt/sources.list.d/vyos.list
echo -e "deb ${APT_VYOS_MIRROR} ${APT_VYOS_BRANCH} main\n${APT_ADDITIONAL_REPOS}" > /etc/apt/sources.list.d/vyos.list
cat /etc/apt/sources.list.d/vyos.list
if [ ${RELEASE_TRAIN} == "equuleus" ]; then
# Add backports repository
echo -e "deb http://deb.debian.org/debian buster-backports main\ndeb http://deb.debian.org/debian buster-backports non-free" >> /etc/apt/sources.list.d/vyos.list
fi
@ -65,8 +64,6 @@ function prepare_apt() {
# Cleanup APT after finish
function cleanup_apt() {
# delete jq tool
dpkg -P jq
# Clear APT cache
apt-get clean
rm -rf /var/lib/apt/lists/*

View File

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (C) 2020 VyOS maintainers and contributors
# Copyright (C) 2020-2023 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
@ -23,7 +23,9 @@ echo "Configuring APT repositories"
prepare_apt
# Get list of VyOS packages
vyos_packages=(`apt-cache -i depends vyos-world | awk '/Depends:/ { printf("%s ", $2) }'`)
vyos_packages=(
"vyos-1x"
)
# Do not analyze packages, which we do not need in Docker
vyos_packages_filter=(
@ -58,6 +60,7 @@ ignore_list=(
"cluster-glue"
"resource-agents"
"heartbeat"
"podman"
)
# Get list of packages from VYOS repository

View File

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (C) 2020 VyOS maintainers and contributors
# Copyright (C) 2020-2023 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
@ -23,7 +23,9 @@ echo "Configuring APT repositories"
prepare_apt
# Get list of VyOS packages
vyos_packages=(`apt-cache -i depends vyos-world | awk '/Depends:/ { printf("%s ", $2) }'`)
vyos_packages=(
"vyos-1x"
)
# Do not analyze packages, which we do not need in Docker
vyos_packages_filter=(
@ -35,6 +37,8 @@ vyos_packages_filtered=("$(filter_list vyos_packages[@] vyos_packages_filter[@])
vyos_packages_filtered+=(
"uuid"
"jq"
"yq"
"systemd"
)
echo "Packages for installing: ${vyos_packages_filtered[@]}"
@ -43,12 +47,12 @@ echo "Installing VyOS packages"
apt-get install -y --no-install-recommends ${vyos_packages_filtered[@]}
# Create VyOS version file
RELEASAE_TRAIN=`jq --raw-output .release_train /tmp/defaults.json`
RELEASAE_TRAIN=$(tomlq --raw-output .release_train /tmp/defaults.toml)
apt-cache show vyos-1x | awk -v release_train=${RELEASAE_TRAIN} '{ if ($1 == "Version:") version = $2 } END { build_git = "unknown" ; built_by = "Sentrium S.L." ; built_on = strftime("%F %T UTC", systime(), utc) ; "uuid -v 4" | getline build_uuid ; printf("{\"version\": \"%s\", \"build_git\": \"%s\", \"built_on\": \"%s\", \"built_by\": \"%s\", \"build_uuid\": \"%s\", \"release_train\": \"%s\"}", version, build_git, built_on, built_by, build_uuid, release_train) }' | json_pp > /usr/share/vyos/version.json
# Delete what we do not need inside Docker image (this step makes packages database inconsistent)
echo "Deleting what is needless in containers"
dpkg -P --force-depends dosfstools efibootmgr jq gdisk grub-common grub-efi-amd64-bin initscripts installation-report laptop-detect libossp-uuid16 libparted2 libwireshark-data libwireshark5 mdadm parted tshark uuid vyos-qat-kernel-modules wireguard-modules
dpkg -P --force-depends dosfstools efibootmgr yq jq gdisk grub-common grub-efi-amd64-bin initscripts installation-report laptop-detect libossp-uuid16 libparted2 libwireshark-data libwireshark5 mdadm parted tshark uuid
dpkg -l | awk '/linux-image-/ { system("dpkg -P --force-depends " $2) }'
# Delete documentation

View File

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (C) 2020 VyOS maintainers and contributors
# Copyright (C) 2020-2023 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
@ -20,6 +20,7 @@
. vyos_install_common.sh
# Add config partition marker
mkdir -p /opt/vyatta/etc/config
touch /opt/vyatta/etc/config/.vyatta_config
# create folder for configuration mounting
@ -54,10 +55,9 @@ for hook in ${hooks_list[@]}; do
done
# Delete needless options from CLI
# CLI_DELETION=(
# "/opt/vyatta/share/vyatta-cfg/templates/system/host-name/"
# )
# rm -rf ${CLI_DELETION[@]}
CLI_DELETION=(
"/opt/vyatta/share/vyatta-cfg/templates/container/"
)
rm -rf ${CLI_DELETION[@]}
exit 0

View File

@ -1,4 +1,4 @@
# Copyright (C) 2018-2022 VyOS maintainers and contributors
# Copyright (C) 2018-2025 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# in order to easy exprort images built to "external" world
@ -18,7 +18,7 @@
# This Dockerfile is installable on both x86, x86-64, armhf and arm64 systems
ARG ARCH=
FROM ${ARCH}debian:bookworm
FROM ${ARCH}debian:bookworm-slim
RUN grep "VERSION_ID" /etc/os-release || (echo 'VERSION_ID="12"' >> /etc/os-release)
@ -40,10 +40,21 @@ RUN grep "VERSION_ID" /etc/os-release || (echo 'VERSION_ID="12"' >> /etc/os-rele
# On some versions of docker the emulation framework is not installed by default and
# you need to install qemu, qemu-user-static and register qemu inside docker manually using:
# `docker run --rm --privileged multiarch/qemu-user-static:register --reset`
LABEL authors="VyOS Maintainers <maintainers@vyos.io>"
ENV DEBIAN_FRONTEND noninteractive
LABEL authors="VyOS Maintainers <maintainers@vyos.io>" \
org.opencontainers.image.authors="VyOS Maintainers <maintainers@vyos.io>" \
org.opencontainers.image.url="https://github.com/vyos/vyos-build" \
org.opencontainers.image.documentation="https://docs.vyos.io/en/latest/contributing/build-vyos.html" \
org.opencontainers.image.source="https://github.com/vyos/vyos-build" \
org.opencontainers.image.vendor="Sentrium S.L." \
org.opencontainers.image.licenses="GNU" \
org.opencontainers.image.title="vyos-build" \
org.opencontainers.image.description="Container to build VyOS ISO" \
org.opencontainers.image.base.name="docker.io/debian/debian:bookworm"
ENV DEBIAN_FRONTEND=noninteractive
RUN /bin/echo -e 'APT::Install-Recommends "0";\nAPT::Install-Suggests "0";' > /etc/apt/apt.conf.d/01norecommends
# Clean cache after each apt-get install command so that it is not stored in the image
RUN /bin/echo -e 'DPkg::Post-Invoke {"/bin/rm -f /var/cache/apt/archives/*.deb /var/lib/apt/lists/* || true";};' > /etc/apt/apt.conf.d/clean
RUN apt-get update && apt-get install -y \
dialog \
@ -51,9 +62,9 @@ RUN apt-get update && apt-get install -y \
locales
RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen
ENV LANG en_US.utf8
ENV LANG=en_US.utf8
ENV OCAML_VERSION 4.12.0
ENV OCAML_VERSION=4.14.2
# Base packaged needed to build packages and their package dependencies
RUN apt-get update && apt-get install -y \
@ -78,7 +89,10 @@ RUN apt-get update && apt-get install -y \
gosu \
po4a \
openssh-client \
jq
jq \
socat \
python-is-python3 \
apt-transport-https
# Packages needed for vyos-build
RUN apt-get update && apt-get install -y \
@ -92,9 +106,18 @@ RUN apt-get update && apt-get install -y \
python3-pip \
python3-flake8 \
python3-autopep8 \
python3-tomli \
python3-tomli-w \
yq \
debootstrap \
live-build
live-build \
gdisk \
sbsigntool \
dosfstools \
kpartx
# Packages for TPM test
RUN apt-get update && apt-get install -y swtpm
# Syslinux and Grub2 is only supported on x86 and x64 systems
RUN if dpkg-architecture -ii386 || dpkg-architecture -iamd64; then \
@ -105,9 +128,10 @@ RUN if dpkg-architecture -ii386 || dpkg-architecture -iamd64; then \
# Building libvyosconf requires a full configured OPAM/OCaml setup
RUN apt-get update && apt-get install -y \
quilt \
debhelper \
libffi-dev \
libpcre3-dev \
libpcre2-dev \
unzip
# Update certificate store to not crash ocaml package install
@ -117,41 +141,27 @@ RUN dpkg-reconfigure ca-certificates; \
echo "cacert=/etc/ssl/certs/ca-certificates.crt" >> ~/.curlrc; \
fi
# Installing OCAML needed to compile libvyosconfig
# Installing OCaml needed to compile libvyosconfig
RUN curl https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh \
--output /tmp/opam_install.sh --retry 10 --retry-delay 5 && \
sed -i 's/read BINDIR/BINDIR=""/' /tmp/opam_install.sh && sh /tmp/opam_install.sh && \
opam init --root=/opt/opam --comp=${OCAML_VERSION} --disable-sandboxing --no-setup
RUN eval $(opam env --root=/opt/opam --set-root) && \
opam pin add pcre https://github.com/mmottl/pcre-ocaml.git#0c4ca03a -y
sed -i 's/read_tty BINDIR/BINDIR=""/' /tmp/opam_install.sh && sh /tmp/opam_install.sh && \
opam init --root=/opt/opam --comp=${OCAML_VERSION} --disable-sandboxing --no-setup \
&& rm /tmp/opam_install.sh
RUN eval $(opam env --root=/opt/opam --set-root) && opam install -y \
re \
pcre2 \
num \
ctypes \
ctypes-foreign \
ctypes-build \
containers \
fileutils \
xml-light
# Build VyConf which is required to build libvyosconfig
RUN eval $(opam env --root=/opt/opam --set-root) && \
opam pin add vyos1x-config https://github.com/vyos/vyos1x-config.git#f11f0148 -y
# Packages needed for libvyosconfig
RUN apt-get update && apt-get install -y \
quilt \
libpcre3-dev \
libffi-dev
# Build libvyosconfig
RUN eval $(opam env --root=/opt/opam --set-root) && \
git clone https://github.com/vyos/libvyosconfig.git /tmp/libvyosconfig && \
cd /tmp/libvyosconfig && git checkout 63175de4 && \
dpkg-buildpackage -uc -us -tc -b && \
dpkg -i /tmp/libvyosconfig0_*_$(dpkg-architecture -qDEB_HOST_ARCH).deb
xml-light \
mustache \
yojson \
fmt \
logs
# Packages needed for open-vmdk
RUN apt-get update && apt-get install -y \
@ -160,7 +170,22 @@ RUN apt-get update && apt-get install -y \
# Install open-vmdk
RUN wget -O /tmp/open-vmdk-master.zip https://github.com/vmware/open-vmdk/archive/master.zip && \
unzip -d /tmp/ /tmp/open-vmdk-master.zip && \
cd /tmp/open-vmdk-master/ && make && make install
cd /tmp/open-vmdk-master/ && make && make install && \
cd /tmp && rm -rf /tmp/open-vmdk-master/ && rm /tmp/open-vmdk-master.zip
# Packages need for build live-build
RUN apt-get update && apt-get install -y \
cpio
COPY patches/live-build/0001-save-package-info.patch /tmp/0001-save-package-info.patch
RUN git clone https://salsa.debian.org/live-team/live-build.git /tmp/live-build && \
cd /tmp/live-build && git checkout debian/1%20240810 && \
patch -p1 < /tmp/0001-save-package-info.patch && \
dch -n "Applying fix for save package info" && \
dpkg-buildpackage -us -uc && \
dpkg -i ../live-build*.deb && \
rm -rf /tmp/live-build
#
# live-build: building in docker fails with mounting /proc | /sys
@ -176,63 +201,36 @@ RUN wget https://salsa.debian.org/klausenbusk-guest/debootstrap/commit/a9a603b17
patch -p1 < /tmp/a9a603b17cadbf52cb98cde0843dc9f23a08b0da.patch && \
dch -n "Applying fix for docker image compile" && \
dpkg-buildpackage -us -uc && \
sudo dpkg -i ../debootstrap*.deb
sudo dpkg -i ../debootstrap*.deb \
&& rm /tmp/a9a603b17cadbf52cb98cde0843dc9f23a08b0da.patch \
&& rm -rf /tmp/debootstrap
# Packages needed for Linux Kernel
# gnupg2 is required by Jenkins for the TAR verification
RUN apt-get update && apt-get install -y \
gnupg2 \
rsync \
libelf-dev \
libncurses5-dev \
flex \
bison \
bc \
kmod \
cpio \
python-is-python3 \
dwarves
# Packages needed for Intel QAT out-of-tree drivers
# FPM is used when generation Debian pckages for e.g. Intel QAT drivers
RUN apt-get update && apt-get install -y \
pciutils \
yasm \
ruby \
libudev-dev \
ruby-dev \
rubygems \
build-essential
RUN gem install --no-document fpm
# Build rtrlib release 0.8.0
RUN export RTRLIB_VERSION="0.8.0" export ARCH=$(dpkg-architecture -qDEB_HOST_ARCH) && \
git clone https://github.com/rtrlib/rtrlib.git /tmp/rtrlib && cd /tmp/rtrlib && \
mk-build-deps --install --tool "apt-get --yes --no-install-recommends" && \
dpkg-buildpackage -uc -us -tc -b && \
dpkg -i ../librtr0*_${ARCH}.deb ../librtr-dev*_${ARCH}.deb ../rtr-tools*_${ARCH}.deb
RUN export LIBYANG_VERSION="v2.1.80" export ARCH=$(dpkg-architecture -qDEB_HOST_ARCH) && \
git clone https://github.com/CESNET/libyang.git /tmp/libyang && cd /tmp/libyang && \
pipx run apkg build -i && find pkg/pkgs -type f -name *.deb -exec mv -t .. {} + && \
dpkg -i ../libyang*.deb
# Add vyos package repo
COPY vyos-dev.list /etc/apt/sources.list.d/vyos-dev.list
COPY vyos-dev.key /usr/share/keyrings/vyos-dev-archive-keyring.gpg
RUN apt-key add /usr/share/keyrings/vyos-dev-archive-keyring.gpg
# Packages needed for vyos-1x
RUN pip install --break-system-packages \
RUN pip --no-cache --no-cache-dir install --break-system-packages \
git+https://github.com/aristanetworks/j2lint.git@341b5d5db86 \
pyhumps==3.8.0; \
apt-get update && apt-get install -y \
build-essential \
dh-python \
fakeroot \
iproute2 \
libzmq3-dev \
procps \
protobuf-compiler \
python3 \
python3-setuptools \
python3-inotify \
python3-sphinx \
python3-xmltodict \
python3-lxml \
python3-nose \
python3-nose2 \
python3-netifaces \
python3-jinja2 \
python3-jmespath \
@ -240,21 +238,34 @@ RUN pip install --break-system-packages \
python3-stdeb \
python3-all \
python3-coverage \
python3-hurry.filesize \
python3-netaddr \
python3-paramiko \
python3-passlib \
python3-protobuf \
python3-tabulate \
python3-zmq \
python3-vici \
python3-fastapi \
python3-pyudev \
python3-systemd \
python3-certbot-nginx \
python3-pam \
python3-dbus \
python3-pyroute2 \
python3-voluptuous \
pylint \
quilt \
whois
whois \
python3-cracklib
# Go required for validators and vyos-xe-guest-utilities
RUN GO_VERSION_INSTALL="1.18.3" ; \
# Go required for telegraf and prometheus exporters build
RUN GO_VERSION_INSTALL="1.23.2" ; \
wget -O /tmp/go${GO_VERSION_INSTALL}.linux-amd64.tar.gz https://go.dev/dl/go${GO_VERSION_INSTALL}.linux-$(dpkg-architecture -qDEB_HOST_ARCH).tar.gz ; \
tar -C /opt -xzf /tmp/go*.tar.gz && \
rm /tmp/go*.tar.gz
RUN echo "export PATH=/opt/go/bin:$PATH" >> /etc/bash.bashrc
# Packages needed for opennhrp
RUN apt-get update && apt-get install -y \
libc-ares-dev \
libev-dev
# Packages needed for Qemu test-suite
# This is for now only supported on i386 and amd64 platforms
RUN if dpkg-architecture -ii386 || dpkg-architecture -iamd64; then \
@ -270,7 +281,6 @@ RUN if dpkg-architecture -ii386 || dpkg-architecture -iamd64; then \
# This is only supported on i386 and amd64 platforms
RUN if dpkg-architecture -ii386 || dpkg-architecture -iamd64; then \
apt-get update && apt-get install -y \
kpartx \
parted \
udev \
grub-pc \
@ -307,12 +317,6 @@ RUN if dpkg-architecture -iarm64; then \
grub-efi-arm; \
fi
# Packages needed for openvpn-otp
RUN apt-get update && apt-get install -y \
debhelper \
libssl-dev \
openvpn
# Packages needed for OWAMP/TWAMP (service sla)
RUN git clone -b 4.4.6 https://github.com/perfsonar/i2util.git /tmp/i2util && \
cd /tmp/i2util && \
@ -325,38 +329,33 @@ RUN apt-get update && apt-get install -y \
udev \
zip
# Packages needed for Accel-PPP
# XXX: please note that this must be installed after nftable dependencies - otherwise
# APT will remove liblua5.3-dev which breaks the Accel-PPP build
# With bookworm, updated to libssl3 (Note: https://github.com/accel-ppp/accel-ppp/issues/68)
RUN apt-get update && apt-get install -y \
liblua5.3-dev \
libssl3 \
libssl-dev \
libpcre3-dev
# debmake: a native Debian tool for preparing sources for packaging
RUN apt-get update && apt-get install -y \
debmake \
python3-debian
# Packages for jool
RUN apt-get update && apt-get install -y \
libnl-genl-3-dev \
libxtables-dev
# Allow password-less 'sudo' for all users in group 'sudo'
RUN sed "s/^%sudo.*/%sudo\tALL=(ALL) NOPASSWD:ALL/g" -i /etc/sudoers && \
echo "vyos_bld\tALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers && \
chmod a+s /usr/sbin/useradd /usr/sbin/groupadd
# Ensure sure all users have access to our OCAM and Go installation
RUN echo "$(opam env --root=/opt/opam --set-root)" >> /etc/skel/.bashrc && \
echo "export PATH=/opt/go/bin:\$PATH" >> /etc/skel/.bashrc
# Ensure sure all users have access to Go
RUN echo "export PATH=/opt/go/bin:\$PATH" >> /etc/skel/.bashrc
# Rise upper limit for UID when working in an Active Direcotry integrated
# environment. This solves the warning: vyos_bld's uid 1632000007 outside of the
# UID_MIN 1000 and UID_MAX 60000 range.
RUN sed -i 's/UID_MAX\t\t\t60000/UID_MAX\t\t\t2000000000/g' /etc/login.defs
# Cleanup
RUN rm -rf /tmp/*
# Remove cleanup script so that in-container apt-get install uses cache
RUN rm /etc/apt/apt.conf.d/clean
# Add cache once as it is needed by some builds in GitHub Actions
RUN apt-get update
# Disable mouse in vim
RUN printf "set mouse=\nset ttymouse=\n" > /etc/vim/vimrc.local

View File

@ -0,0 +1,64 @@
From 9dacc8bf99310b2216be24a42f2c0475080cf039 Mon Sep 17 00:00:00 2001
From: khramshinr <khramshinr@gmail.com>
Date: Thu, 24 Oct 2024 14:22:57 +0600
Subject: [PATCH] T6684: new Debian package repo snapshot logic
Save information about all installed packages and teir source repo, including temporary packages
Added functionality to store version information for temporarily installed packages.
---
functions/packages.sh | 9 +++++++++
scripts/build/chroot | 6 ++++++
scripts/build/clean | 2 +-
3 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/functions/packages.sh b/functions/packages.sh
index 2481edc25..a6c2c1e8d 100755
--- a/functions/packages.sh
+++ b/functions/packages.sh
@@ -60,6 +60,15 @@ Install_packages ()
Chroot chroot "aptitude install --without-recommends ${APTITUDE_OPTIONS} ${_LB_PACKAGES}"
;;
esac
+
+ # save information about all temporary installed packages and source repos
+ for PACKAGE in ${_LB_PACKAGES}; do
+ INSTALLED_VERSION=$(Chroot chroot "apt-cache policy ${PACKAGE}" | grep 'Installed:' | awk '{print $2}')
+ Chroot chroot "apt-cache policy ${PACKAGE}" | sed -n '/\*\*\*/,$p' | grep -P 'http:|https:' -m 1 | \
+ awk -v pkg="${PACKAGE}" -v version="${INSTALLED_VERSION}" '{print $2" "$3" "pkg" "version}' >> chroot.packages.all.info
+
+ done
+
unset _LB_PACKAGES # Can clear this now
}
diff --git a/scripts/build/chroot b/scripts/build/chroot
index a0aa10be0..700762e78 100755
--- a/scripts/build/chroot
+++ b/scripts/build/chroot
@@ -48,6 +48,12 @@ for _PASS in install live; do
fi
done
+# save information about all installed packages and source repos
+Chroot chroot "dpkg-query -W" | while read PACKAGE; do
+ Chroot chroot "apt-cache policy ${PACKAGE}" | sed -n '/\*\*\*/,$p' | grep -P 'http:|https:' -m 1 | awk -v pkg="${PACKAGE}" '{print $2" "$3" "pkg}' >> chroot.packages.all.info
+done
+
+
lb chroot_includes_after_packages "${@}"
lb chroot_hooks "${@}"
lb chroot_hacks "${@}"
diff --git a/scripts/build/clean b/scripts/build/clean
index 6549fc635..4376d7525 100755
--- a/scripts/build/clean
+++ b/scripts/build/clean
@@ -159,7 +159,7 @@ if [ "${RM_CHROOT}" = "true" ]; then
rm -rf chroot chroot.tmp
- rm -f chroot.packages.live chroot.packages.install
+ rm -f chroot.packages.live chroot.packages.install chroot.packages.all.info
rm -f chroot.files
rm -f "$(Installed_tmp_packages_file)"

53
docker/vyos-dev.key Normal file
View File

@ -0,0 +1,53 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.22 (GNU/Linux)
mQINBF0/MrsBEADLSj4PdgHsr4FblWqQmmZD32J3EVlXrBIwi0zT1RN6V6vA81xx
Qe8XNm6LXVB9kjH9Qv+MwIWWOkTYGCDg2oiIAKPRnJfKisDo4Ax3a1j2YOF6Ud2n
t1bdDfSvnMnEITnMwa+BHKx3QeBoVG/8zhMeHjXy0QwHUIdKMyrX8M0JWY/sqLlv
HvzEaB3PEMFGFhuJ3Dh/ZxquVVuSS2GPRyTpLTqrPSH9jG8hf8YFWBE+CHbnclZc
4NKlI5Q5yrqrUE7zGWgg3O75o6xlJpjI2TJXPPYU6llCNQi/AUIB3R34okMdyYmP
dzaHBXeA+a5glikv5i0ysJgfZ/hvZgayZdAvqIxQxjzvKebmqUutay7LhgjKGRnC
vdAAQ1LbkqPvbBN1oaElRiTUR6bekTFd/M8x3DWPHc0xkNps6f4sEoiFkujpsl26
uGlBhf59yFzI/XhjT/04pUWa3myFhGWT4WSw8cf3o/47/CiL4TefOBTY2vSSub7V
nekDG6H75i9szMMQGzry71+RzYMOWkUnnnQ6wjpHuce42zU7wKUdl2+Wrr+g2/cK
NKFvHRmGLVOpcabDawWi08hHr+J6Gje9PCePfY4x0p6Idjz5YW4Q1D/XSDZZ3nni
akhMO1onHLolY7jstdexhSSi7nS9bDAdnHlL7e/hJemF5G0IvLlkaXYIpQARAQAB
tDJWeU9TIG1haW50YWluZXJzIChwYWNrYWdlIHNpZ25pbmcpIDxwa2dzQHZ5b3Mu
bmV0PokCOQQTAQIAIwUCXT8yuwIbAwcLCQgHAwIBBhUIAgkKCwQWAgMBAh4BAheA
AAoJELK9zt4uv5wGFk4P/3MUhejAJrkMy8EC21P74yCxpZ8RfahML/hIy8+13mWd
480eSGrZr+mEk7pN4T+5cOV4gO9gsKlZ+9zvP8PjRqrHhdDWnA+6GZSMmwvV5C+s
DDop3Wa5z6u5SXwultAEzssNtmVreXhGrB/gkpx6NsAZz9TbwVCOyfFu5di2Oued
ItL6IhkLBIbOmJX1X5CD3AvXIKcRwp7L3mFYP+UE5/c3OFmIK5P1J3vvHRPQqHls
BOPs7dMowfCQfNTUyUWTG74gPo9wHCnuE6QnO5b/j1dPKgz5058bK+NMFgLLdw6X
pb8Z7CvQPSLr5o2KfP+LsC7Nyz4tFQukJvidZdQ/uYQ38SDXsLbmlqnQWDCtYMzu
j225frdkvymwvLrroVWGfbJI2Bd+u3VoQmLdMdddnSe/+oKoh2/xBueWH/O6d4F4
br+HNbhxaxhhM2JuPXB7mQTDyzl4RhD8JixV6YgjWo1/X8wfpJdB/utTbiwLdhIH
q2gdI3sxDCikapQWEhHWAgW4azhzXXvo8RTwNWXtck2DBsQxsn4lANvcWwJ7fRD5
FDgIcJJ+rZrA9NT1sihSjxvUWAmByOSWwdWQRm8O86tFjqm9mJ5ppIYLX5weMa6L
przxbm85y5DZeeuxo297YHGbrfeRm7ko/yB+DFdnLirnblK5JI4RL94AwZjad879
uQINBF0/MrsBEACmKylWG6GC+EPn+x01vA3tVDyyDcOxaRevCvCYEINv7yn7Ajc3
ZaWqqNRfZheOU5hUVJjW6cv7xqaWIn9J/7vatmdeX8H1cVWpSk/e1QT1Fop7I71e
4skDn8YI6JIZgFBrqe1O3YHOQDZbMO9zR5jNpVD7XXLyGsRvjnkH/ybugBeiVCqt
7x2I8OnDQggFnBrishMjVrEmBAduE3JICC1IbCCtVG67h07E/BC7XJVgME8Hvfwl
EBTo8Y6CWcrsJZfAQKU+3wi5feFVLIbhNceiGcxmi7uJML+hGoSf92Pmn7i9p5su
ywy4XF+aWvd4R3CMYywOiukB3rItic7gp0tpcMK7AwessGqvD/luz2cNY1IqDKak
w7jGbGUT54zKO3tpt73dYGyf3SUHQ9aNAaGuSxjq/c9v9X4KpzmAi82rt4wSkDVa
/5SkxsU9aP6lql2MrZm//Pj3hjyipTLUFhndbjeJDgBRROMJdokNkFIIaweJGAg2
wNwBC6HRIYXLyOsV+Azf1gqSpCEqdKVLJkBduuChtd7N9xoUahag2yya+ujwpcN6
nlmnhZt+yfgi0uO2cPmsof9PkJi+cb44IAgkvG96Zj2JbLHSlGipyYTHLYS46RC4
CkaF3DSwDXVU+lBqJz+WkOywpMGUKtZwPbpy7ZJVf2JL8Rf0D95sIaeICwARAQAB
iQIfBBgBAgAJBQJdPzK7AhsMAAoJELK9zt4uv5wG45IP/2YEQzyn2qiqHInLEmXE
R7fefmkiTy925juASQiR/LGOCSfCOnMKBMkyi63XvQuhAALU6RxgK69yLZJYWQ+a
gh+vrrndCzprCM4PohuupknA8nAY+FvC5xoOZVkZ/+vUP344ukxN9Fz1d9oU3G5a
luoA23G1qs7kHJw/xzN1BFNqie2mIzMAOI0Wu0BZxmYmD3Ph0KMbUD08jX6ImDF6
EnqS0VhCgXfWhPBqh5TOG35Fi5ZCmupbgqBJQZg5fLIWS3Hk2qBm70FR3iLdjiYu
w165hBlqcJ2YfvVBKVvMNRVB9BtF7BfzCM3/y/4V82EZ7qQJ+jE30N+/vwrAOrUd
QVlFsC5eYDOkRb3XXhijXZhoKoeXTwY7TGNntavVMYZ2W4EFoX2OH8/2A7KEYhqc
3cjEJ7EoM6hkmm6xmU82oQ8Moll1SgQbkNKlZYDPMs7Ppr4zBJjnVYVcP9e1RLFO
0POJbtG7CCAstcvMu/3Yw7Il/TOGvc3TNBPrkYtriDj+B900W5sEc33iUV9VRAAi
Bkfs0XMSQVIcMdquu2LGfNWBjd/YCZVQ8OzFYoZJeq18oxeZ9/tE4NE3KyUBmqil
5/WicCYtxgxByAvhN5dFn+nPfoEMQ/e9Zhs2ImrrSy12Ehg1swRjAK39NrjySDFT
FhyPysWJ4aNKtAYgVuQguPTt
=rJUC
-----END PGP PUBLIC KEY BLOCK-----

1
docker/vyos-dev.list Normal file
View File

@ -0,0 +1 @@
deb https://packages.vyos.net/repositories/current current main

7
packages/.gitignore vendored
View File

@ -1,6 +1 @@
*.tar.gz
*.deb
*.dsc
*.buildinfo
*.changes
*.git
/*

View File

@ -1 +0,0 @@
aws-gwlbtun/

View File

@ -1,30 +0,0 @@
// Copyright (C) 2023 VyOS maintainers and contributors
//
// This program is free software; you can redistribute it and/or modify
// in order to easy exprort images built to "external" world
// it under the terms of the GNU General Public License version 2 or later as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
@NonCPS
// Using a version specifier library, use 'current' branch. The underscore (_)
// is not a typo! You need this underscore if the line immediately after the
// @Library annotation is not an import statement!
@Library('vyos-build@current')_
def pkgList = [
['name': 'aws-gateway-load-balancer-tunnel-handler',
'scmCommit': 'f78058a',
'scmUrl': 'https://github.com/aws-samples/aws-gateway-load-balancer-tunnel-handler',
'buildCmd': 'cd ..; ./build.sh'],
]
// Start package build using library function from https://github.com/vyos/vyos-build
buildPackage('aws-gateway-load-balancer-tunnel-handler', pkgList, null, true, "**/packages/aws-gateway-load-balancer-tunnel-handler/**")

View File

@ -1,38 +0,0 @@
#!/bin/bash
CWD=$(pwd)
set -e
SRC=aws-gateway-load-balancer-tunnel-handler
if [ ! -d ${SRC} ]; then
echo "${SRC} directory does not exists, please 'git clone'"
exit 1
fi
# Navigate to the repository directory
cd ${SRC}
# Build the binary
cmake .
make
# Create the Debian package directory structure
mkdir -p aws-gwlbtun/DEBIAN
mkdir -p aws-gwlbtun/usr/bin
# Move the binary to the package directory
cp gwlbtun aws-gwlbtun/usr/bin
# Create the control file
cat <<EOL > aws-gwlbtun/DEBIAN/control
Package: aws-gwlbtun
Version: 1-eb51d33
Architecture: amd64
Maintainer: VyOS Maintainers autobuild@vyos.net
Description: AWS Gateway Load Balancer Tunnel Handler
EOL
# Build the Debian package
dpkg-deb --build aws-gwlbtun
cp *.deb ${CWD}

View File

@ -1 +0,0 @@
ddclient/

View File

@ -1,30 +0,0 @@
// Copyright (C) 2023 VyOS maintainers and contributors
//
// This program is free software; you can redistribute it and/or modify
// in order to easy exprort images built to "external" world
// it under the terms of the GNU General Public License version 2 or later as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
@NonCPS
// Using a version specifier library, use 'current' branch. The underscore (_)
// is not a typo! You need this underscore if the line immediately after the
// @Library annotation is not an import statement!
@Library('vyos-build@current')_
def pkgList = [
['name': 'ddclient',
'scmCommit': 'debian/3.10.0-3',
'scmUrl': 'https://salsa.debian.org/debian/ddclient',
'buildCmd': 'sudo mk-build-deps --install --tool "apt-get --yes --no-install-recommends"; cd ..; ./build.sh'],
]
// Start package build using library function from https://github.com/vyos/vyos-build
buildPackage('ddclient', pkgList, null, null, "**/packages/ddclient/**")

View File

@ -1,26 +0,0 @@
#!/bin/sh
CWD=$(pwd)
set -e
SRC=ddclient
if [ ! -d ${SRC} ]; then
echo "Source directory does not exists, please 'git clone'"
exit 1
fi
PATCH_DIR=${CWD}/patches
if [ -d $PATCH_DIR ]; then
for patch in $(ls ${PATCH_DIR})
do
echo "I: Apply patch: ${patch} to main repository"
cp ${PATCH_DIR}/${patch} ${SRC}/debian/patches/
echo ${patch} >> ${SRC}/debian/patches/series
done
fi
cd ${SRC}
echo "I: bump version"
dch -v "3.10.0-3+vyos0" "Patchset for miscellaneous fixes"
echo "I: Build Debian Package"
dpkg-buildpackage -uc -us -tc -b

View File

@ -1,47 +0,0 @@
From 11a5bd5e7ef0d199c754947e24c0c8a736d18c48 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20du=20Bo=C3=BFs?= <thomas@duboys.info>
Date: Sat, 28 Jan 2023 11:34:41 +0100
Subject: [PATCH] define usev4, usev6 and dependancies as per-host config
Ref: ddclient/ddclient#505
---
ddclient.in | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/ddclient.in b/ddclient.in
index eff10fb4..ad7dee52 100755
--- a/ddclient.in
+++ b/ddclient.in
@@ -490,17 +490,32 @@ my %variables = (
'host' => setv(T_STRING,1, 1, '', undef),
'use' => setv(T_USE, 0, 0, 'ip', undef),
+ 'usev4' => setv(T_USEV4, 0, 0, 'disabled', undef),
+ 'usev6' => setv(T_USEV6, 0, 0, 'disabled', undef),
'if' => setv(T_IF, 0, 0, 'ppp0', undef),
+ 'ifv4' => setv(T_IF, 0, 0, 'default', undef),
+ 'ifv6' => setv(T_IF, 0, 0, 'default', undef),
'web' => setv(T_STRING,0, 0, 'dyndns', undef),
'web-skip' => setv(T_STRING,0, 0, '', undef),
'web-ssl-validate' => setv(T_BOOL, 0, 0, 1, undef),
+ 'webv4' => setv(T_STRING,0, 0, 'googledomains', undef),
+ 'webv4-skip' => setv(T_STRING,1, 0, '', undef),
+ 'webv6' => setv(T_STRING,0, 0, 'googledomains', undef),
+ 'webv6-skip' => setv(T_STRING,1, 0, '', undef),
'fw' => setv(T_ANY, 0, 0, '', undef),
'fw-skip' => setv(T_STRING,0, 0, '', undef),
'fw-login' => setv(T_LOGIN, 0, 0, '', undef),
'fw-password' => setv(T_PASSWD,0, 0, '', undef),
'fw-ssl-validate' => setv(T_BOOL, 0, 0, 1, undef),
+ 'fwv4' => setv(T_ANY, 0, 0, '', undef),
+ 'fwv4-skip' => setv(T_STRING,1, 0, '', undef),
+ 'fwv6' => setv(T_ANY, 0, 0, '', undef),
+ 'fwv6-skip' => setv(T_STRING,1, 0, '', undef),
'cmd' => setv(T_PROG, 0, 0, '', undef),
'cmd-skip' => setv(T_STRING,0, 0, '', undef),
+ 'cmdv4' => setv(T_PROG, 0, 0, '', undef),
+ 'cmdv6' => setv(T_PROG, 0, 0, '', undef),
+
'ip' => setv(T_IP, 0, 1, undef, undef), #TODO remove from cache?
'ipv4' => setv(T_IPV4, 0, 1, undef, undef),
'ipv6' => setv(T_IPV6, 0, 1, undef, undef),

View File

@ -1,114 +0,0 @@
From fa6c95f5110455b6e1ad80d1147086619ddbf7df Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20du=20Bo=C3=BFs?= <thomas@duboys.info>
Date: Fri, 27 Jan 2023 17:58:26 +0100
Subject: [PATCH 1/2] Update dyndns2 client to use new IPv4/IPv6 logic
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Thomas du Boÿs <thomas@duboys.info>
Ref: ddclient/ddclient#502
---
ddclient.in | 32 ++++++++++++++++++++++----------
1 file changed, 22 insertions(+), 10 deletions(-)
diff --git a/ddclient.in b/ddclient.in
index eff10fb4..744d63ed 100755
--- a/ddclient.in
+++ b/ddclient.in
@@ -4069,10 +4069,13 @@ sub nic_dyndns2_update {
my @hosts = @{$groups{$sig}};
my $hosts = join(',', @hosts);
my $h = $hosts[0];
- my $ip = $config{$h}{'wantip'};
- delete $config{$_}{'wantip'} foreach @hosts;
+ my $ipv4 = $config{$h}{'wantipv4'};
+ my $ipv6 = $config{$h}{'wantipv6'};
+ delete $config{$_}{'wantipv4'} foreach @hosts;
+ delete $config{$_}{'wantipv6'} foreach @hosts;
- info("setting IP address to %s for %s", $ip, $hosts);
+ info("setting IPv4 address to %s for %s", $ipv4, $hosts) if $ipv4;
+ info("setting IPv6 address to %s for %s", $ipv6, $hosts) if $ipv6;
verbose("UPDATE:", "updating %s", $hosts);
## Select the DynDNS system to update
@@ -4091,7 +4094,11 @@ sub nic_dyndns2_update {
$url .= "&hostname=$hosts";
$url .= "&myip=";
- $url .= $ip if $ip;
+ $url .= $ipv4 if $ipv4;
+ if ($ipv6) {
+ $url .= "," if $ipv4;
+ $url .= $ipv6;
+ }
## some args are not valid for a custom domain.
$url .= "&wildcard=ON" if ynu($config{$h}{'wildcard'}, 1, 0, 0);
@@ -4114,7 +4121,6 @@ sub nic_dyndns2_update {
my @reply = split /\n/, $reply;
my $state = 'header';
- my $returnedip = $ip;
foreach my $line (@reply) {
if ($state eq 'header') {
@@ -4128,22 +4134,28 @@ sub nic_dyndns2_update {
# bug #10: some dyndns providers does not return the IP so
# we can't use the returned IP
- my ($status, $returnedip) = split / /, lc $line;
- $ip = $returnedip if (not $ip);
+ my ($status, $returnedips) = split / /, lc $line;
my $h = shift @hosts;
$config{$h}{'status'} = $status;
+ $config{$h}{'status-ipv4'} = $status if $ipv4;
+ $config{$h}{'status-ipv6'} = $status if $ipv6;
if ($status eq 'good') {
- $config{$h}{'ip'} = $ip;
+ $config{$h}{'ipv4'} = $ipv4 if $ipv4;
+ $config{$h}{'ipv6'} = $ipv6 if $ipv6;
$config{$h}{'mtime'} = $now;
- success("updating %s: %s: IP address set to %s", $h, $status, $ip);
+ success("updating %s: %s: IPv4 address set to %s", $h, $status, $ipv4) if $ipv4;
+ success("updating %s: %s: IPv6 address set to %s", $h, $status, $ipv6) if $ipv6;
} elsif (exists $errors{$status}) {
if ($status eq 'nochg') {
warning("updating %s: %s: %s", $h, $status, $errors{$status});
- $config{$h}{'ip'} = $ip;
+ $config{$h}{'ipv4'} = $ipv4 if $ipv4;
+ $config{$h}{'ipv6'} = $ipv6 if $ipv6;
$config{$h}{'mtime'} = $now;
$config{$h}{'status'} = 'good';
+ $config{$h}{'status-ipv4'} = 'good' if $ipv4;
+ $config{$h}{'status-ipv6'} = 'good' if $ipv6;
} else {
failed("updating %s: %s: %s", $h, $status, $errors{$status});
From cca4291360ce31aff1ab0d877d2622c11510c1f3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20du=20Bo=C3=BFs?= <thomas@duboys.info>
Date: Sat, 28 Jan 2023 10:46:43 +0100
Subject: [PATCH 2/2] fix ipv4 address on message log when address already set
---
ddclient.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ddclient.in b/ddclient.in
index 744d63ed..a5e9c68c 100755
--- a/ddclient.in
+++ b/ddclient.in
@@ -3820,7 +3820,7 @@ sub nic_updateable {
success("%s: skipped: IP address was already set to %s.", $host, $ip);
}
if ($usev4 ne 'disabled') {
- success("%s: skipped: IPv4 address was already set to %s.", $host, $ipv6);
+ success("%s: skipped: IPv4 address was already set to %s.", $host, $ipv4);
}
if ($usev6 ne 'disabled') {
success("%s: skipped: IPv6 address was already set to %s.", $host, $ipv6);

View File

@ -1,74 +0,0 @@
From d35d62f3e753ffe15b151f7b7c5dea96bfa3ca7a Mon Sep 17 00:00:00 2001
From: drinn <drinn@users.noreply.github.com>
Date: Sat, 28 Jan 2023 09:48:51 -0600
Subject: [PATCH 1/2] updated nic_duckdns_update to account for extra lines in
duckdns reply
Ref: ddclient/ddclient#506
---
ddclient.in | 30 +++++++++++++++++++++---------
1 file changed, 21 insertions(+), 9 deletions(-)
diff --git a/ddclient.in b/ddclient.in
index eff10fb4..8797d7d4 100755
--- a/ddclient.in
+++ b/ddclient.in
@@ -6559,16 +6559,28 @@ sub nic_duckdns_update {
next if !header_ok($h, $reply);
my @reply = split /\n/, $reply;
- my $returned = pop(@reply);
- if ($returned =~ /OK/) {
- $config{$h}{'ip'} = $ip;
- $config{$h}{'mtime'} = $now;
- $config{$h}{'status'} = 'good';
- success("updating %s: good: IP address set to %s", $h, $ip);
- } else {
- $config{$h}{'status'} = 'failed';
- failed("updating %s: Server said: '%s'", $h, $returned);
+ my $state = 'noresult';
+ my $line = '';
+
+ foreach $line (@reply) {
+ if ($line eq 'OK') {
+ $config{$h}{'ip'} = $ip;
+ $config{$h}{'mtime'} = $now;
+ $config{$h}{'status'} = 'good';
+ $state = 'result';
+ success("updating %s: good: IP address set to %s", $h, $ip);
+
+ } elsif ($line eq 'KO') {
+ $config{$h}{'status'} = 'failed';
+ $state = 'result';
+ failed("updating %s: Server said: '%s'", $h, $line);
+ }
+ }
+
+ if ($state eq 'noresult') {
+ failed("updating %s: Server said: '%s'", $h, $line);
}
+
}
}
From dbc40557d22b36a6847d0cd11e59185647516f7b Mon Sep 17 00:00:00 2001
From: drinn <drinn@users.noreply.github.com>
Date: Sat, 28 Jan 2023 09:59:58 -0600
Subject: [PATCH 2/2] removed empty space
---
ddclient.in | 1 -
1 file changed, 1 deletion(-)
diff --git a/ddclient.in b/ddclient.in
index 8797d7d4..b818ea6e 100755
--- a/ddclient.in
+++ b/ddclient.in
@@ -6580,7 +6580,6 @@ sub nic_duckdns_update {
if ($state eq 'noresult') {
failed("updating %s: Server said: '%s'", $h, $line);
}
-
}
}

View File

@ -1,111 +0,0 @@
From 69347bd2a27cfb517d0749f1293ad5acdfcf34ad Mon Sep 17 00:00:00 2001
From: Franco Fichtner <franco@opnsense.org>
Date: Thu, 1 Jun 2023 09:06:27 +0200
Subject: [PATCH] dyndns2: fix multiline parsing and multiple host handling
As seen in the wild with DynDNS.com -- status '14' is being stored
for the first host which is removed from @hosts ending up reading
empty host for next line causing 'nochg' to be misplaced in an empty
host. The same likely applies for multi-host handling so expand to
loop where writing to config and use $hosts when logging to catch all.
RECEIVE: HTTP/1.1 200 OK
RECEIVE: Date: Thu, 01 Jun 2023 06:59:38 GMT
RECEIVE: Server: Apache/2.4.18 (Ubuntu)
RECEIVE: Strict-Transport-Security: max-age=31536000
RECEIVE: X-UpdateCode: n
RECEIVE: Vary: Accept-Encoding
RECEIVE: Content-Type: text/plain
RECEIVE: Accept-Ranges: none
RECEIVE: X-User-Status: vip
RECEIVE: Connection: close
RECEIVE: Transfer-Encoding: chunked
RECEIVE:
RECEIVE: 14
RECEIVE: nochg 192.168.178.20
RECEIVE: 0
RECEIVE:
Ref: ddclient/ddclient#542
---
ddclient.in | 51 +++++++++++++++++++++++++++++++--------------------
1 file changed, 31 insertions(+), 20 deletions(-)
diff --git a/ddclient.in b/ddclient.in
index a4464e2c..43eb3b15 100755
--- a/ddclient.in
+++ b/ddclient.in
@@ -4194,30 +4194,38 @@ sub nic_dyndns2_update {
# bug #10: some dyndns providers does not return the IP so
# we can't use the returned IP
my ($status, $returnedips) = split / /, lc $line;
- my $h = shift @hosts;
- $config{$h}{'status'} = $status;
- $config{$h}{'status-ipv4'} = $status if $ipv4;
- $config{$h}{'status-ipv6'} = $status if $ipv6;
+ foreach my $h (@hosts) {
+ $config{$h}{'status'} = $status;
+ $config{$h}{'status-ipv4'} = $status if $ipv4;
+ $config{$h}{'status-ipv6'} = $status if $ipv6;
+ }
+
if ($status eq 'good') {
- $config{$h}{'ipv4'} = $ipv4 if $ipv4;
- $config{$h}{'ipv6'} = $ipv6 if $ipv6;
- $config{$h}{'mtime'} = $now;
- success("updating %s: %s: IPv4 address set to %s", $h, $status, $ipv4) if $ipv4;
- success("updating %s: %s: IPv6 address set to %s", $h, $status, $ipv6) if $ipv6;
+ foreach my $h (@hosts) {
+ $config{$h}{'ipv4'} = $ipv4 if $ipv4;
+ $config{$h}{'ipv6'} = $ipv6 if $ipv6;
+ $config{$h}{'mtime'} = $now;
+ }
+
+ success("updating %s: %s: IPv4 address set to %s", $hosts, $status, $ipv4) if $ipv4;
+ success("updating %s: %s: IPv6 address set to %s", $hosts, $status, $ipv6) if $ipv6;
} elsif (exists $errors{$status}) {
if ($status eq 'nochg') {
- warning("updating %s: %s: %s", $h, $status, $errors{$status});
- $config{$h}{'ipv4'} = $ipv4 if $ipv4;
- $config{$h}{'ipv6'} = $ipv6 if $ipv6;
- $config{$h}{'mtime'} = $now;
- $config{$h}{'status'} = 'good';
- $config{$h}{'status-ipv4'} = 'good' if $ipv4;
- $config{$h}{'status-ipv6'} = 'good' if $ipv6;
+ warning("updating %s: %s: %s", $hosts, $status, $errors{$status});
+
+ foreach my $h (@hosts) {
+ $config{$h}{'ipv4'} = $ipv4 if $ipv4;
+ $config{$h}{'ipv6'} = $ipv6 if $ipv6;
+ $config{$h}{'mtime'} = $now;
+ $config{$h}{'status'} = 'good';
+ $config{$h}{'status-ipv4'} = 'good' if $ipv4;
+ $config{$h}{'status-ipv6'} = 'good' if $ipv6;
+ }
} else {
- failed("updating %s: %s: %s", $h, $status, $errors{$status});
+ failed("updating %s: %s: %s", $hosts, $status, $errors{$status});
}
} elsif ($status =~ /w(\d+)(.)/) {
@@ -4229,11 +4237,14 @@ sub nic_dyndns2_update {
($scale, $units) = (60*60, 'hours') if $units eq 'h';
$sec = $wait * $scale;
- $config{$h}{'wtime'} = $now + $sec;
- warning("updating %s: %s: wait %s %s before further updates", $h, $status, $wait, $units);
+ foreach my $h (@hosts) {
+ $config{$h}{'wtime'} = $now + $sec;
+ }
+
+ warning("updating %s: %s: wait %s %s before further updates", $hosts, $status, $wait, $units);
} else {
- failed("updating %s: unexpected status (%s)", $h, $line);
+ failed("updating %s: unexpected status (%s)", $hosts, $line);
}
}
}

View File

@ -1 +0,0 @@
dropbear/

View File

@ -1,30 +0,0 @@
// Copyright (C) 2022-2023 VyOS maintainers and contributors
//
// This program is free software; you can redistribute it and/or modify
// in order to easy exprort images built to "external" world
// it under the terms of the GNU General Public License version 2 or later as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
@NonCPS
// Using a version specifier library, use 'current' branch. The underscore (_)
// is not a typo! You need this underscore if the line immediately after the
// @Library annotation is not an import statement!
@Library('vyos-build@current')_
def pkgList = [
['name': 'dropbear',
'scmCommit': 'debian/2022.83-1',
'scmUrl': 'https://salsa.debian.org/debian/dropbear.git',
'buildCmd': 'sudo mk-build-deps --install --tool "apt-get --yes --no-install-recommends"; cd ..; ./build.sh'],
]
// Start package build using library function from https://github.com/vyos/vyos-build
buildPackage('dropbear', pkgList, null, true, "**/packages/dropbear/**")

View File

@ -1,23 +0,0 @@
#!/bin/sh
CWD=$(pwd)
set -e
SRC=dropbear
if [ ! -d ${SRC} ]; then
echo "Source directory does not exists, please 'git clone'"
exit 1
fi
PATCH_DIR=${CWD}/patches
if [ -d $PATCH_DIR ]; then
for patch in $(ls ${PATCH_DIR})
do
echo "I: Apply patch: ${patch} to main repository"
cp ${PATCH_DIR}/${patch} ${SRC}/debian/patches/
echo ${patch} >> ${SRC}/debian/patches/series
done
fi
cd ${SRC}
echo "I: Build Debian Package"
dpkg-buildpackage -uc -us -tc -b

Some files were not shown because too many files have changed in this diff Show More