(file) Return to TestMakefile CVS log (file) (dir) Up to [Pegasus] / pegasus

File: [Pegasus] / pegasus / TestMakefile (download)
Revision: 1.40, Sat Oct 22 23:58:12 2005 UTC (18 years, 6 months ago) by jim.wunderlich
Branch: MAIN
Changes since 1.39: +176 -53 lines
BUG#: 4240

TITLE: pegasus/Makefile rule simplefication

DESCRIPTION:
    - updated the usage model.
    - added usage rules in both Makefile and Testmakefile
    - added rules in Makefile to invoke the same named rule in the TestMakefile
    - added rules in TestMakefile to invoke the same named rule in the Makefile
    - removed building the repository prior to running the unit tests. The
      unit test may only use a local repository.
    - deprecated rules in TestMakefile having the same name as the recursivei
      rules (tests, and poststarttests) to eliminate confusion and ambiguity.
      Also deprecated prestarttests in TestMakefile. The new rules are alltests
      servertests and unittest respectively.
    - Deprecated rebuild in TestMakefile. The closest replacement is
      "make new smallworld"
    - added listplatform rule in Makefile
    - moved TestMakefile activetest to TestMAkefile as serverquicktests.
    - cleaned up the new servertests rule, was the old poststarttests,
      into separate modular components as servertestclean, servertestssetup,
      serversuite
    - The new usage model is:
         After "cvs checkout" of new tree:    make smallworld
                                 OR           make world

         After changes to include files:      make

         After changes to the files included: make build

         After "cvs update" or to start over: make new smallworld
                                 OR           make new world

#//%2005////////////////////////////////////////////////////////////////////////
#//
#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
#// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
#// IBM Corp.; EMC Corporation, The Open Group.
#// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
#// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
#// EMC Corporation; VERITAS Software Corporation; The Open Group.
#//
#// Permission is hereby granted, free of charge, to any person obtaining a copy
#// of this software and associated documentation files (the "Software"), to
#// deal in the Software without restriction, including without limitation the
#// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
#// sell copies of the Software, and to permit persons to whom the Software is
#// furnished to do so, subject to the following conditions:
#// 
#// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
#// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
#// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
#// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
#// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
#// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
#// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
#// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#//
#//==============================================================================
###############################################################################
##
## Test Makefile for Pegasus CIMOM
##
## see the usage rule for documentation of rules etc.
##
##
###############################################################################

error:
	@ $(ECHO) "Specify desired makefile option (i.e., unittests, usage )"

include $(PEGASUS_ROOT)/mak/config.mak
include $(PEGASUS_ROOT)/mak/test.mak
include $(PEGASUS_ROOT)/mak/commands.mak

system = localhost

.PHONY: FORCE

FORCE:

usage: FORCE
	$(USAGE)
	$(USAGE)"TestMakefile Primary Targets:"
	$(USAGE)
	$(USAGE)"The following are all standalone tests. They stop and start the server,"
	$(USAGE)"and build repositories as needed."
	$(USAGE)
	$(USAGE)"alltests           - Execute unittests and servertests"
	$(USAGE)"unittests          - Execute the unit functional tests - no repository"
	$(USAGE)"                     or active server is required"
	$(USAGE)"servertests        - Execute a basic server test suites (No security, No SSL)"
	$(USAGE)"standardtests      - Execute an extended server test suites "
	$(USAGE)"                     using multiple options."
	$(USAGE)"serverquicktests   - Executes a brief server test"
	$(USAGE)
	$(USAGE)"usage2             - usage on secondary test targets"
	$(USAGE)

usage2: FORCE
	$(USAGE)
	$(USAGE)"TestMakefile Secondary Targets:"
	$(USAGE)
	$(USAGE)"The following are run as part of the Primary target test suites and may"
	$(USAGE)"also be invoked as standalone tests."
	$(USAGE)
	$(USAGE)"TestXMLRepository       - Executes poststarttests on XML repository"
	$(USAGE)"                          built with cimmofl."
	$(USAGE)"TestXMLRepositoryServer - Executes poststarttests on XML repository" 
	$(USAGE)"                          built with cimmof."
	$(USAGE)"TestXMLCmpRepository    - Executes poststarttests on XML compressed"
	$(USAGE)"                          repository built with cimmofl."
	$(USAGE)"TestBinRepository       - Executes poststarttests on binary repository "
	$(USAGE)"                          built with cimmofl."
	$(USAGE)"TestBinRepositoryServer - Executes poststarttests on binary repository"
	$(USAGE)"                          built with cimmof."
	$(USAGE)"TestBinCmpRepository    - Executes poststarttests on binary compressed"
	$(USAGE)"                          repository built with cimmofl."
	$(USAGE)
	$(USAGE)"The following require the repository to be pre-built."
	$(USAGE)
	$(USAGE)"run_SSL_TS1             - Executes the SSL tests"
	$(USAGE)"run_OOP_TS1             - Executes the Out Of Process Provider tests"
	$(USAGE)
	$(USAGE)"The following require the repository to be pre-built and the server to be started."
	$(USAGE)
	$(USAGE)"serversuite             - the collection of test run by the servertests rule"
	$(USAGE)"serverquicksuite        - The collection of test run by the serverquicktests rule"
	$(USAGE)


