From 770a1061b2373b717c06c2e73c922a738af6eca4 Mon Sep 17 00:00:00 2001 From: Natalia Serrano Date: Wed, 21 Aug 2024 14:53:08 +0200 Subject: [PATCH] refs #597 remove a call to schroot, make reference to the final docker image name --- .dockerignore | 2 +- INSTALL.es.txt | 10 +++++----- mkoglive.py | 12 ++++++------ 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.dockerignore b/.dockerignore index 472c70e..a66a176 100644 --- a/.dockerignore +++ b/.dockerignore @@ -9,4 +9,4 @@ kernelParameterOG.es.txt ogclient/ ogclientImg2Sqfs ogclientSqfs2Img -*.swp +**/*.swp diff --git a/INSTALL.es.txt b/INSTALL.es.txt index c33e334..6567527 100644 --- a/INSTALL.es.txt +++ b/INSTALL.es.txt @@ -18,23 +18,23 @@ Proceso de creación de imagen docker Simplemente llamar a docker build sin sorpresas: - docker build -t mkoglive . + docker build -t opengnsys/mkoglive . Si queremos usar una rama diferente del repo de opengnsys: - docker build --build-arg OPENGNSYS_BRANCH=mybranch -t mkoglive . + docker build --build-arg OPENGNSYS_BRANCH=mybranch -t opengnsys/mkoglive . Proceso de creación de imagen oglive ------------------------------------ - docker run --rm --name mkoglive --privileged=true --volume $PWD/ogclient:/var/lib/tftpboot/ogclient mkoglive --codename noble + docker run --rm --name mkoglive --privileged=true --volume $PWD/ogclient:/var/lib/tftpboot/ogclient opengnsys/mkoglive --codename noble -Hace falta --privileged=true para que mkoglive.py pueda ejecutar, entre otras cosas, losetup. +Hace falta --privileged=true para que mkoglive.py pueda ejecutar, entre otras cosas, losetup y mount. El parámetro --codename permite especificar la versión de ubuntu. -También se puede especificar, por ejemplo, --loglevel DEBUG. +También se puede especificar, por ejemplo, --loglevel debug. Y también podemos indicar otro archivo de configuración usando --config. diff --git a/mkoglive.py b/mkoglive.py index 468884d..37439f3 100755 --- a/mkoglive.py +++ b/mkoglive.py @@ -58,16 +58,16 @@ def _mkrootfs (btrootfsimg, btrootfsmnt, btrootfsimglabel, btvirtualdisksize, bt def _debootstrap (btrootfsimg, btrootfsmnt, osarch, oscodename, oshttp): logger.info ('Stage 1.2 - debootstrap system') - logger.info ('Try creation of a file within chroot (this operation may fail with "... etc/resolv.conf: No such file or directory"--that is ok)') - logger.debug ('Running \'schroot --chroot IMGogclient -- stat /etc\'') - cp = subprocess.run (['schroot', '--chroot', 'IMGogclient', '--', 'stat', '/etc']) - if (cp.returncode): - logger.debug (f'schroot returned code "{cp.returncode}", calling btog.debootstrap()') - _mount_rootfs (btrootfsimg, btrootfsmnt) + _mount_rootfs (btrootfsimg, btrootfsmnt) + try: os.stat (os.path.join (btrootfsmnt, 'etc')) + except: + logger.debug (f'stat failed, calling btog.debootstrap()') try: btog.debootstrap (btrootfsimg, btrootfsmnt, osarch, oscodename, oshttp) except Exception as e: + utils.umount (btrootfsmnt) logger.error (str (e)) sys.exit (1) + utils.umount (btrootfsmnt) def _initramfs_version (gitrelease, osrelease, curdir): utils.run (['sed', '-i', f'1 s/$/ {gitrelease} ({osrelease})/', f'{curdir}/includes/etc/initramfs-tools/scripts/VERSION.txt'])