Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 128 Next »

This page is used to track the process and progress of the R2015a release.

Release Lead Roles

RoleAssigneeAuthority/Responsibility
Release ManagerDSC (assigned 2/27/2020)"owns" release, initiates process, creates tracking page, sends daily status updates, tracks issues to completion, makes sure everyone gets their stuff done, brings decisions to CCB/team, maintains tracking page, collects lessons learned, documents process improvements for next release. Must be reachable and preferably in the office during critical stages like creating and testing RCs.
Build Manager

TDN: Windows

WCS: Mac

DJC/SK: Linux

controls build system, creates RCs, sends RC availability announcements. Must be reachable and preferably in the office during critical stages like creating and testing RCs.
Test Manager

GUI: TR

Script: DSC

control GUI/script testing for each RC.  Must be reachable and preferably in the office during critical stages like creating and testing RCs.

Release Risks

This is a list of all risks (opened and closed) related to smooth release of R2015a.

OwnerStatusDescriptionResolution
RMClosed
(2/21/20)
Graphics work behind schedule

OpenFramesInterface v1.0 ready for release with GMAT R2020a.
OFI is documented and has been integrated with GMAT's build and test systems.
Sensor Masks are also documented and all GUI tests are complete.






Tasks

All dates are referenced to 12:00 noon EDT.

For example, a deadline of March 15 should be interpreted as March 15, 12:00 noon EDT.


Milestones for R2020a

Remaining Tickets for Release 2020a

Early Tasks (MES)

These are long-lead early tasks that can be completed before the detailed release cycle.

Use "(/)" for the checkmark ((tick)) and "(x)" for the cross ((error))

TaskWhoStatusInstructions
Update sample scripts
Area Leads

OFI [RM] (tick) (23 sample scripts included)

Optimal Control (tick) (9 sample scripts included)

Needed by App Freeze.

  • Write examples that demonstrate new functionality
  • Clean up all errors and warnings
  • Remove deprecated fields

Notes/Questions:  

  1. The OFI scripts are stored in the OFI repo, not in the GMAT repo. That's because OFI is an externally maintained and managed project.When GMAT is built, e.g. the windows build machine, it copies the OFI sample scripts into latestcompleteversion. That's how those scripts will be part of the release without being in the GMAT repo.
  2. The sample script file names be pre-pended with R2020a.
  3. Make sure all the API Folder (and associated sub-folder) sample scripts are updated and run correctly.
Write draft Release NotesAll(tick)

Needed by App Freeze.

See Writing Release Notes

Update version number in User Guide cover
SPHSPH:(tick)

Needed by App Freeze.

Contact Katy Gammage or Mary Hrybyk-Keith to update cover page.

Next time: integrate sejda-console to do this automatically.

Get updated splash screen
SPHSPH: (tick)

Needed by App Freeze.

Contact Katy Gammage or Mary Hrybyk-Keith to update cover page.

 Get updated legal statement/licenseDSC(tick)

Needed by Code Freeze.

Just need to change the year usually.  

 Put in order for additional iconsSPH(tick) None needed.

(if necessary)

Needed by Visual Freeze.

Update info on public-facing websitesSPH?(error)

Needed by Release Day.

See the list of sites. Update this list as well, if necessary.

Updated major sites before announcement. Minor ones can be updated a bit later.

Update release announcement contactsSPH(error)

Needed by Release Day. Located here.

 Obtain Release ApprovalsDSCDSC: In progressNeeded by release day.

For Feature Complete (MES)

Feature complete means that all planned features are implemented in the system and ready for final QA.

For Test Freeze (Kazmi)

QA complete means that all known bugs are being tracked, all bug fixes are verified and documented, and the release process can begin.

Use "(/)" for the checkmark ((tick)) and "(x)" for the cross ((error))

TaskWhoStatusNotes
Write, run, and commit all final test cases.All

SPH: (tick)

Nav/SES: (tick)

MS:(tick)

SK: (tick)

RM: (tick)

NH: (tick)

After test complete, the test repo is frozen.  All tests must be written by this deadline.


SK:  add about 100 tests for H/W FOV (SK).  Completed 3/18/2020.

MS:  Add attitude tests.  Goal is Monday 3/23.  All tests completed and passed 3/26. MS: oops, haven't committed yet.

