Fwd: Re: [PATCH] fwts-frontend: v2 update to conditional logic to better detect if we're booted via casper and additional logic to toggle auto shutdown behaviour when testing
Colin Ian King
colin.king at canonical.com
Mon Feb 13 16:52:45 UTC 2012
On 10/02/12 23:37, Chris Van Hoof wrote:
> I've tested this, it works -- I totally missed that this didnt make the
> fwts upload today :\ ... mind giving it an ack if you're cool with it?
>
> -------- Original Message --------
> Subject: Re: [PATCH] fwts-frontend: v2 update to conditional logic to
> better detect if we're booted via casper and additional logic to toggle
> auto shutdown behaviour when testing
> Date: Fri, 10 Feb 2012 16:19:02 -0500
> From: Chris Van Hoof <vanhoof at canonical.com>
> To: Colin Ian King <colin.king at canonical.com>
> CC: fwts-devel at lists.ubuntu.com
>
> On 02/09/2012 06:36 AM, Colin Ian King wrote:
>> On 30/01/12 15:10, Chris Van Hoof wrote:
>>> On 01/30/2012 04:49 AM, Keng-Yü Lin wrote:
>>>> On Fri, Jan 27, 2012 at 11:31 PM, Chris Van
>>>> Hoof<vanhoof at canonical.com> wrote:
>>>>> * v2 use $EUID vs id to check for uid.
>>>>>
>>>>> Signed-off-by: Chris Van Hoof<vanhoof at canonical.com>
>>>>> ---
>>>>> live-image/fwts-frontend-text | 19 ++++++++++++++++---
>>>>> 1 files changed, 16 insertions(+), 3 deletions(-)
>>>>>
>>>>> diff --git a/live-image/fwts-frontend-text
>>>>> b/live-image/fwts-frontend-text
>>>>> index dbf6635..fabdfb2 100755
>>>>> --- a/live-image/fwts-frontend-text
>>>>> +++ b/live-image/fwts-frontend-text
>>>>> @@ -25,12 +25,21 @@ FWTS_DATE=`date +%d%m%Y`
>>>>> FWTS_TIME=`date +%H%M`
>>>>>
>>>>> #
>>>>> +# Check if executed as root or with sudo
>>>>> +#
>>>>> +if [ $EUID -ne 0 ]; then
>>>>> + echo "`basename $0`: must be executed with sudo"
>>>>> + exit 1
>>>>> +fi
>>>>> +
>>>>> +#
>>>>> # for debugging, use:
>>>>> # - WORK_DIR=./fwts/$FWTS_DATE/$FWTS_TIME
>>>>> # if booting in fwts-live
>>>>> # - change FWTS_AUTO_SHUTDOWN= to alter default shutdown after
>>>>> testing completion
>>>>> #
>>>>> WORK_DIR=/fwts/$FWTS_DATE/$FWTS_TIME
>>>>> +FWTS_AUTO_SHUTDOWN="$1"
>>>>> SHUTDOWN_AT_END=1
>>>>>
>>>>> #
>>>>> @@ -42,10 +51,14 @@ if [ `grep -qs boot=casper /proc/cmdline; echo
>>>>> $?` -eq 0 ]; then
>>>>> fi
>>>>>
>>>>> #
>>>>> -# check /proc/cmdline for FWTS_AUTO_SHUTDOWN to toggle auto shutdown
>>>>> +# check /proc/cmdline and argv[1] for FWTS_AUTO_SHUTDOWN to toggle
>>>>> auto shutdown
>>>>> #
>>>>> -if [ `grep -qs FWTS_AUTO_SHUTDOWN=1 /proc/cmdline; echo $?` -ne 0
>>>>> -a $CASPER_DETECTED -eq 1 ]; then
>>>>> - SHUTDOWN_AT_END=0
>>>>> +if [ `grep -qs FWTS_AUTO_SHUTDOWN=1 /proc/cmdline; echo $?` -ne 0
>>>>> ]; then
>>>>> + if [ -n "${CASPER_DETECTED:+x}" ]; then
>>>>> + SHUTDOWN_AT_END=0
>>>>> + elif [ -n "${FWTS_AUTO_SHUTDOWN:+x}" ]; then
>>>>> + SHUTDOWN_AT_END=0
>>>>
>>>> Hope I understand this correctly: this means when executing
>>>> fwts-frontend-text plus anything in argv[1] it does not shut down the
>>>> machine in the end.
>>>
>>> Correct argv[1] is just a flag to toggle SHUTDOWN_AT_END when testing
>>> the script, without having to edit it.
>>>
>>>> But what is this used for if we can change the auto-shutdown behaviour
>>>> with FWTS_AUTO_SHUTDOWN in cmdline?
>>>
>>> FWTS_AUTO_SHUTDOWN= is used at boot in fwts-live to toggle the same
>>> behaviour since /usr/bin/fwts-frontend-text is read-only in a casper
>>> only boot environment, and the script is automatically executed upon
>>> boot, so you have no time to pass argv[1] before it executes.
>>>
>>>> From the source-level, when $FWTS_AUTO_SHUTDOWN has a value,
>>>> SHUTDOWN_AT_END=0. Shall it be named by FWTS_NO_AUTO_SHUTDOWN instead?
>>>
>>> I'm happy with how things are named now, but if you think
>>> FWTS_NO_AUTO_SHUTDOWN is a more clean approach, I'm happy to go that
>>> route.
>>
>> I've no opinion either way. I'm happy enough as it stands.
>
> acks? :D
>
Acked by: Colin King <colin.king at canonical.com>
More information about the fwts-devel
mailing list