GsDevKit_home icon indicating copy to clipboard operation
GsDevKit_home copied to clipboard

replace Pharo 3.0 based `devKitCommandLine` with a set of GemStone 3.5.0 topaz solo superDoit scripts

Open dalehenrich opened this issue 4 years ago • 0 comments

The basic idea is to port the packages in the TodeClient repo to GemStone 3.5.0 and then create a st_launcher-based replacement for devKitCommandLine image.

  • [ ] create scripts for building a TodeClient/st_launcher/Rowan development stone, where TodeClient port will take place (Issue #261)
  • [ ] prioritize list of commands for porting.
  • [ ] port non-GCI-based commands to GemStone 3.5.0
  • [ ] port GCI-based commands to GemStone 3.5.0
  • [ ] write st_launcher smalltalk scripts to replace each of the devKitCommandLine GsDevKit command line

Here's the list of commandsimplemented in the gsDevKitCommandLine image (*ed items are GsDevKit commands):

rogue:_home>cd shared/pharo/
rogue:pharo>./pharo gsDevKitCommandLine.image --list
Currently installed Command Line Handlers:
    Fuel                               Loads fuel files
    config                             Install and inspect Metacello Configurations from the command line
    save                               Rename the image and changes file
    update                             Load updates
    printVersion                       Print image version
    st                                 Loads and executes .st source files
    test                               A command line test runner
    clean                              Run image cleanup
    eval                               Directly evaluates passed in one line scripts
*    products                           Provide information on the downloaded GemStone versions
*    startnetldi                        Start the netldi process for the given stone
*    startstone                         Start the stone process monitor for the given stone
*    stones                             Provide information on the running and installed stones
*    stopnetldi                         Stop the netldi process for the given stone
*    stopstone                          Stop the stone process monitor for the given stone
*    backup                             Run a backup for the given stone.
*    loadTode                           Load tODE in the given stone.
*    restoreFromBackup                  Run restore from backup.
*    serverDoIt                         Execute the Smalltalk expressions on stdin against the given <stone-name>.
*    todeIt                             Execute the tode commands from stdin against the given <stone-name>. Not appropriate for use as REPL.
*    upgradeStonePrep                   Prepare the target stone directory structure for an upgrade.
*    createStone                        Create a stone directory for the given version of GemStone/S 64
*    newExtent                          Copy a new extent to  the stones extent directory
*    patchTodeRoot                      Patch the todeRoot for the given session description
*    setupRuntimeSmalltalkCIStone       Set up runtime stone options from SmalltalkCI configuration
*    restoreFromBackupAltUser           Run restore from backup supplying gemstone user id and password.
*    postUpgradeStone                   Perform post-upgrade tasks recommended in the Release Notes for the target version.
*    preUpgradeStone                    Perform pre-upgrade tasks recommended in the Release Notes for the target version.
*    createForeignStone                 Create a minimal stone directory for the given version of GemStone/S 64. This directory structure is expected to be a proxy for a stone in another location and not managed by GsDevKit_home.
*    createSmalltalkCIStone             Create a stone directory for the given version of GemStone/S 64 and apply SmalltalkCI configuration
*    newExtentForRecovery               Copy a fresh extent file to the given stones extent directory, in preparation for for a restore from backup (i.e., tranlogs are not removed).
*    setupRuntimeSmalltalkCIStoneNew    Set up runtime stone options from SmalltalkCI configuration
*    createSmalltalkCIStoneNew          Create a stone directory for the given version of GemStone/S 64 and apply SmalltalkCI configuration

dalehenrich avatar Oct 11 '19 16:10 dalehenrich