NH: JJR has tracked down different results between different OSes and submitted new truth files.

OFI functional and system tests integrated into Windows GUI test system 

Verify that all known bugs are checked into JIRA(All)

SPH: (tick)

DJC: (tick)

Is anything missing from triaged list in JIRA dashboard R2019a Remaining Tickets?
Complete all JIRA verifications(All)SPH: (tick)Perform independent verification that bug fixes address issue and if necessary create test. 
Test Freeze wrap-up tasksDJC, SPH, SES

Optimal Control: (tick)  this was built in to testing process over the summer.

SPH: (tick)

Nav/SES:  (tick)

MS:(tick)

SK:  (tick)

NH/JJR:  (tick)

RM: (tick)

DJC: (tick)

See here: http://li394-117.members.linode.com:8090/display/GW/Engineering+Activities

(SPH plans to have a wiki-walk-through to discuss wrap-up tasks).  

SES; Submitted ticket GMT-7172 on Save mode issues.

MS/SK:  Review link above. -

NH/JJR: (tick) Review link above. 



RM: Performed manual GUI Delete & Rename tests on OFI

Address all JIRA tickets awaiting feedback(All)

SPH: (tick)

NH: (tick)

DJC: (tick)

If someone is asking for clarification, provide requested information.
Mark .tc files with requirements and verify traceability to new requirements(All)

Nav/SES: (tick)

NH/JJR:  (tick)

MS:  (tick)

SK: (tick)

SPH:  (tick)

RM: (tick)

NH/JJR:  update google docs req spec (tick), update TC file (tick), verify RTTM is good (tick)

MS/SK:  update req with H/W FOV and attitude.   SK completed 3/18/20.  Will do on 3/27 – and done



SPH:  agreed to update TC files for FRR-37.  

RM: OFI GMAT interface reqs captured, and marked as "GUI Test". Per SPH, additional script tests are not needed for the OFI since GUI tests cover all of its interface functionality.

Perform Static AnalysisJJRJJR: (tick)Run VS analysis tool to identify possible issues.  (Note that the requirement here is just to "run" the tool.  Analysis can come later.)
Run Dynamic Analysis tool or other tool that checks for memory leaksDJCDJC: (tick)Note that the requirement here is just to "run" the tool.  Analysis can come later.  

For Visual Freeze (Napier)

Visual Freeze finalizes all graphical changes to the software, so that screenshots, documentation, and TestComplete can be updated.

Use "(/)" for the checkmark ((tick)) and "(x)" for the cross ((error))

TaskWhoStatusNotes
Update About panelWCS

(tick)




RM: (tick)

  1. Update release number (i.e. R2020a).  
  2. Add any new libraries used. (DSC sent list of libraries used).  
  3. Update an links.

The code is located in \src\gui\app

Note that the version number is set in GmatGlobal.cpp. 

RM: Updated OpenFramesInterface's About panel with release number and links to OFI Wiki

Update splash screenSPH(tick)
  1. Add new contributors
  2. Remove contributors who did not contribute to this release
  3. Design updates
  4. Update SplashScreen.psd in root directory of the gmat public repo  \moredata\graphics\splash
  5. Use GIMP to save a flattened TIF file and overwrite splash screen in GmatDevelopment\application\data\graphics\splash.
  6. Make sure there is a BETA splash as well. 

Move to App Freeze. 

Update iconsSPH(tick)

Still need some icons to include DynamicDataDisplay.  4/9/2020:  Decided to leave icons alone.  (Use Default)

Update gmat_startup_file.txtWCS(tick)
  • Update formatting, comments
  • Add any additional plugins
  • Switch to release configuration for public startup.  See here for instructions.

Make sure to update both internal and public versions and any platform specific versions.

Complete visual updates(All)(tick)Move to App Freeze?

For Code Freeze (Shoan) 

Code Freeze is a freeze on the software itself before final testing.

Use "(/)" for the checkmark ((tick)) and "(x)" for the cross ((error))

TaskWhoStatus

Internal

Status

Notes
Update data files

DSC

SPH

(tick)

DSC:  Updated files for R2020a (GMT-7073) for the 3/17/20 build.  The GMAT python utility was used.  Note that one bug in the python utility had to be fixed, GMT-7175.  


