[Fwd: Re: [et-mgmt-tools] Cobbler, Cheetah and scripts in KS files]

Aaron Lippold lippold at gmail.com
Mon Jun 11 16:51:56 UTC 2007


Hi,

Sorry I had to leave the desk for a bit.

Ya it is suposed to be Bash. Which I am sure is the issue but a lot of
my developers are bash folks not python.

I posted the section that seems to be giving python / cheetah fits.

When I escape the ${var} it says end line expected. When cheetah
naturally complains because it does like the var defn.

hmmmm.

thoughts?

Thanks,

Aaron

On 6/11/07, Michael DeHaan <mdehaan at redhat.com> wrote:
> IRC log...
>
> <aaronlippold> I found that if I just copy the file to the web sever and
> reference it with kickstart=http://server/file then it doesn't parse the
> ks file. This is a workaround but I would still like to know how to do
> this correctly :)
> * rharrison (i=rharriso at nat/cisco/x-a6ceb7953d81c5fc) has joined #cobbler
> <aaronlippold> google doesn't seem to have an answer for why a X=bla and
> then ref X with \${X} would make the cheetah parser is throwing a ,
> 'Line ending expected', exception.
> <aaronlippold> throw an error ... sorry
> * timverhoeven (i=timverho at nat/ibm/x-78684106c698f2d3) has left #cobbler
> <mpdehaan> aaronlippold, hi
> <mpdehaan> aaronlippold, yes, http:// kickstarts do not parse, there is
> a reason for this
> <mpdehaan> suppose you want to use a kickstart file straight out of RHN,
> for instance, via URL...
> <mpdehaan> or if the kickstart is a file another admin maintains
> <mpdehaan> so they evaluate only when they are stored on the filesystem
> as templates, not whole kickstart files
> <mpdehaan> aaronlippold, hmm, perhaps you could post an example to the
> Cheetah list
> <mpdehaan> ah,
> <mpdehaan> so is \${X} supposed to reference a Cheetah var?  With
> escaping the "X" you won't
> <mpdehaan> I mean, the $
> <mpdehaan> The reason you escape \$ is to make sure they pass through to
> the kickstart file as $
> <mpdehaan> Unless that's supposed to be bash code
> <mpdehaan> aaronlippold, ping?
>
>
>
>
>
> ---------- Forwarded message ----------
> From: "Aaron Lippold" <lippold at gmail.com>
> To: "Fedora/Linux Management Tools" <et-mgmt-tools at redhat.com>
> Date: Mon, 11 Jun 2007 15:30:41 +0200
> Subject: Re: [et-mgmt-tools] Cobbler, Cheetah and scripts in KS files
> Actually, the error is 'Line ending expected'
>
> Aaron
>
> On 6/11/07, Aaron Lippold <lippold at gmail.com> wrote:
> > Hi,
> >
> > When I tried that I got an 'end of line expected' now.
> >
> > Here is the code that I am trying to use in my ks file.
> >
> >        FSTAB=/etc/fstab
> >        SED=/bin/sed
> >        # nosuid on /home
> >        if [ $(grep " \/home " ${FSTAB} | grep -c "nosuid") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/home " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/home.*${MNT_OPTS}\)/\1,nosuid/" ${FSTAB}
> >        fi
> >
> >        # nosuid on /sys
> >        if [ $(grep " \/sys " ${FSTAB} | grep -c "nosuid") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/sys " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/sys.*${MNT_OPTS}\)/\1,nosuid/" ${FSTAB}
> >        fi
> >
> >        # nosuid on /boot
> >        if [ $(grep " \/boot " ${FSTAB} | grep -c "nosuid") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/boot " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/boot.*${MNT_OPTS}\)/\1,nosuid/" ${FSTAB}
> >        fi
> >
> >        # nodev on /usr
> >        if [ $(grep " \/usr " ${FSTAB} | grep -c "nodev") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/usr " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/usr.*${MNT_OPTS}\)/\1,nodev/" ${FSTAB}
> >        fi
> >
> >        #nodev on /home
> >        if [ $(grep " \/home " ${FSTAB} | grep -c "nodev") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/home " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/home.*${MNT_OPTS}\)/\1,nodev/" ${FSTAB}
> >        fi
> >
> >        # nodev on /usr
> >        if [ $(grep " \/usr " ${FSTAB} | grep -c "nodev") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/usr " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/usr.*${MNT_OPTS}\)/\1,nodev/" ${FSTAB}
> >        fi
> >
> >        # nodev on /usr/local
> >        if [ $(grep " \/usr\/local " ${FSTAB} | grep -c "nodev") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/usr\/local " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/usr\/local.*${MNT_OPTS}\)/\1,nodev/" ${FSTAB}
> >        fi
> >
> >        # nodev on /tmp
> >        if [ $(grep " \/tmp " ${FSTAB} | grep -c "nodev") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/tmp " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/tmp.*${MNT_OPTS}\)/\1,nodev/" ${FSTAB}
> >        fi
> >
> >        # nodev on /var
> >        if [ $(grep " \/var " ${FSTAB} | grep -c "nodev") -eq 0 ]; then
> >                MNT_OPTS=$(grep " \/var " ${FSTAB} | awk '{print $4}')
> >                ${SED} -i "s/\( \/var.*${MNT_OPTS}\)/\1,nodev/" ${FSTAB}
> >        fi
> >
> > Thanks,
> >
> > Aaron
> >
> > On 6/8/07, Michael DeHaan <mdehaan at redhat.com> wrote:
> > > Aaron Lippold wrote:
> > > > Hi All,
> > > >
> > > > I am having issues with cobbler and importing a ks file of mine. All
> > > > is well with the simple parts of the %post section, but when I get to
> > > > a bit of scripting, the Cheetah parser complains at '" \/home "
> > > > ${FSTAB} ' etc.
> > > >
> > > > How can I escape this section or something?
> > > >
> > > > Thanks,
> > > >
> > > > Aaron
> > >
> > > Dollar signs need to be escaped with \$ since Cheetah is viewing the
> > > shell invocations as Cheetah code.
> > >
> > > This is not true of something like $foosball, where it will just say as
> > > "$foosball" if there is no key, but for something like ${foosball}, then
> > > yes, it must be escaped.
> > >
> > > Unfortunate, I agree.     If anyone has any suggestions on better
> > > templating libraries that don't require something heinous like Kid's
> > > XML, I'm all ears.   Templating systems
> > > all appear to have their ups and downs, which is apparently why everyone
> > > seems to write their own.    That's an option too, but I'm trying to not
> > > go there :)
> > >
> > > --Michael
> > >
> > >
> > > _______________________________________________
> > > et-mgmt-tools mailing list
> > > et-mgmt-tools at redhat.com
> > > https://www.redhat.com/mailman/listinfo/et-mgmt-tools
> > >
> >
>
> _______________________________________________
> et-mgmt-tools mailing list
> et-mgmt-tools at redhat.com
> https://www.redhat.com/mailman/listinfo/et-mgmt-tools
>
>




More information about the et-mgmt-tools mailing list