The UC 2.0 project uses http://updatecenter2.dev.java.net
for source code control and issue tracking. UC 2.0 has a subversion source repository as opposed to UC 1.0's repository. (Historical note: The need to have a subversion repository forced the creation of a separate project to get such a repository.)
UC 2.0 main build tasks typically only need to perform general build orchestration. Various general and python based build tools were evaluated and Apache Aant
, a Java-based generic build sequencer was selected. For the 2.0 release, Ivy
was used for dependency management, but since the B16 build, Ivy is no longer used and dependencies are checked into the source tree.
Note:
). During development, the tool can be run from here.
trunk/
www/
repository/ - maven repository for binaries (no longer used)
project/
README.txt
build.xml
build/ - build output
dependencies/ - binary dependencies from external area
docs/
tools/ - build scripts, custom ant tasks etc.
updatetool/ -
src/
...
tests - unit tests
bootstrap/ - bootstraps ips into an image
src/
java/
build/
pkg-java/
src/
java/
build/
tests/ - examples of how to use UC
external/
ips/ - publishes to maven manually
README.txt
python/ - publishes to maven manually
README.txt
wxPython/ - publishes to maven manually
README.txt
gettext/
README.txt - Instructions on obtaining or building the tools yourself
In addition to the README files that are including in the external source tree, some dependencies also have additional wiki pages to help with building:
After the product is released or branched the version number will need to be changed. Also each promoted build may need the build number incremented. Follow the steps listed in Managing UC2 Versioning for details about how to update version numbers and other release specific changes that may be necessary.
1.7.0 or later.
To checkout the source from the trunk and build the project, do the following:
C:\> svn checkout https://updatecenter2.dev.java.net/svn/updatecenter2/trunk/project uc2 --username guest (Note: There is no password for the guest user. Just press enter at the password prompt.) C:\> cd uc2 C:\uc2> ant allTo check out the source from a branch - the version 2.2 sustaining (or update) branch in this case ÃÂâÃÂÃÂÃÂàuse the below checkout command and perform the build steps as in the above example.
C:\> svn checkout https://updatecenter2.dev.java.net/svn/updatecenter2/branches/2.2sustaining uc2 --username guestTo check out external depndencies, use this checkout command:
C:\> svn checkout https://updatecenter2.dev.java.net/svn/updatecenter2/external external --username guest
At this point, the product has been built under dist/build. To run the updatetool GUI, execute the following (on Windows):
C:\uc2> build\dist\windows-i386\bin\updatetool
The Update Center 2.0 workspace includes a NetBeans project file that assists with doing development using NetBeans. Here are step by step instructions for building and running the project using NetBeans:
.
(optional - makes editing python code easier). Use the "Downloaded" tab within Tools -> Plugins to install the downloaded .nbm file.
Going forward, you can start the GUI by expanding the "build.xml" item under the Update Center project, right-clicking on the "run-updatetool" and selecting the "run target".
UC2:
/net/jwsre.sfbay/n/v14/updatecenter2-trunk/builds/yyyy-mm-dd_HH-MM-SS/archive (Sun Internal only)
http://jwsre.sfbay/hudson/job/updatecenter2-trunk
(Sun Internal only)
UC2 IPS: (Sun Internal only)
/net/jwsre.sfbay/n/v13/ips1.0/configurations/axis-label/<platform>/builds/yyyy-mm-dd_HH-MM-SS/archive (Sun Internal only)
http://jwsre.sfbay/hudson/job/ips1.0
(Sun Internal only)
Note: Each time you click on one of the the following links, a build will be scheduled on the hudson server
for the respective product.
UC2 Trunk
(Sun Internal only)
UC2 Sustaining
(Sun Internal only)
UC2 IPS
(Sun Internal only)
UC2 IPS Gate
(Sun Internal only)
http://koori.sfbay/java/re/updatecenter/2.0/promoted
(Sun Internal only)
http://download.java.net/updatecenter2/promoted
which was automatically installed into the nightly build repository
at 2am PT.
to point to the new build
announcing the availability of the new build
announcing the availability of the new build
| Procedure for Publishing the Maven Plugin |
|---|
To update a running set of repositories with the latest automated build, do the following:
A set of repositories that is automatically updated with each nightly build is available on updates.sfbay in the /export/IPS/UC20-nightly directory. These repositories run on ports 10031-10035. The initial gfv2.zip download file can be downloaded from http://updates.sfbay/UC20-nightly/gfv2.zip
. A cron job runs at 2am PT each day to update these repositories with the latest build.
To install the output from the latest build on the SWAN updates.sfbay server using a set of fresh repositories, do the following.
Platform values are:
| Multi-Platform Repo URL | Platform-specific Repo URL | Role | pkg.depotd Ports |
|---|---|---|---|
http://updates.sfbay/dev/promoted/![]() | http://updates.sfbay/dev/promoted/platform/ | Most recent promoted build | windows 10021![]() solaris-x86 10022 ![]() solaris-sparc 10023 ![]() linux 10024 ![]() mac 10025 ![]() |
http://updates.sfbay/dev/latest/![]() | http://updates.sfbay/dev/latest/platform/ | Nightly or most recent dev build from Hudson | windows 10031![]() solaris-x86 10032 ![]() solaris-sparc 10033 ![]() linux 10034 ![]() mac 10035 ![]() |
http://updates.sfbay/gfv3tp2/![]() | http://updates.sfbay/gfv3tp2/platform/ | GF V3 TP2 test repo | windows 18821![]() solaris-x86 18822 ![]() solaris-sparc 18823 ![]() linux 18824 ![]() mac 18825 ![]() |
http://updates.sfbay/opends/![]() | http://updates.sfbay/opends/platform/ | OpenDS experimental repo | windows 11121![]() solaris-x86 11122 ![]() solaris-sparc 11123 ![]() linux 11124 ![]() mac 11125 ![]() |
1. Install python2.4
2. Download pywinauto from http://sourceforge.net/projects/pywinauto/files/
3. Install Ctpyes. Use the following URL to download it : http://sourceforge.net/project/showfiles.php?group_id=71702
4. Install SendKeys using the fllowing URL : http://www.rutherfurd.net/python/sendkeys/index.html
5. Install PyWinAuto module :
5.1 : Extract Pywinauto zip file
5.2 : Go to
5.3 : Launch the setup.py
Example : c:\Python24\python.exe setup.py install
This allows to import the PyWinAuto module to Python
6. Apply the following workaround for an issue discovered with PyWinAuto that results in a Traceback
after launching the updatetool
open the file :
C:\Python24\Lib\site-packages\pywinauto\application.py
Go to the line 922
Replace the line
if result == WAIT_TIMEOUT
by the line
if result == win32defines.WAIT_TIMEOUT
7. You are now ready to use PyWinAuto
and also, corrrect return false to return False
| Link | Purpose |
|---|---|
http://pywinauto.openqa.org![]() | Pwwinauto web site |
http://clearspace.openqa.org/community/pywinauto | Forum for PyWinAuto |
http://pywinauto.blogspot.com/![]() | The PyWinAuto creator blog |
| Test ID | PUrpose | Automation Status on Windows |
|---|---|---|
| updatetool_Sanity_01 | Launches updatetool and invokes the About | Automated |
| updatetool_Sanity_02 | Launches updatetool from an image , For this active image the toolkit is already installed Uninstall pkg-extra-tools package Reinstall pkg-extra-tools package Exits Updatetool | In Progress |
| updatetool_Sanity_03 | Launch updatetool change preferences from no proxy to using the proxy Do a Refresh | Not yet started |
| updatetool_Sanity_04 | Launch updatetool Create a new user image install a component into that user image Close the User Image | Partially automated, need to add the User Image closing |
| SWUM_Sanity_01 | Launch SW Update Manager and apply all updates | Automated |