##########################################################
#
# rules that are defined in Makefile
#
##########################################################

build: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile build

world: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile world

new: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile new

clean: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile clean

depend: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile depend


############################################################
#
# rules defined here
#
############################################################

#######################
#
# doc
#
doc:
	$(MAKE) --directory=$(PEGASUS_ROOT)/doc/ProviderSpec -f Makefile
	$(MAKE) --directory=$(PEGASUS_ROOT)/doc/DevManual -f Makefile


#######################
#
# repositoryServer
#
repositoryServer: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(SLEEP) 5
	$(RMDIRHIER) $(REPOSITORY_ROOT)
	$(CIMSERVER_START_SERVICE)
	$(SLEEP) 5
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer

######################
#
# prestarttests is being deprecated since poststarttest is being deprecated
# in favor of name more related to its intended functionality. 
#
prestarttests: prestarttests_msg shortsleep unittests

prestarttests_msg: FORCE
	@$(ECHO) "=============================================================================="
	@$(ECHO) "TestMakefile: The \"prestarttests\" rule is being deprecated."
	@$(ECHO) "              Use \"make testusage\" for a description of the usage model."	
	@$(ECHO) "              The equivalent new rule is \"unittests\"."  
	@$(ECHO) "              Invoking the \"unittests\" rule now."
	@$(ECHO) "=============================================================================="

####################
#
# poststarttests is being deprecated since it multiply defines a 
# recursive make rule leading to ambuguity and confusion.
#
poststarttests: poststarttests_msg shortsleep servertests 

poststarttests_msg: FORCE
	@$(ECHO) "==============================================================================="
	@$(ECHO) "TestMakefile: The \"posstarttests\" rule is being deprecated.."  
	@$(ECHO) "              Use \"make testusage\" for a description of the usage model."	
	@$(ECHO) "              The equivalent new rule is \"servertests\"."  
	@$(ECHO) "              Invoking the \"servertests\" rule now."
	@$(ECHO) "==============================================================================="

#####################
#
# tests is being deprecated since it multiply defines a 
# recursive make rule leading to ambuguity and confusion.
#
tests: tests_msg shortsleep alltests

tests_msg: FORCE
	@$(ECHO) "==================================================================="
	@$(ECHO) "TestMakefile: The \"tests\" rule is being deprecated."
	@$(ECHO) "              Use \"make testusage\" for a description of the usage model."	
	@$(ECHO) "              The equivalent new rule is \"alltests\"."  
	@$(ECHO) "              Invoking the \"alltests\" rule now."
	@$(ECHO) "==================================================================="


shortsleep: FORCE
	@$(SLEEP) 5

####################
#
# unittests
#
unittests: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile tests
	@ $(ECHO) "+++++ TestMakefile unittests complete"

#####################
#
# servertests
#

servertestsclean: FORCE
	-$(CIMSERVER_STOP_SERVICE)
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/CQL/tests/Queries -f Makefile clean
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Pegasus/Query/QueryExpression/tests/Queries -f Makefile clean
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile clean


servertestssetup: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
	$(CIMSERVER_START_SERVICE)
	$(SLEEP) 5

servertests: servertestsclean servertestssetup serversuite
	@ $(ECHO) "+++++ TestMakefile servertests suites complete"

serversuite: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestBinRepository
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_OOP_TS1
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_IndInit_TS1
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile run_SSL_TS1

####################
#
# serverquicktests
#
serverquicktests: servertestsclean servertestssetup serverquicksuite
	@ $(ECHO) "+++++ TestMakefile serverquicktests complete"

serverquicksuite: FORCE
	$(PEGASUS_HOME)/bin/TestClient
	$(PEGASUS_HOME)/bin/Client
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests

####################
#
# alltests
#
alltests: unittests servertests
ifeq ($(PEGASUS_PLATFORM),WIN32_IX86_MSVC)
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile uninstall
endif
	@ $(ECHO) "+++++ TestMakefile alltests Complete"

