[Glass] Questions about the new tODE

Dale Henrichs via Glass glass at lists.gemtalksystems.com
Thu Nov 26 11:16:38 PST 2015


Hey Jupiter,

I've got limited time today since its Thanksgiving and I'm tap to make 
some pies ... and of course eat lots of turkey .... and watch football:)

I've in-lined my responses below ...

On 11/26/15 1:18 AM, Jupiter Jones via Glass wrote:
> Hi Dale,
>
> I’m going through the process of installing GS on AWS for testing and 
> tinkering with the install and monitoring scripts. It’s the first time 
> I’ve had a chance to properly experience the new tODE directory layout.
>
> I’ve documented my process below as I think there are some outdated 
> links in the docs, but I thought I’d check with you first. I can help 
> with cleaning up the docs once I’ve completed this setup and have a 
> better understanding.
>
> - should I be following the Seaside instructions in GsDevKit_seaside31 
> or in GsDevKit/Seaside31 (I’m guessing the former)
Yes GsDevKit_seaside31 is intended to line up with the new directory 
structure ... I ran out of time in the run-up to the Smalltalks talk to 
put the finishing touches on GsDevKit_seaside31, but the basics should 
be sound.
>
> - for Magritte3, ServiceVM, Cryptography, etc. should I follow the 
> http://gsdevkit.github.io/GsDevKit_home/
> I’m guessing that these projects will also be migrated to the new 
> format as time allows?
Yes, you will get the basic project entry from 
http://gsdevkit.github.io/GsDevKit_home/. I'm on the fence as to whether 
I should do an GsDevKit_ project for Magritte3, etc. or just 
includeupdate the tode artifacts in the existing projects. I did 
GsDevKit_seaside31 separately so that I could experiment a bit without 
perturbing the Seaside31 project itself and it is still in a bit of flux
>
> - I’m installing seaside into an existing GsDevKit (i.e. not using 
> installSeasideServer). How should I mount the seaside project in tODE? 
> mount "$GS_HOME/etc/GsDevKit_seaside3/tode /home seaside" ? Where is 
> the preferred location to mount it?
The seasideCreateStone bash script[1] has the magic incantation for 
mounting and downloading the project entry with these tODE commands:

   mount $GS_HOME/etc/GsDevKit_seaside31/tode /home seaside
   project entry 
--url=http://gsdevkit.github.io/GsDevKit_home/Seaside31.ston 
/sys/local/server/projects

and the mount command above creates a directory node named seaside in 
the /home directory for tode ... which is the right spot.


[1] 
https://github.com/GsDevKit/GsDevKit_seaside31/blob/master/bin/seasideCreateStone#L63
>
> - I noticed in the GsDevKit_home/bin/seasideCreateStone the line:
> project entry 
> --url=http://gsdevkit.github.io/GsDevKit_home/Seaside31.ston 
> /sys/local/server/projects
> …is that correct? Should the Seaside3.ston be in the 
> GsDevKit_seaside31 repo? There is both a Seaside3.ston and a 
> Seaside31.ston located there. They are identical.
I created two entries with the expectation that when Seaside3.2 is 
released I will create a Seaside32.ston and then change Seaside3.ston to 
point at Seaside3.2 ... that way there is some level of choice/control 
over which version of Seaside you want to use and giving a person just 
coming to Seaside the opportunity to start with the latest version ... 
this will greatly simplify a lot of the documentation ...
>
> That’s it for now - I appreciate any direction.
>
> Cheers,
>
> Jupiter
>
>
> My experience so far…
>
> Client and Server installation was flawless :)
>
> Then came installing Seaside based on these instructions:
> https://github.com/GsDevKit/GsDevKit_seaside31/blob/master/docs/installation/loadSeasideProject.md
>
> |project install 
> --url=http://gsdevkit.github.io/GsDevKit_home/Seaside3.ston|
> went well, however it didn’t leave me with anything in $GS_HOME/etc so 
> the next command failed:
>
> |export PATH=$GS_HOME/etc/GsDevKit_seaside31/bin:$PATH|
Yeah this is just a failure in keeping the docs up-to-date with the 
scripts as I was making last minute changes --- the github.io downloads 
for the project entries and the installScript: field was invented a week 
before I left for Smalltalks and since coming back I've been busy 
incorporating feedback for GSDevKit_home ... ah well ... If I'm not 
mistaken the missing piece here is that I expected you to clone the 
GsDevKit_home project in $GS_HOME/etc/...
> I followed the install command to: 
> http://gsdevkit.github.io/GsDevKit_home/
>
> And tried "project load Seaside3" which performed the installation in 
> GS. I then made some additions the the project entry to load FastCGI 
> and a couple of other things and loaded again. All good.
>
> I followed the link on that page to the GsDevKit Project: 
> https://github.com/GsDevKit/Seaside31
> …however I figured that was out of date, and I should actually be 
> looking at https://github.com/GsDevKit/GsDevKit_seaside31
>
> I followed the links to installation on GsDevKit_seaside31: 
> https://github.com/GsDevKit/GsDevKit_seaside31/blob/master/docs/installation/installSeasideServer.md
> …and found another installation method that clones the project into 
> $GS_HOME/etc (that solved that)
>
> I’m guessing that the “project install” command above is no longer the 
> way to install.
`project install 
--url=http://gsdevkit.github.io/GsDevKit_home/Seaside3.ston` is the way 
that you are supposed to install Seaside3 ... what is confusing here is 
that we have GsDevKit_Seaside31 that has all of the scripts, but none of 
the actual Seaside code, so you have to clone GsDevKit_Seaside31 into 
$GS_HOME/etc, then run seasideCreateStone which does the `mount` and 
`project install`.

There are three commands that will download the project from the 
github.io site:

   project entry --url=http://gsdevkit.github.io/GsDevKit_home/Seaside3.ston
   project install 
--url=http://gsdevkit.github.io/GsDevKit_home/Seaside3.ston
   project load --url=http://gsdevkit.github.io/GsDevKit_home/Seaside3.ston

`project entry` simply downloads the project entry to 
/sys/local/projects. From there you can customize the project entry for 
both load and install options. If you download with this command then 
you would install and load by doing the following:

   project install Seaside3
   project load Seaside3

The `project load` command does a `project install` by default.

`project install` downloads the project entry to /sys/local/projects and 
runs the install script. From here you can customize the project entry 
for loading. The install script is the following:

       project clone --https --local Seaside3
       project install --local 
--url=http://gsdevkit.github.io/GsDevKit_home/ZincHTTPComponents.ston
       project install --local 
--url=http://gsdevkit.github.io/GsDevKit_home/GsApplicationTools.ston

`project clone` command clones the github project to 
$GS_HOME/shared/repos. The two `project install` downloads and runs the 
install scripts for Zinc and GsApplicationTools (primarily cloning the 
GitHub projects).

After `project install` you load using:

   project load Seaside2

`project load` downloads the project entry, runs the install scripts 
from the project entry  and then loads Seaside3.

I will be off-line until later this evening, so hopefully this is enough 
info to get you moving forward...

Dale
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20151126/4f44f054/attachment-0001.html>


More information about the Glass mailing list