[Ovirt-devel] [RFC][PATCH v2] edit-livecd : fail on error in arbitrary code

fishy fishy at linux.vnet.ibm.com
Tue Dec 15 06:10:46 UTC 2009


Please the patch listed here

On 12/03/2009 04:14 PM, fishy wrote:
> Purpose : fail iso build on encountering error in arbitrary code '$CODE'
>
> On 12/03/2009 04:09 PM, fishy wrote:
>> Please the patch listed here
>>
>> On 11/13/2009 02:06 PM, abhishek misra wrote:
>>> Hello All,
>>>
>>> Below are David's comments on my last patch
>>>
>>> David Huff wrote:
>>>> I took a look at this today, I am not sure that a requirement for 
>>>> 'CODE'
>>>> to touch a "fail" file is the best way to address this.
>>>>
>>>> I assume your script is mounting proc inside the ext filesystem, ie to
>>>> use yum or something.  And using trap and a similar mnt function, like
>>>> what is in edit-livecd, is not cleaning up all the mounts in this 
>>>> case?
>>>>
>>>> A fix may be to use /proc/mounts instead of df when adding the 
>>>> Exits in
>>>> the mnt function.
>>>>
>>>> Also can you clarify the statement, "note that it may not always be
>>>> possible to return some error code on failure in 'CODE'" I am not 
>>>> really
>>>> sure what you mean here.
>>>>
>>>> Does this make sense?
>>>>
>>>> -D
>>> David, you were right about proc , I've now taken care of that in my 
>>> 'CODE'
>>>
>>> Here is another patch that tries to achieve the same without using 
>>> 'touch fail'
>>>
>>> 1.  removed compound statement ( list )
>>>     I found that its usage does not prevent trap to come into action 
>>> if $CODE fails (which is desired )
>>>     but allows commands after (list) to continue executing ( which 
>>> is not desired )
>>>
>>> 2   added addExit "cd -"
>>>    when $CODE fails and control returns to edit-livecd script, it is 
>>> still in $WDIR/ex
>>>     this causes failure when trap attempts  umount
>>>
>>> 3   added EXIT=${EXIT/cd - ;/}
>>>     we no longer need it if $CODE goes well
>>>
>>> 4  added cd -
>>>    we need it as we removed (list)
>>>
>>> 5  removed set +/- e
>>>
>>> Signed-off-by: Abhishek Misra <fishy at linux.vnet.ibm.com
>>>
>>> ---
>>>
>>> --- a/edit-livecd    2009-11-10 17:23:21.000000000 +0530
>>> +++ b/edit-livecd    2009-11-13 14:03:50.000000000 +0530
>>> @@ -161,12 +161,11 @@ mnt "-t ext2 $WDIR/sq-w/LiveOS/ext3fs.im
>>>
>>> echo ">>> Updating CD content"
>>> if [ -n "$CODE" ]; then
>>> -    (
>>>       cd $WDIR/ex
>>> -      set +e
>>> +      addExit "cd -"
>>>       eval "$CODE"
>>> -      set -e
>>> -    )
>>> +      EXIT=${EXIT/cd - ;/}
>>> +      cd -
>>> else
>>>     echo "***"
>>>     echo "*** Pausing to allow manual changes.  Press any key to 
>>> continue."
>>>
>>> _______________________________________________
>>> Ovirt-devel mailing list
>>> Ovirt-devel at redhat.com
>>> https://www.redhat.com/mailman/listinfo/ovirt-devel
>>
>> _______________________________________________
>> Ovirt-devel mailing list
>> Ovirt-devel at redhat.com
>> https://www.redhat.com/mailman/listinfo/ovirt-devel
>
> _______________________________________________
> Ovirt-devel mailing list
> Ovirt-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/ovirt-devel




More information about the ovirt-devel mailing list