diff --git a/Dockerfile b/Dockerfile index df8cd7a..ccab095 100644 --- a/Dockerfile +++ b/Dockerfile @@ -27,11 +27,13 @@ RUN groupadd opengnsys RUN mkdir -p /opt/opengnsys/client /tmp/opengnsys/oglive_builder /var/lib/tftpboot/ RUN ln -fs /var/lib/tftpboot /opt/opengnsys -## take client stuff from the OG repo -RUN git clone -c http.sslVerify=false --branch ${OPENGNSYS_BRANCH} https://ognproject.evlt.uma.es/gitea/opengnsys/opengnsys.git /tmp/ogrepo -RUN rsync -aH /tmp/ogrepo/client/engine /tmp/ogrepo/client/shared /tmp/opengnsys/ +## take stuff from the OG repo: a) cloning engine, b) shared stuff and c) gitrelease +RUN git clone -c http.sslVerify=false --branch ${OPENGNSYS_BRANCH} https://ognproject.evlt.uma.es/gitea/opengnsys/opengnsys.git /tmp/ogrepo && \ + mv /tmp/ogrepo/client/engine /tmp/ogrepo/client/shared /tmp/opengnsys/ && \ + git --git-dir /tmp/ogrepo/.git log --date format:r%Y%m%d --format=%ad -1 >/tmp/opengnsys/oglive_builder/gitrelease && \ + rm -rf /tmp/ogrepo/ -RUN echo foo4 +RUN echo foo2 ## development: invalidate docker cache at this point, so that the 'COPY' below actually copies files COPY . /tmp/opengnsys/oglive_builder/ RUN cp /tmp/opengnsys/oglive_builder/schroot.conf /tmp/opengnsys/oglive_builder/mount-defaults /etc/schroot/ && echo '' >/etc/schroot/default/nssdatabases && rm -f /etc/schroot/setup.d/*chrootname diff --git a/boottools/btog.py b/boottools/btog.py index 64350dc..5e2218b 100644 --- a/boottools/btog.py +++ b/boottools/btog.py @@ -131,11 +131,10 @@ def GetOsInfo1 (type_client): oshttp=None return osdistrib, oscodename, osrelease, osarch, oshttp -def GetOsInfo2 (ogrepo_dir, versionboottools, oscodename, osrelease, osarch): - gitrelease, _ = utils.run (['git', '--git-dir', f'{ogrepo_dir}/.git', 'log', '--date', 'format:r%Y%m%d', '--format=%ad', '-1']) +def GetOsInfo2 (versionboottools, oscodename, osrelease, osarch, gitrelease): nameisoclient ='-'.join ([versionboottools, oscodename, osrelease, osarch, gitrelease]) namehostclient = '-'.join ([versionboottools, oscodename, gitrelease]) - return gitrelease, nameisoclient, namehostclient + return nameisoclient, namehostclient def mkrootfs (btrootfsimg, btrootfsimglabel, btrootfsmnt, btvirtualdisksize, bttargetdir, osarch): logger.info (f'Creación y formateo del disco virtual "{btrootfsimg}" "{btvirtualdisksize}" MB') diff --git a/mkoglive.py b/mkoglive.py index 12b5704..58e24ad 100755 --- a/mkoglive.py +++ b/mkoglive.py @@ -142,14 +142,17 @@ except: pass logger.info ('OpenGnsys CLIENT installation begins') logger.info ('STAGE 1 - clone opengnsys repo') -ogrepo_dir = '/tmp/ogrepo' ## per the Dockerfile + +fd = open (f'{curdir}/gitrelease', 'r') ## per the Dockerfile +gitrelease = fd.readline().strip() +fd.close() osdistrib, oscodename, osrelease, osarch, oshttp = btog.GetOsInfo1 (type_client) if osdistrib is None: logger.error ('GetOsInfo1() failed') sys.exit (1) btdir, bttargetdir, btrootfsimg, btrootfsmnt, btrootfsimglabel, log_file, versionboottools, btvirtualdisksize = btog.GetVar (osarch) -gitrelease, nameisoclient, namehostclient = btog.GetOsInfo2 (ogrepo_dir, versionboottools, oscodename, osrelease, osarch) +nameisoclient, namehostclient = btog.GetOsInfo2 (versionboottools, oscodename, osrelease, osarch, gitrelease) logger.info (':'.join ([osdistrib, oscodename, osrelease, osarch, oshttp])) logger.info ('STAGE 2 - install software in the VM')