summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2026-01-20 15:39:06 +0000
committerGitHub <noreply@github.com>2026-01-20 15:39:06 +0000
commit8be4398b579dce7fd482c41706e804604f3b7763 (patch)
tree73856e18a13e927ce92dac11e0625f472a012006 /scripts
parentaf58c8c5ec8a601b5c7ebb4e5e1f7cfa49834c38 (diff)
parente6ffde4985496017bea39551a396b1a87e3ff8a8 (diff)
downloadvyos-build-8be4398b579dce7fd482c41706e804604f3b7763.tar.gz
vyos-build-8be4398b579dce7fd482c41706e804604f3b7763.zip
Merge pull request #1103 from jestabro/correct-default-config-loc
T8185: correct the install path of config.boot.default entries defined in flavor files
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/image-build/build-vyos-image19
-rw-r--r--scripts/image-build/utils.py3
2 files changed, 20 insertions, 2 deletions
diff --git a/scripts/image-build/build-vyos-image b/scripts/image-build/build-vyos-image
index 6919b003..1d9508a1 100755
--- a/scripts/image-build/build-vyos-image
+++ b/scripts/image-build/build-vyos-image
@@ -97,6 +97,7 @@ import utils
import raw_image
from utils import cmd, rc_cmd
+from utils import directories
## Check if there are missing build dependencies
deps = {
@@ -585,7 +586,17 @@ DOCUMENTATION_URL="{build_config['documentation_url']}"
## Create includes
if has_nonempty_key(build_config, "includes_chroot"):
for i in build_config["includes_chroot"]:
- file_path = os.path.join(chroot_includes_dir, i["path"])
+ check_path = i["path"]
+ # T8185: flavor definition files containing a default config
+ # under [[includes_chroot]] may need corrected install path
+ if check_path == 'opt/vyatta/etc/config.boot.default':
+ file_path = os.path.join(
+ chroot_includes_dir,
+ directories['data'].lstrip(os.sep),
+ 'config.boot.default'
+ )
+ else:
+ file_path = os.path.join(chroot_includes_dir, check_path)
if debug:
print(f"D: Creating chroot include file: {file_path}")
os.makedirs(os.path.dirname(file_path), exist_ok=True)
@@ -605,7 +616,11 @@ DOCUMENTATION_URL="{build_config['documentation_url']}"
## Technically it's just another includes.chroot entry,
## but it's special enough to warrant making it easier for flavor writers
if has_nonempty_key(build_config, "default_config"):
- file_path = os.path.join(chroot_includes_dir, "opt/vyatta/etc/config.boot.default")
+ file_path = os.path.join(
+ chroot_includes_dir,
+ directories['data'].lstrip(os.sep),
+ 'config.boot.default'
+ )
os.makedirs(os.path.dirname(file_path), exist_ok=True)
with open(file_path, 'w') as f:
f.write(build_config["default_config"])
diff --git a/scripts/image-build/utils.py b/scripts/image-build/utils.py
index 081327cd..9e6dc634 100644
--- a/scripts/image-build/utils.py
+++ b/scripts/image-build/utils.py
@@ -25,6 +25,9 @@ import shutil
import defaults
import vyos
+from vyos.defaults import directories
+
+
def check_build_config():
if not os.path.exists(defaults.BUILD_CONFIG):
print("Build config file ({file}) does not exist".format(file=defaults.BUILD_CONFIG))