On Wed, Aug 2, 2017 at 12:04 PM, Tim Mackinnon <tim@testit.works> wrote:

> I’d be curious about your script if it is easily handy
>

As said, nothing fancy at all [1].
And it keeps evolving all the time as Pharo evolves too.



> (I did notice a blog article you wrote on StartupLoader a while back).
>
>
Yeah, but that post is not a bit outdated as StartupLoader changed quite a
bit since I wrote the article.  But the idea is still the same.



> By the way - I really appreciated your article "Moving contexts
> and debuggers between images with Fuel” -
>

Thanks. Yes, that fact made us won the first price [2]. I still remember I
was sit on my living room, preparing the demo for ESUG I was thinking how
could I show Fuel in a cool manner. I knew at that point we were able to
serialize closures, methods, classes, etc... but I just thought "what If I
serialize the debugger?". I took me 5 minutes to try it out and realized it
worked from the first run hahaa. That was one of my top 5 best programming
days of my life hahaha.

This feature was then used for the "Fuel out stack" and to revive  CI
failure tests locally.



> it inspired me to figure it out for debugging on AWS lambda (which is very
> cool BTW - and I’ll write it up soon when I have it bedded in)
>
>
Cool. I have been following your emails about having a small image and a
small vm and I am very interesting on that. Well, I should be considering
which was my PhD [3] hahaha


[1]  http://ws.stfx.eu/OCV4GOA5D6DR
[2]
http://www.esug.org/wiki/pier/Conferences/2011/InnovationTechnologyAwards
[3] https://marianopeck.wordpress.com/2012/11/07/dr-mariano-martinez-peck/


Cheers,



> Tim
>
> On 2 Aug 2017, at 15:10, Mariano Martinez Peck <marianop...@gmail.com>
> wrote:
>
>
>
> On Wed, Aug 2, 2017 at 10:50 AM, Tim Mackinnon <tim@testit.works> wrote:
>
>> Mariano - out of curiosity, how do you build your image - do you use zero
>> conf and then apply a known .st script? (I used to use pharo launcher back
>> in the day - but now I find that zeroconf is actually handier anyway).
>>
>>
> My work flow explained below is only for when I am using stable Pharo for
> a paid client. In this case, I am not grabbing Pharo latest code all the
> time. Only every in a while. So, my workflow is as follow:
>
> 1) with zero conf I simply grab image and vm (I try to keep my app working
> with latest stable)
>
> 2) Apply a known load script that we keep maintained (this is somehwere in
> a wiki). This script contains:
>        2.1) settings of Author, Monticello username and pass etc.
>        2.2) Several custom settings/preferences that I like to change to
> the default image (this could be replaced by startup preferences thingy).
>        2.3) Workaround for bugs I hit and that are not backported to
> stable version.
>        2.4) Install 3er party libs I want for my development image
> (Calypso browser, code critics (now integrated), etc etc).
>        2.5) Finally, I load my app code.
>
>
> 3) Once I am done loading all of it, I save that image as
> "PharoMyAppTemplate.image". And I never do real work with that image.
>
> 4) Each time I need a new image (to make a new feature, a bug fix,
> whatever) I take "PharoMyAppTemplate.image" and I do a "save as" with
> either number like "PharoMyApp1.image" or "PharoMyAppBug3232.image" or
> ""PharoMyAppNewFeature.image" etc. I create these images many times and I
> don't have a strong policy on when to create new ones. Whenever I create
> one of these images, I upload my app code to latest code.
>
> 5) Every in a while, I update my template image. Mostly when I change my
> dependencies.
>
> I can share the script if you want.
>
> Cheers,
>
>
>
>
>> Tim
>>
>> On 2 Aug 2017, at 13:24, Mariano Martinez Peck <marianop...@gmail.com>
>> wrote:
>>
>>
>>
>> On Wed, Aug 2, 2017 at 9:16 AM, Tim Mackinnon <tim@testit.works> wrote:
>>
>>> Hi - I’ve noticed that when I download a new image+vm with zeroconf (in
>>> a fresh directory) - that when I launch it, the setting Tools | Software
>>> Config Mgnmnt | Monticello | Local Cache Directory has a value that points
>>> to a directory from one of my earlier images.
>>>
>>> Is this normal (does it store this information somewhere on my computer
>>> so that different setups can access it)?
>>>
>>> At first I thought this was annoying - but I’m now wondering if this is
>>> useful as I’m guessing that there isn’t any reason to have separate caches
>>> for version controlled libraries and so maybe I should actually set it to
>>> some common directory?
>>>
>>> What is the recommended strategy?
>>>
>>>
>> My strategy is to use a shared repository for all my images. As part of
>> my build image scripts I do something like this:
>>
>>
>> " =============== Personal Settings ================ "
>> MCCacheRepository cacheDirectory: '/Users/mariano/Pharo/localRepo/' 
>> asFileReference.MCGitHubRepository cacheDirectory: 
>> '/Users/mariano/Pharo/localRepo/' asFileReference.GTPlayBook cacheDirectory: 
>> '/Users/mariano/Pharo/play-cache/' asFileReference.
>>
>> GTPlayBook stashDirectory: '/Users/mariano/Pharo/play-stash/'
>> asFileReference.
>>
>>
>> I guess you save stuff:
>>
>> find /Users/mariano/Pharo/localRepo/ -type f | wc -l
>>
>>    *32301*
>>
>>  du -sh /Users/mariano/Pharo/localRepo
>> *6.1G*    /Users/mariano/Pharo/localRepo
>>
>>
>> Not only you save disk space, but also:
>> 1) Each image build is likely to take less time as many files will be
>> already in the cache (no need to redownload it).
>> 2) it works as a yet another backup of your code and other packages.
>>
>>
>>
>> --
>> Mariano
>> http://marianopeck.wordpress.com
>>
>>
>>
>
>
> --
> Mariano
> http://marianopeck.wordpress.com
>
>
>


-- 
Mariano
http://marianopeck.wordpress.com

Reply via email to