Ran RunDateFileTests.m w/o running preparegmat.  Just one error, which from reading the help comments might be OK.  Request SPH concurrence?  Does anything else need to be done?

      SchattenPredict_DistributedSchattenFile [pos err 19.4597, tol 0.01]



Update eopc04_08.62-now and run smoke tests and SPICE .bpc file (SHOULD be moved to App Freeze)


Update Info.plist and RunGMAT as needed

WCS(tick)(tick)Need copyright and release number/name at least   - Info_GMAT.plist and RunGMAT updated 2020.03.18
Update test system RunGmat.m if neededMES(tick)(tick)

Update for MATLAB version (to default or agreed-upon version) as needed; are other updates needed as well?

MS: MATLAB is set; SNOPT path information is in file, need to run full test with proper version of gfortran.

*** Who is doing this for Linux and PC? They have been done if the tests are running properly. *** 

(DJC)  Linux and Windows do not use a RunGmat file.  That file is Mac specific. 

(WCS) This is the RunGmat.m file in +gmatRunner in the test system, not the script in the Mac bundle.  I suspect linux updates this too - I see it currently pointing to MATLAB 2019 (as it should).


Address issues in Static Analysis resultsWCS(tick)(tick)Fixed 4 issues (in 3 files)
Update license textSPH(tick)


RM: (tick)

Update application/License.txt file.  May be nothing to do since license did not change.

RM: Updated OFI readme containing license info

Update copyright and code headers w/ legal statement

DJC for SPH

(tick)

(tick)











RM: (tick)

Note: this must be done after CCB has accepted all final changes and we are ready to create RC1.  It requires coordination with the entire team as almost all source code files will be changed. 

This tool makes adding paragraphs and changing headers simple.  http://sourceforge.net/projects/findandreplace/

As of R2020a these directories have files that need updating.

  • public\src (hpp, cpp)
  • public\plugin (hpp, cpp)
  • public/plugin/CInterfacePlugin/matlab
  • public\application\matlab\
  • internal\code (hpp,cpp)
  • Readme file

(star)  Updates for 2011 onwards were needed.  Files that assert copyright outside of the GMAT project were not updated.  Files with no copyright header at all were also not caught (there are at lest some - in the CsaltCWrapper code.  THere is likely more as well.


For R2020a, replace to

// Copyright (c) 2002 - 2018

RM: Updated for OFI


Final bug fixes(All) (tick)
RM: (tick)
RM: Fixed all outstanding OFI issues
Mark all open bugs as Affects: current releaseSPH(tick)(tick)in JIRA, mark all open tickets as affects the current release
Set release name in codeWCS(tick)(tick)Change GmatGlobals to use formal release name
Update version number in CmakelistsDJC(tick)(tick)Do this right before code freeze.  

For App Freeze (Cooley) 

App Freeze is a freeze on all application bundle files beyond data and code. This includes documentation, sample scripts, stuff in the extras folder, etc.

Use "(/)" for the checkmark ((tick)) and "(x)" for the cross ((error))

TaskWhoStatusNotes
Update README.txtWCS,SPH,DJC, NH

Optimal control: NH (tick)

WCS (tick)

DJC: (tick)

Update any install and run instructions. 

NH: get Linux inputs from DJC (tick), Mac inputs from WCS (tick), make Windows inputs personally (tick). README will mostly link to user guide. Readme updated (tick).

WCS: README.txt updated for Mac; points to User Guide for most information

Update extras folderSPH(tick)Update Notepad++ syntax coloring file located in gmat\data\extras folder to include new resource names, command names and keyword names.  This file is used by Notepad++ to highlight GMAT script files according to the GMAT script language.
Update PDF files in docs folderNH

(tick)






  • Update watermark: "Draft for Release R2020a"
    • doc/SystemDocs/ArchitecturalSpecification/GMAT-Architectural-Specification.tex: \selectfont{Draft for Release R2020a}}}}
      • Rebuild PDF (LateX + DVI->PDF)
    • doc/SystemDocs/EstimationSpecification/GMATEstimationSpecification.tex: \selectfont{Draft for Release R2020a}}}}
      • Rebuild PDF (LateX + DVI->PDF)
    • doc/SystemDocs/MathematicalSpecification/GMATMathSpec.tex: \selectfont{Draft for Release R2020a}}}}
      • Rebuild PDF (LateX + DVI→ PS, PS->PDF)
  • Put into application/docs folder, and individual doc source folder
    • Copied the 3 newly generated PDFs into application/docs
