bldsystemtools/commonbldutils/GetDPComp/GetDPComp.pm
branchRCL_3
changeset 24 d90029decf65
parent 20 a9d4531388d0
child 33 54aa4a06a075
child 34 5e522efbae7b
--- a/bldsystemtools/commonbldutils/GetDPComp/GetDPComp.pm	Wed Mar 31 23:20:42 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,209 +0,0 @@
-#
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:
-#
-# Description: 
-#
-#!/usr/bin/perl
-
-package GetDPComp ;
-
-use strict;
-use LWP::UserAgent;
-use Getopt::Long;
-
-# LRtrim
-#
-# Description
-# This function removes the space on the left and right
-sub LRtrim( $ ) {
-  my $result = shift ;
-  $result =~ s/^\s+// ;
-  $result =~ s/\s+$// ;
-  return $result ;
-}
-
-sub GenerateComponentVersion( $  $ ) {
-  my $inputVersion = shift ;
-  $inputVersion = LRtrim($inputVersion);
-  my $iBaselineComponentName = shift ;
-  $iBaselineComponentName = LRtrim($iBaselineComponentName);
-  my %ComponentVersion = ( );
-  print "envsize -vv $iBaselineComponentName $inputVersion \n" ;
-  my @envsizeoutput = `envsize -vv $iBaselineComponentName $inputVersion `;
-  foreach my $line ( @envsizeoutput ) {
-    if ($line =~ /^Adding up size of / ) {
-      $line =~ s/^Adding up size of //;
-      $line = LRtrim( $line ) ;
-      my ($component, $release) = split(/\s+/, $line);
-      $ComponentVersion{$component} = $release ;
-    }
-  }
-  return  %ComponentVersion ; 
-}
-
-sub ValidateVersion( $ $ ) {
-  my $inputVersion = shift ;
-  $inputVersion = LRtrim($inputVersion);
-  my $iBaselineComponentName = shift ;
-  $iBaselineComponentName = LRtrim($iBaselineComponentName);
-  my $retval = 1 ;
-
-  if( (!defined $inputVersion) || ($inputVersion eq "" ) ){
-    $retval = 0 ;
-    print "\nERROR: No valid version specified. \n";
-  }elsif ( CheckBuild( $inputVersion, $iBaselineComponentName ) == 1 ){
-    print "\nUser specified build: $inputVersion is using. \n";
-  }elsif ( lc($inputVersion) eq "latest") {  
-    $inputVersion = GetLatestBuild( $iBaselineComponentName ); 
-    $inputVersion = LRtrim( $inputVersion );
-    if ($inputVersion eq "nobuild" )  {
-      $retval = 0 ;
-      print "\nERROR: No build available. \n";
-    } else {
-      print "\nLatest build: $inputVersion is using.\n";
-    }
-  }elsif ( lc($inputVersion) eq "green" ){
-    $inputVersion = GetLatestGreenBuild( $iBaselineComponentName ) ;
-    $inputVersion = LRtrim( $inputVersion );
-    if ($inputVersion eq "amberbuild" )  {
-      $retval = 0 ;
-      print "\nERROR: No green build available. \n";
-    } else {  
-      print "\nLatest green build: $inputVersion is using.\n";
-    }
-  }else {    
-    $retval = 0 ;
-    print "\nERROR: No Such Build: $inputVersion .\n";
-  }
-  return ( $inputVersion, $retval) ;
-}
-
-sub CheckBuild( $  $ ) {
-  my $iVer = shift ;
-  $iVer = LRtrim( $iVer );
-  my $iBaselineComponentName = shift ;
-  $iBaselineComponentName = LRtrim($iBaselineComponentName);
-  my $iRet = 0 ;
-  my @AllVersions = `latestver -a $iBaselineComponentName`; 
-
-  foreach my $build ( @AllVersions ) {
-    $build = LRtrim( $build );
-    if (lc( $build ) eq lc( $iVer ) ) {
-      $iRet = 1 ;
-      last ;
-    }
-  }
-  return $iRet ;
-}
-
-sub GetLatestBuild( $ ) {
-  my $iBaselineComponentName = shift ;
-  $iBaselineComponentName = LRtrim($iBaselineComponentName);
-  my $latestbuild = "nobuild";
-  my @AllBuilds = `latestver -a $iBaselineComponentName`; 
-  
-  foreach my $build ( @AllBuilds  ) {
-    my $status = BragFromAutobuild2HttpInterface( $build , $iBaselineComponentName  );
-    if ( ( lc( $status ) eq "green" ) or ( lc( $status ) eq "amber" )  ){
-      $latestbuild = $build ;
-      last ;
-    }
-  }
-  return $latestbuild ;
-}
-
-sub GetLatestGreenBuild( $ ) {
-  my $iBaselineComponentName = shift ;
-  $iBaselineComponentName = LRtrim($iBaselineComponentName);
-  my $greenbuild = "amberbuild";
-  my @AllBuilds = `latestver -a $iBaselineComponentName`; 
-
-  foreach my $build ( @AllBuilds  ) {
-    my $status = BragFromAutobuild2HttpInterface( $build , $iBaselineComponentName );
-    if ( lc( $status ) eq "green" ) {
-      $greenbuild = $build ;
-      last ;
-    }
-  }
-  return  $greenbuild ; # buildnumber or "amberbuild"
-}
-
-# Usage
-# Just call the sub-route called BragFromAutobuild2HttpInterface like this
-# my $status = BragFromAutobuild2HttpInterface("M04735_Symbian_OS_v9.5" , "gt_techview_baseline");
-# my $status = BragFromAutobuild2HttpInterface("DP00454_DeveloperProduct" , "sf_tools_baseline");
-# $status should be green or amber etc.
-
-## @fn BragFromAutobuild2HttpInterface($sVer)
-#
-# Queries the HTTP interface to Autobuild2 DB to determine the BRAG status of a CBR.
-#
-# @param sVer string, CBR for which the BRAG status is to be determined.
-#
-# @return string, BRAG status of the queried CBR. "TBA" if BRAG was indeterminable.
-
-sub BragFromAutobuild2HttpInterface( $  $ )
-{
-	my $sVer = shift ;
-    $sVer = LRtrim( $sVer );
-	my $iBaselineComponentName = shift ;
-    $iBaselineComponentName = LRtrim($iBaselineComponentName);
-    my $sBrag = "TBA";
-	my $sSnapshot = "";
-	my $sProduct = "";
-    if (( lc( $iBaselineComponentName ) eq "sf_tools_baseline" ) or ( lc( $iBaselineComponentName ) eq "developer_product_baseline" ) ) 
-    {
-    	if ( $sVer =~ /([\w\.]+)\_DeveloperProduct/i )
-        {
-            $sSnapshot = $1;
-            $sProduct = "DP";
-        }
-        else
-        {
-            return $sBrag; # i.e. "TBA"
-        }	
-    }elsif  (( lc( $iBaselineComponentName ) eq "gt_techview_baseline" ) or ( lc( $iBaselineComponentName ) eq "gt_only_baseline" ) ) 
-    {
-    	if ( $sVer =~ /([\w\.]+)\_Symbian_OS_v([\w\.]+)/i )
-        {
-		#print $1, "\n", $2, "\n";
-            $sSnapshot = $1;
-            $sProduct = $2;
-        }
-        else
-        {
-            return $sBrag; # i.e. "TBA"
-        }
-    }    
-    
-	my $parameters = "snapshot=$sSnapshot&product=$sProduct";
-	# Alternative method of getting the BRAG status - use the HTTP interface to Autobuild
-	my $sLogsLocation = "http://intweb:8080/esr/query?$parameters";
-	
-	my $roUserAgent = LWP::UserAgent->new;
-	my $roResponse = $roUserAgent->get($sLogsLocation);
- 
-	if ($roResponse->is_success and $roResponse->content =~ /\=\=\s*BRAG\s*\=\s*([a-z|A-Z]+)/)
-	{
-		$sBrag = $1;
-		$sBrag =~ s/\s//g;  # remove any whitespace padding
-		return $sBrag;
-	}
-	else
-	{		
-		return $sBrag; # i.e. "TBA"
-	}
-}
-
-
-1;
\ No newline at end of file