###############################################################################
##  Test Suite Definitions
###############################################################################

###############################################################################
##  OOP Test Suite 1: "Out-of-Process"(OOP) Provider Tests 
##
##  Configuration Options: forceProviderProcesses=true
##
###############################################################################
OOP_TS1_CONFIG_OPTIONS = forceProviderProcesses=true
OOP_TS1_TEST_CMDS = \
        TestClient

run_OOP_TS1:
	$(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
            CIMSERVER_CONFIG_OPTIONS="$(OOP_TS1_CONFIG_OPTIONS)" \
            TESTSUITE_CMDS="$(OOP_TS1_TEST_CMDS)"
###############################################################################

###############################################################################
##  IndInit Test Suite 1: IndicationService Initialization Tests 
##
##  Configuration Options: (none)
##
###############################################################################
IndInit_TS1_CONFIG_OPTIONS = 
IndInit_TS1a_TEST_CMDS = \
	$(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1a
IndInit_TS1b_TEST_CMDS = \
	$(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Pegasus/IndicationService/tests/ProcessIndication@@IndInit_TS1b

run_IndInit_TS1:
	$(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
            CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
            TESTSUITE_CMDS="$(IndInit_TS1a_TEST_CMDS)"
	$(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
            CIMSERVER_CONFIG_OPTIONS="$(IndInit_TS1_CONFIG_OPTIONS)" \
            TESTSUITE_CMDS="$(IndInit_TS1b_TEST_CMDS)"

###############################################################################
##  SSL Test Suite 1: SSL Tests
##
##  Configuration Options: enableAuthentication=true
##                         enableHttpsConnection=true
##                         sslClientVerificationMode=optional
##                         sslTrustStoreUserName=$(CURRENT_USER)
##
###############################################################################
SSL_TS1_CONFIG_OPTIONS = enableHttpsConnection=true enableAuthentication=true \
       sslClientVerificationMode=optional sslTrustStoreUserName=$(CURRENT_USER)
SSL_TS1_TEST_CMDS = \
       $(MAKE)@@--directory=$(PEGASUS_ROOT)/src/Clients/ssltrustmgr/tests@@SSLCertificateTest1

ifdef PEGASUS_HAS_SSL
run_SSL_TS1: FORCE
	$(MAKE) -f $(PEGASUS_ROOT)/TestMakefile runTestSuite \
            CIMSERVER_CONFIG_OPTIONS="$(SSL_TS1_CONFIG_OPTIONS)" \
            TESTSUITE_CMDS="$(SSL_TS1_TEST_CMDS)"
else
run_SSL_TS1: FORCE
	@ $(ECHO) "PEGASUS_HAS_SSL not defined: Skipping run_SSL_TS1 poststarttest"

endif


###############################################################################



##############################################################################
##
## TestXMLRepository rule is used to run the poststarttests suite on
## the XML Repository built using cimmofl
##
## TestXMLRepositoryServer rule is used to run the poststarttests suite on
## the XML Repository built using cimmof
##
## TestXMLCmpRepository rule is used to run the poststarttest suite on 
## the XML Compressed Repository built using cimmofl
##

############################
##
## TestXMLRepository
##

TestXMLRepository: TestXMLClean TestXMLBuildRepo  TestXMLRepo
	@ $(ECHO) TestXMLRepository +++++ passed all test

############################
##
## TestXMLRepositoryServer
##
TestXMLRepositoryServer: TestXMLClean  TestXMLBuildRepoServ TestXMLRepo
	@ $(ECHO) TestXMLRepositoryServer +++++ passed all test

############################
##
## TestXMLCmpRepository -  run poststarttest on Compressed BIN Repository
##
ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY
TestXMLCmpRepository: FORCE
	@ $(ECHO) TestXMLCmpRepository +++++ Repository compressed by default - nothing more to test.
	@ $(ECHO) TestXMLCmpRepository +++++ passed all test
else

ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST

TestXMLCmpRepository: TestXMLClean  TestCmpBuild TestXMLBuildRepo TestXMLRepo TestRegBuild
	@ $(ECHO) TestXMLCmpRepository +++++ passed all test
else
TestXMLCmpRepository: FORCE
	@ $(ECHO) TestXMLCmpRepository +++++ Not tested 
	@ $(ECHO) TestXMLCmpRepository +++++ refer to readme.compressed_repository
	@ $(ECHO) TestXMLCmpRepository +++++ to enable: set PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST=true 
endif
endif

###########################
##
## TestXMLClean
##
TestXMLClean: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_xml


###########################
##
## TestXMLStartServer
##
TestXMLStartServer: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
	- $(MKDIRHIER) $(PEGASUS_HOME)/repository_xml
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="repositoryDir=$(PEGASUS_HOME)/repository_xml"
	$(SLEEP) 5

####
#### The following caused the cimserver to fail on startup
####
####	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinRepository=false repositoryDir=$(PEGASUS_HOME)/repository_xml"

###########################
##
## TestXMLBuildRepo
##
TestXMLBuildRepo: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML


###########################
##
## TestXMLBuildRepoServ
##
TestXMLBuildRepoServ: TestXMLStartServer
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 


###########################
##
## TestXMLRepo
##
TestXMLRepo: servertestsclean
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestXMLStartServer
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_xml REPOSITORY_MODE=XML
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 






##############################################################################
##
## TestBinRepository rule is used to run the poststarttests suite on
## the Binary Repository built using cimmofl
##
## TestBinRepositoryServer rule is used to run the poststarttests suite on
## the Binary Repository built using cimmof
##
## TestBinCmpRepository rule is used to run the poststarttest suite on 
## the Binry Compressed Repository built using cimmofl
##

############################
##
## TestBinRepository
##
### bug 3011 disabled Binary Repository testing on LINUX_IA64 to allow
### the nightly tests to run

TestBinRepository: TestBinClean TestBinBuildRepo  TestBinRepo
	@ $(ECHO) TestBinRepository +++++ passed all test


############################
##
## TestBinRepositoryServer
##
TestBinRepositoryServer: TestBinClean  TestBinBuildRepoServ TestBinRepo
	@ $(ECHO) TestBinRepositoryServer +++++ passed all test

############################
##
## TestBinCmpRepository -  run poststarttest on Compressed BIN Repository
##
ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY
TestBinCmpRepository: FORCE
	@ $(ECHO) TestBinCmpRepository +++++ Repository compressed by default - nothing more to test.
	@ $(ECHO) TestBinCmpRepository +++++ passed all test
else

ifdef PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST

TestBinCmpRepository: TestBinClean  TestCmpBuild TestBinBuildRepo TestBinRepo TestRegBuild
	@ $(ECHO) TestBinCmpRepository +++++ passed all test
else
TestBinCmpRepository: FORCE
	@ $(ECHO) TestBinCmpRepository +++++ Not tested 
	@ $(ECHO) TestBinCmpRepository +++++ refer to readme.compressed_repository
	@ $(ECHO) TestBinCmpRepository +++++ to enable: set PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST=true 
endif
endif


###########################
##
## TestBinClean
##
TestBinClean: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryclean REPOSITORY_NAME=repository_bin


###########################
##
## TestBinStartServer
##
TestBinStartServer: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT)/src/Server -f Makefile install_run
	- $(MKDIRHIER) $(PEGASUS_HOME)/repository_bin
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstart CIMSERVER_CONFIG_OPTIONS="enableBinaryRepository=true repositoryDir=$(PEGASUS_HOME)/repository_bin"
	$(SLEEP) 5

###########################
##
## TestBinBuildRepo
##
TestBinBuildRepo: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN


###########################
##
## TestBinBuildRepoServ
##
TestBinBuildRepoServ: TestBinStartServer
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repositoryServer REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepositoryServer REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 


###########################
##
## TestBinRepo
##
TestBinRepo: servertestsclean 
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestBinStartServer
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile poststarttests REPOSITORY_NAME=repository_bin REPOSITORY_MODE=BIN
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop 




############################
##
## TestCmpBuild - used to compile the repository for compression
##
TestCmpBuild: FORCE
	@ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository clean
	@ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository depend PEGASUS_ENABLE_COMPRESSED_REPOSITORY=1
	@ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository PEGASUS_ENABLE_COMPRESSED_REPOSITORY=1


############################
##
## TestRegBuild - used to compile the repository for no compression
##
TestRegBuild: FORCE
	@ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository clean
	@ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository depend 
	@ $(MAKE) "-SC" $(ROOT)/src/Pegasus/Repository 


###############################################################################
##
## Trace Configuration
##
## Options:
##      XMLTraceOn: Enables XML request and response tracing.
##      ProviderLoadTraceOn: Enables Provider load tracing.
##      XML+ProviderLoadTraceOn: Enables both XML request/response and Provider
##                                 load tracing.
##      AllTraceOn: Enables all tracing.
##      AllTraceOff: Disables all tracing.
##      list: Lists trace settings.
##
###############################################################################

XMLTraceOn:
	cimconfig -s traceComponents=XmlIO -c
	cimconfig -s traceLevel=3 -c
	cimconfig -g traceComponents
	cimconfig -g traceLevel

ProviderLoadTraceOn:
	cimconfig -s traceComponents=ProvManager,OsAbstraction
	cimconfig -s traceLevel=3 -c
	cimconfig -g traceComponents
	cimconfig -g traceLevel

XML+ProviderLoadTraceOn:
	cimconfig -s traceComponents=XmlIO,ProvManager,OsAbstraction
	cimconfig -s traceLevel=3 -c
	cimconfig -g traceComponents
	cimconfig -g traceLevel

AllTraceOn:
	cimconfig -s traceComponents=ALL
	cimconfig -s traceLevel=3 -c
	cimconfig -g traceComponents
	cimconfig -g traceLevel

AllTraceOff:
	cimconfig -s traceComponents=
	cimconfig -g traceComponents
	cimconfig -g traceLevel

list:
	cimconfig -g traceComponents
	cimconfig -g traceLevel
	cimconfig -g traceFilePath

# More options...

standardtests: FORCE
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i DisableSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestCimmof
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestNoSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthentication
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestLocalSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestRemoteSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile EnableAuthorization
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile TestAuthorization
	@ $(ECHO) "+++++ TestMakefile standardtests complete"

TestNoSecurity:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile tests
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal

TestLocalSecurity:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest -f Makefile poststarttests HOSTNAME= PORT= USER= PASSWORD= SECURITY_ENABLED=true

TestRemoteSecurity:
	TestClient -user guest -password guest $(system):5988
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/static -f Makefile poststarttests HOSTNAME=-h$(system) USER=-uguest PASSWORD=-wguest SECURITY_ENABLED=true

TestAuthorization:
	DeleteNamespace -a -user guest -password guest
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile RunTestClientLocal
	TestClient -user guest -password guest $(system):5988
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/static -f Makefile poststarttests HOSTNAME=-h$(system) USER=-uguest PASSWORD=-wguest SECURITY_ENABLED=true

TestSubscriptions:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile DisableSecurity
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile repository
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Makefile testrepository
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
	$(MAKE) --directory=$(PEGASUS_ROOT)/test/wetest/cimv2/Subscription -f Makefile poststarttests
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile cimstop

TestCimmof:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f Testcimmof poststarttests

RunTestClientLocal:
	TestClient -local

DisableSecurity:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	cimconfig -s enableAuthentication=false -p
	cimconfig -s enableNamespaceAuthorization=false -p

EnableAuthentication:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	cimconfig -s enableAuthentication=true -p
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile ConfigureUsers

EnableAuthorization:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	cimconfig -s enableNamespaceAuthorization=true -p
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithoutSSL
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i ConfigureAuthorizations

EnableSSL:
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile -i cimstop
	$(MAKE) --directory=$(PEGASUS_ROOT) -f TestMakefile startcimWithSSL

ConfigureUsers:
ifndef PEGASUS_PAM_AUTHENTICATION
	cimuser -a -u guest -w guest
endif

ConfigureAuthorizations:
	cimauth -a -u guest -n test/cimv2 -R -W
	cimauth -a -u guest -n root/cimv2 -R -W
	cimauth -a -u guest -n root/PG_Internal -R -W
	cimauth -a -u guest -n root/PG_InterOp -R -W
	cimauth -a -u guest -n root/benchmark -R -W
	cimauth -a -u guest -n root/sampleprovider -R -W
	cimauth -a -u guest -n test/static -R -W
	cimauth -a -u guest -n root/SampleProvider -R -W
	cimauth -a -u guest -n root -R -W
	cimauth -a -u guest -n test1 -R -W
	cimauth -a -u guest -n test2 -R -W
	cimauth -a -u guest -n test3 -R -W
	cimauth -a -u guest -n test4 -R -W
	cimauth -a -u guest -n test5 -R -W
	cimauth -a -u guest -n test6 -R -W
	cimauth -a -u guest -n test1/test2 -R -W
	cimauth -a -u guest -n test1/test2/test3 -R -W
	cimauth -a -u guest -n test1/test2/test3/test4 -R -W
	cimauth -a -u guest -n test1/test2/test3/test4/test5 -R -W
	cimauth -a -u guest -n test1/test2/test3/test4/test5/test6 -R -W

startcimWithoutSSL:
	$(CIMSERVER_START_SERVICE)
	$(SLEEP) 5

startcimWithSSL:
	$(CIMSERVER_START_SERVICE) enableHttpConnection=false enableHttpsConnection=true
	$(SLEEP) 5

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2