Update gmat_startup_file.txt

WCS





DSC

(tick)





(tick)

  • Switch to release configuration for internal startup (comment out alpha plugins in the internal startup files.  This is just 2 files)

Make sure to update platform specific versions. Question: Should this happen after testing of internal build is complete (i.e. right before packaging)?  The issue is that these need to be ON for thorough testing, but not ON in the delivered application


DSC Note 4/13/2020:  After all changes to the code have been made (still have CCB on 4/14 to review DJC ticket), I am going to do one more complete run with all the alpha plug-ins turns turned on.  Is this recommended for Mac/Linux also?). 

Update nightly script runs to exclude alpha plug-ins.   (Windows/Linux/Mac)

DSC

DJC

MS

SPH

(tick)

(tick)

(tick)

(tick)

Verify that the test system has been updated  to identify new internal and alpha features for this release.  (e.g., make sure GetAlphaScriptContent.m as been updated.  Note:  This should be updated by TestComplete).

Update local test configurations to test only production features (don't test alpha plugins).  (e.g., for Windows, in file autorundef_T6.m, set "runDefMan.SetRunAlphaTests(false) ")

Instructions for performing those two steps are located here

Note:  This is done immediately before release testing.  


DSC Note 4/13/2020:  I updated GetAlphaScriptContent.m for known Nav alpha Resources and Commands.  Are there any other alpha Resources and Commands for R2020a?

Gather list of compatibility changes since last release

(part of Release Notes)

MES

SES

(tick)

(tick)

  • Summary of Deprecated fields
    • BatchEstimatorInv renamed BatchEstimator; BatchEstimatorInv still works (was this release or last?)
  • Removed & disabled fields
  • Anything a user would need to know to make R2020a scripts compatible with this release.
    • BLS MATLAB file format has changed
Update Release Notes

DSC

SPH

Optimal Control: NH sent to DSC


NH:



DJC:  API Doc 

RM: OFI

 (tick)

(tick)

 (tick)



(tick)



(tick) 

(tick)

https://docs.google.com/document/d/1Uy2ZlKLUBPNBdySQPLI-rmibcmRRqX1T8BbPqSsZ8Hg/edit#


To Create JIRA Release notes link that is used in Release Notes, see instructions here: https://confluence.atlassian.com/adminjiraserver/creating-release-notes-938847219.html



Make sure SPHINX documentation for API and OC are included in docs folder 


DJC:  Should we also make the HTML for the API and OC subsystems part of the release?  (It's simple, and done via "make html" in the top level Tools folder.)   4/14/20:  SPH said to include if can do so.   


Update screenshots in User Guide
Engineers(tick)

Test User Guide instructions & code

(Won't be done for R2020a.  Most important to do this when we start deprecating features.)

All.  


Optimal Control: NH

(error)


 (tick)

  • Tutorials
  • script snippets
  • reference page examples
  • Update UG to take into account compatibility changes.  
Update links in GMAT.iniSPH(tick)
  • Help links
  • Welcome page links

This will cause some tests to fail because we update the location of the new user guide URL, before that URL is active (activated after staging).

Update link tests in TestComplete


TR(tick)
  • Help buttons
  • Welcome Page links
  • Help menu links

Update truth data in TestComplete

TR(tick)
  • Truth output
  • Command Summary
  • Region checks

Update Build package scripts used to create bundles.

Practice creating bundles

DSC(tick)

Follow instructions in the section called "Creating an RC" at the bottom of this page.  Those instructions are used to create zip and installer packages.  They often require minor updates prior to release.  This step ensures the scripts are updated and we have practiced using them so when it comes time to create RC1 we have made any changes in the scripts for this release. 


Note SPH added this late in R2020a cycle as a lesson learned to do for future releases.

Testing of Release Candidates (TBS  )

This will start with the 2014-05-05 daily build. Repeat this phase until tests check out. Steve will make the call.

Use "(/)" for the checkmark ((tick)) and "(x)" for the cross ((error))

TaskWhoStatusNotes
Update Release Notes
DSC(tick)

Next time: this should probably be "Update Release Notes" to add outstanding bugs, etc. – title changed 12/18/17 - MES

https://docs.google.com/document/d/1Uy2ZlKLUBPNBdySQPLI-rmibcmRRqX1T8BbPqSsZ8Hg/edit#

Create Windows BuildTDN(tick)
provide Help folder to Mac/Linux developersDSC(tick)

This needs to be provided once the documentation is complete and built with the release candidate.  Note this cannot be done until all docs are frozen!   (SPH takes Windows RC, edits Help doc in Acrobat.  Sends to Mac/Linux)


(tick) SPH: Make sure SPHINX for API and OC are included.   DJC added the files to application/docs. 

Note: For future releases, we should consider adding a build step to generate these automatically as part of the install process in CMake, rather than putting the generated files into the repo directly.

Build Windows installer

DSC(tick)


Bundle Windows zip

DSC(tick)


Run TestComplete smoke testsTR(tick)

These are tests on the packaged versions of GMAT: the installer and the zip bundle.  ( Test internal first. )

(Current smoke tests take a long time, about 4 hours.  Maybe later, cut this time down)

Run TestComplete system test missionsTR(tick)These are tests on the packaged versions of GMAT: the installer and the zip bundle from Internal and External packages. 
Run script test system

DSC





MS/WS

DJC


(tick)





(tick)

(tick)

Windows.  First run tests on the installer version of GMAT.  Run tests on the .zip bundle tests afterwards on same build to compare.

(On Final RC, this is 4 runs, Windows and Installer for both  internal and external).  Test internal first.  

For R2020a Windows results, see \\mesa-file\595\GMAT\Builds\windows\VS2017_build_64\R2020a\RC2\Test Results folder.   



Mac – RC1 run completed with 3 errors (alpha off), RC2 run is looping through comparators at 1:46 pm 4/30

Linux – RC2 internal is solid on both Linux flavors.

Run API regression test scripts

JM 

DJC

MS/WS

(tick)

(tick)(star)

(error)

Windows

Linux   (star) Note ticket GMT-7245.  Some tests do not run correctly in the test system on Linux; those tests were checked by hand.

Mac


Definition:  This is the set of 48 regression test scripts that take about 5 minutes to run.

Input/Other/API and Input/UnderDevelopment/MatAPITesting

See JM email dated Wed 4/29/2020 12:11 PM for attached file RunAPITests.m.   

Test all sample scripts (non-API)

MES/WS

JM/DSC

DJC

(tick)

(tick)

(tick)

At a minimum these need to be run individually by hand or run in GUI regression system.  Additionally, they must be run on a system that has no other installations of GMAT.  Past experience has shown that missing files, and configuration issues are not caught by running on machines used for development.



Test API Sample Scripts

JM

DJC

(tick)

(tick)

Windows

Linux

Notes: 

(1)  Make sure all API Sample tests (API folder and API/Jupyter sub-folder) run correctly.  

(2)  For 2020a Mac, will not run API sample scripts.  


Definition:  Run scripts in Folder API and API/Jupyter.  

Run TestComplete full regression testsTR(error)

(For final RC only)

On Final RC, this is 4 runs, Windows and Installer for both  internal and external. 

Notes

  • While this cycle is ongoing is a good time to do wiki updates and cleanup.

Stage Release (TBS)

This is a soft release, putting all the files in place and updating information. Then on release day, we only need to send the announcements.  

Use "(/)" for the checkmark ((tick)) and "(x)" for the cross ((error))


TaskWhoStatusNotes
Tag All ReposDJC(tick)At least tag the test system; consider branching also if the burden on the repo is low.  (In SVN, tagging makes a branch, so tagging already creates a branch.)
Bundle source code
DJC(tick)
  1. Export the trunk code from svn that is used for the release build when that build is started
  2. Wait for a go/nogo call from testing on the build
  3. Archive the following folder trees into a zip file: src, plugins, build
Bundle data
DJC(tick)
  1. Use the same export as used for the source bundle
  2. Wait for a go/nogo call from testing on the build
  3. Archive the following folder tree into a zip file: application/data
Upload source bundle to SourceForgeSN(error)
  1. Move the zip file to SF
  2. Mark as "staged"
  3. Download the upload and check it
Upload data bundle to SourceForgeSN(error)
  1. Move the zip file to SF
  2. Mark as "staged"
  3. Download the upload and check it
Upload Windows installer to SourceForgeSN(error)Download, install, and run after uploading.
Upload zip files to SourceForgeSN(error)Download and run after uploading.
Upload executable for WindowsSN(error)
Upload executable for Mac OSXSN(error)
Upload executable for LinuxSN(error)
Post README.rst.txt on SourceForgeSN(error)Update for new release
Upload docs to documentation siteSPH(error)
  1. Upload using SSH to http://gmat.sourceforge.net/docs/
  2. Update HTML with new section
  3. Move "latest" pointer to new folder

SEE NOTES IN SECTION BELOW

Fixed "latest download" to point to new exe.SPH(error)See instructions here: http://stackoverflow.com/questions/6777327/how-to-manually-set-the-default-download-file-in-a-sourceforge-project
Post internal & public release files to MESA networkSN(error)
Upload source to SourceForge Git repoSPH(error)

Upload public repo to sourceforge

Change new branch to be active branch (what is checked out by default)

Update the doxygen dataSPH(error)
Make SourceForge repository backupDJC(error)

Follow SourceForge's instructions.

Here is the Rsync command for us:

 rsync -av git.code.sf.net::p/gmat/git.git .

* DJC can only do steps 1-3 here because of contractual constraints

Release Day (TBS)

Use "(/)" for the checkmark ((tick)) and "(x)" for the cross ((error))

TaskWhoStatusNotes

Make files visible on SourceForge

SPH(error)07/21: Made visible at time of posting, as "soft" release.
Send out release announcementSPH(error)
  • Mention GSFC in the announcement
  • Don't include large attachments.
Post release announcement on SourceForgeSN(error)
Post release announcement on GMAT BlogSPH(error)Blog won't load as of 7/21/2017... just get spinning wheel.  Waited for 5-10 minutes several times. -SPH
Mark as released in JIRASPH(error)

 DJC cannot post to SF

Post-Release

Use "(/)" for the checkmark ((tick)).

TaskWhoStatusNotes
Party!(All)(error)
Conduct postmortem review
(error)This includes gathering feedback, holding the postmortem meeting, and documenting the results.
Submit GSFC Metrics Summary
(error)The link to submit the metrics is invalid.No action is required for this item. It was decided on 09/25/14's GMAT meeting to check tasks that do not require any action or are inactive.
Submit NTR for next release
(error) Per Hughes: The NTR cannot be written until all features are finalized and it is too early to do that.

Notes for postmortem

Please add your notes to the R2017a Lessons Learned document.

Compatibility changes

See Writing Release Notes

Creating an RC

  1. Create the build
    1. Log into gs580w-gmat-t4 as "gsfc580gmatbuild". The credentials are on the network drive, in the Infrastructure folder.
    2. Start Task Scheduler.
    3. [RC1 only] Disable the "GMAT Daily Build" task, so it doesn't run automatically during the RC cycle (this can make things overly confusing).
    4. Manually run the "GMAT Daily Build" task.
  2. Create the bundles
    1. On your local system, navigate to GmatDevelopment\build\install\windows-nsis. Note that you do not need to pull files down from the Git repository; this process will pull files from the remote build and create the packages in your local directory. There's a README.txt file there that explains things.
    2. Open a MinGW, MSYS2, or Cygwin shell in this directory.
    3. Run 'make assemble VERSION="R2015a-rc#"', where "#" is the number of the RC you're creating. This will create two directories in the current directory: gmat-internal and gmat-public.
    4. Run the following commands to add the User Guide cover. This requires sejda-console.

      sejda-console merge -f ../../../doc/help/src/files/images/Cover-UserGuide-A4-Trimmed.pdf gmat-internal/GMAT/docs/help/help-a4.pdf -o gmat-internal/GMAT/docs/help/help-a4-new.pdf -s all:all:
      mv gmat-internal/GMAT/docs/help/help-a4-new.pdf gmat-internal/GMAT/docs/help/help-a4.pdf
      
      sejda-console merge -f ../../../doc/help/src/files/images/Cover-UserGuide-Letter-Trimmed.pdf gmat-internal/GMAT/docs/help/help-letter.pdf -o gmat-internal/GMAT/docs/help/help-letter-new.pdf -s all:all:
      mv gmat-internal/GMAT/docs/help/help-letter-new.pdf gmat-internal/GMAT/docs/help/help-letter.pdf
      
      sejda-console merge -f ../../../doc/help/src/files/images/Cover-UserGuide-A4-Trimmed.pdf gmat-public/GMAT/docs/help/help-a4.pdf -o gmat-public/GMAT/docs/help/help-a4-new.pdf -s all:all:
      mv gmat-public/GMAT/docs/help/help-a4-new.pdf gmat-public/GMAT/docs/help/help-a4.pdf
      
      sejda-console merge -f ../../../doc/help/src/files/images/Cover-UserGuide-Letter-Trimmed.pdf gmat-public/GMAT/docs/help/help-letter.pdf -o gmat-public/GMAT/docs/help/help-letter-new.pdf -s all:all:
      mv gmat-public/GMAT/docs/help/help-letter-new.pdf gmat-public/GMAT/docs/help/help-letter.pdf
       
    5. Run 'make VERSION="R2015a-rc#"', where "#" is the number of the RC you're creating. This will create four packages in the current directory: A .zip and a .exe file for both the internal and public versions. Note: To create only an internal version, run 'make internal VERSION="R2015a-rc#"'.
    6. Copy the four package files to the network: \\mesa-file\595\GMAT\Builds\windows\VS2013_build_32\R2015a
    7. To clean everything up afterwards, run "make clean".
  3. Run the script test system on the internal installer package. See Running the script test system, below.

Note: To make the final release bundles, you can't just rename the files to take off the "-rc#" portion. You need to recreate the bundles using this command: make VERSION="R2015a" 

Running the script test system

In the steps below, "#" is the RC number and "<config>" is "internal" or "public".

  1. Log into gs580w-gmat-t4 as "gsfc580gmattest". The credentials are on the network drive, in the Infrastructure folder.
  2. [RC1 only] Start Task Scheduler and disable the "Run Script Test" task. You'll need to run the RC tests manually.
  3. Uninstall all previous versions of GMAT.
  4. Install the version being tested.
    1. Check "Enable MATLAB interface".
    2. Leave "Associate file types" unchecked.
  5. Update the test system repo (located at C:\Users\gsfc580gmattest\Documents\GmatTest)
  6. In MATLAB (64-bit):
    1. Run:
      >> cd C:\Users\gsfc580gmattest\Documents\GmatTest\bin
    2. Run (replace # with RC number and <config> with "internal" or "public"):
      >> diary('..\log\R2015a-rc#-<config>.log')
    3. Run (this command copies application files such as SPICE kernels needed for regression tests into the new installation of GMAT):
      >> preparegmat('C:\Path\To\GMAT')
    4. In C:\Users\testuser\Documents\GmatTest\bin, copy the appropriate template (autorundef.R2015aInternal.template.m or autorundef.R2015aPublic.template.m) to a new name (such as autorundef.R2015aRc1Internal.m) and fill in the values:
      1. RunDef.Build: "R2015a-rc#-<config>"
      2. RunDef.GmatExe: path to installed GMAT.exe
      3. RunDef.RegressionBuild: last build date if testing RC1 (look in GmatTest\output for latest folder, such as 2013-07-31), otherwise, "R2015a-rc#-<config>"
    5. Run:
      >> gmattest <name of rundef.m> (e.g. autorundef.R2015aRc1Internal.m) 
    6. Wait until run completes (usually 8+ hours)
    7. Run:
      >> diary('off')
  7. In a Windows cmd window, post results to network using robocopy:
    >robocopy "C:\Users\gsfc580gmattest\Documents\GmatTest\output\R2015a-rc#-<config>" "\\mesa-file\595\GMAT\TestResults\win7\R2015a-rc#-<config>" /E /MT /LOG:%TEMP%\robocopy.txt

Updating SourceForge HTML docs page

The Sourceforge page for logging in is here:  https://sourceforge.net/p/forge/documentation/SFTP/

I (SPH) used Filezilla and this was pretty straightforward once succesfully logging in:

Hostname is frs.sourceforge.net

UserName: "YOURSOURCEFORGEUSERNAME,gmat"

Password is: YOURSOURCEFORGEPASSWORD

File Updating

  1. Add a new folder for the release under the gmat\htdocs\docs folder
  2. Update contents of the new release folder with files from new release
  3. Update the gmat\htdocs\docs\index.html to include new folder and to point to the new latest folder.


  • No labels