--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/cmd/installadm/test/installadm_readme.html Tue May 19 19:25:04 2009 -0600
@@ -0,0 +1,528 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+ <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=iso-8859-1">
+ <TITLE></TITLE>
+ <META NAME="GENERATOR" CONTENT="StarOffice 8 (Solaris x86)">
+ <META NAME="AUTHOR" CONTENT="Sundar Yamunachari">
+ <META NAME="CREATED" CONTENT="20090315;9422700">
+ <META NAME="CHANGEDBY" CONTENT="Sundar Yamunachari">
+ <META NAME="CHANGED" CONTENT="20090519;18012400">
+ <META NAME="CHANGEDBY" CONTENT="Sundar Yamunachari">
+ <META NAME="CHANGEDBY" CONTENT="Sundar Yamunachari">
+</HEAD>
+<BODY LANG="en-US" DIR="LTR">
+<TABLE WIDTH=100% BORDER=1 CELLPADDING=4 CELLSPACING=3 STYLE="page-break-before: always">
+ <COL WIDTH=29*>
+ <COL WIDTH=30*>
+ <COL WIDTH=71*>
+ <COL WIDTH=126*>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>Source file</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>Function</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>What is changing?</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Tests to be run?</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">installadm.c</FONT></P>
+ </TD>
+ <TD WIDTH=12%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">do_create_service</FONT></P>
+ </TD>
+ <TD WIDTH=28%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">service part of the code
+ is changed</FONT></P>
+ </TD>
+ <TD WIDTH=49%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">create a service with and
+ with out -n <svcname> option</FONT></P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=12%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=28%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">DHCP part is changed</FONT></P>
+ </TD>
+ <TD WIDTH=49%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">create a DHCP server using
+ installadm create-service with -i and -c option. Check whether the
+ DHCP table is created correctly with all macros.</FONT></P>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">create a service with out
+ -i and -c option to see whether it either creates the macros in
+ the DHCP table (if permitted) or print what needs to be added to
+ the DHCP table.</FONT></P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=12%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=28%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">Contents of menu.lst are
+ changed or the code that touches creating files in /tftpboot
+ directory is changed</FONT></P>
+ </TD>
+ <TD WIDTH=49%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">create a service using
+ create-service and check whether the intended changes are
+ reflected in the files (boot-file, menu.lst and loop-back mount of
+ boot) under /tftpboot directory. Make sure that there are no
+ regression.</FONT></P>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">Also run a create-client
+ to make sure that thre are no regression</FONT></P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=12%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=28%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">Change touches the code
+ that configures files for SPARC client</FONT></P>
+ </TD>
+ <TD WIDTH=49%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">create a service using
+ create-service and check whether the intended changes are
+ reflected in the files (wanboot.conf and install.conf) under
+ /etc/netboot/ directory. Make sure that there are no regression. </FONT>
+ </P>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">Also run a create-client
+ to make sure that there are no regression</FONT></P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=12%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=28%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">Change that touches the
+ way the service configuration saved, removed or retrieved</FONT></P>
+ </TD>
+ <TD WIDTH=49%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">Be cautious. This will
+ affect the existing services. Make sure that there are no
+ regression with existing services. Execute list, add and delete
+ manifests with existing services. Stop and restart existing
+ services. Add a new service and delete an existing service.</FONT></P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">installadm.c</FONT></P>
+ </TD>
+ <TD WIDTH=12%>
+ <P><FONT SIZE=2 STYLE="font-size: 11pt">do_delete_service</FONT></P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any change here will affect the service and configuration files</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a new service. Delete the service with and with out -x
+ options. Check service information using svccfg after delete,
+ process dns-sd, AI web server running on the port used by the
+ service. Check /tftpboot (for X86) and /etc/netboot (for SPARC)
+ for configuration files. After deleting service, run a add-client
+ with the deleted service to see it fails.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>do_list</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any change here or python module 'list_manifests' affect the
+ installadm list command</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create some services and add some custom manifests to the
+ services. Run installadm list with or with out '-n svcname'
+ option. Make sure that all services are listed and all manifests
+ to a service is listed.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>do_enable</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Wrapper function to call 'enable_install_service'</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Run installadm enable to test the changes</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>do_disable</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Stop the service and change the SMF property</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Run installadm disable. Verify that dns-sd process is stopped.
+ The AI web server running on the service port also should be
+ stopped. Check the properties of the SMF service and check the
+ status.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>get_ip_from_hostname</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Utility function to get the IP address from the host name</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Run installadm create-service and make sure that it is
+ successful.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>check_for_enabled_service</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Changes to this function affects the SMF install service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Try to enable service with out any install service. The SMF
+ service should go to maintenance. Create a service and then SMF
+ service will be enabled. Disable/delete the service, the SMF
+ service should go to maintenance again.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>smf_service_enable_attempt</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Changes to this function affects the SMF install service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Try to enable service with out any install service. The SMF
+ service should go to maintenance. Create a service and then SMF
+ service will be enabled. Disable/delete the service, the SMF
+ service should go to maintenance again</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>enable_install_service</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Changes to this function affects the SMF install service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a service. Disable it and enable it to see everything
+ works correctly.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm_util.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>get_free_tcp_port</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Gets an unused free TCP port
+ </P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a new service using create-service. Disable and enable
+ the service to see AI web server comes up correctly</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm_util.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>check_port_in_use</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Check whether the port is already used by a service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create multiple services. Delete some of them. Create new
+ services. Make sure that the same port is not used by two
+ different services.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm_util.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>get_service_props</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Get the properties associated with a service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create few services. Run svccfg to get the properties and check
+ whether they are same as what is used during the create-service</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm_util.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>set_service_props</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Set the properties to a service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create few services. Run svccfg to get the properties and check
+ whether they are same as what is used during the create-service</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm_util.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>get_service_data</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>It is used by internal functions</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create few services. Add a custom manifest and list services to
+ make sure that internal functions are working correctly.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm_util.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>remove_install_service</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Remove SMF properties of a service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a service and delete a service. Use svccfg to get the
+ properties of a deleted service.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm_util.c</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>save_service_data</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Set the properties to a service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create few services. Run svccfg to get the properties and check
+ whether they are same as what is used during the create-service</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>create-client.sh</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>Read the comments on the file</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any changes here will affect create-client for SPARC and X86</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a sparc client and x86 client. Make sure that they are
+ setup correctly. Look at the configuration files, DHCP output or
+ macros (if the install server is DHCP server). Boot the clients
+ and make sure that it boots and starts the install.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>delete-client.sh</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any changes here will affect delete-client for SPARC and X86</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a sparc client and x86 client. Look at the configuration
+ files, DHCP output or macros (if the install server is DHCP
+ server). Delete the clients to see the files are cleaned up.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>installadm-common.sh</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>Read the comments in the file</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any changes here will affect create-service, and create-client</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a SPARC and X86 service. Look at the configuration files
+ to check whether they setup correctly. Create a sparc client and
+ x86 client and make sure that the client configuration is correct.
+ Boot the clients and make sure that it boots and starts the
+ install.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>setup-dhcp.sh</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>Read the comments in the file</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any changes here will affect create-service, and create-client</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a SPARC and X86 service. Look at the DHCP macros or
+ output to check whether they setup correctly. Create a sparc
+ client and x86 client and make sure that the DHCP macros or output
+ is correct. Boot the clients and make sure that it boots and
+ starts the install.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>setup-image.sh</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>Read the comments in the file</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any changes here will affect create-service and delete-service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a SPARC and X86 service. Look at the target directory
+ and inspect that all files are laid out correctly.. Create clients
+ for these services. Boot the clients and make sure that it boots
+ and starts the install. Delete the service with -x option and see
+ whether the target directory is removed</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>setup-service.sh</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>Read the comments in the file</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any changes here will affect create-service and delete-service</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a SPARC and X86 service. Check whether dns-sd process is
+ running for the service and check whether AI web server is running
+ for this service. Create clients for these services. Boot the
+ clients and make sure that it boots and starts the install. Delete
+ the service and see whether AI web server and dns-sd processes are
+ killed</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>setup-sparc.ch</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>Read the comments in the file</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any changes here will affect create-service and delete-service
+ for SPARC services</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a SPARC service. Look at the configuration files under
+ /etc/netboot to check whether they setup correctly. Create a sparc
+ client and make sure that the client configuration is correct.
+ Boot the client and make sure that it boots and starts the
+ install.</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=11%>
+ <P>setup-tftp-links.sh</P>
+ </TD>
+ <TD WIDTH=12%>
+ <P>Read the comments in the file</P>
+ </TD>
+ <TD WIDTH=28%>
+ <P>Any changes here will affect create-service and delete-service
+ for X86 services</P>
+ </TD>
+ <TD WIDTH=49%>
+ <P>Create a X86 service. Look at the configuration files under
+ /tftpboot to check whether they setup correctly. Create a sparc
+ client and make sure that the client configuration is correct.
+ Boot the client and make sure that it boots and starts the
+ install.</P>
+ </TD>
+ </TR>
+</TABLE>
+<P><BR><BR>
+</P>
+</BODY>
+</HTML>
\ No newline at end of file