Hi Sean - it certainly sounds like its worth a poke. Have you written anything 
else up about it - or is this the “user manual” for now? Presumable a lot of 
the below could go in the readme.md for the project itself.

So to get started with it - is the intent that you fork it so you can customise 
the settings? OR do you make it a submodule of your existing project so that 
you can access the scripts? As you want to trigger something when you checkin 
your smalltalk code - is it a trigger in that project that kicks off a separate 
SmalltalkCIGL project to then do its stuff, or do you just just include it in 
your current project so you can reference these scripts?

This is the bit I’m not understanding?

Reading below - am I understanding that when you get your pipeline trigger, you 
use GitLabCIConfiguration to write out some config that you can then get 
SmalltalkCI to interpret with the assets that you have?

I’l have to go back and look again.

Tim

> On 15 May 2018, at 14:25, Sean P. DeNigris <s...@clipperadams.com> wrote:
> 
> Tim Mackinnon wrote
>> But I don’t understand how it works on Gitlab
> 
> The gitlab-smalltalk-ci project performs three roles:
> 1. The glue which connects Gitlab and smalltalkCI. As a bonus, it does all
> the necessary in-container work to setup SSH for private Gitlab projects, so
> you'd just have to create/enable the deploy key in the Gitlab web UI.
> 2. A Pharo library to create/modify CI artifacts like configuration files.
> This let's you write Smalltalk like this `GitLabCIConfiguration new
> smalltalkImageTemplateFor: 'Pharo-6.1'` instead of being forced to remember
> and write: 
> ```yaml
> .pharo61_template: &pharo61
>  variables:
>    SMALLTALK_IMAGE: "Pharo-6.1"
> ```
> 3. An example to adapt for your own project, since it eats its own dog food
> and is handling its own CI.
> 
> Also, note that the initial setup is simplified from smalltalkCI because it
> uses a Docker image preloaded with all the Pharo dependencies.
> 
> 1. First, you would create a `.gitlab-ci.yml`. I'm guessing you already know
> that it is the equivalent to Travis' `.travis.yml`, which is the main hook
> that the CI system picks up to run whatever you tell it to. If you read it,
> you will see that it's main job is to install the glue scripts and run the
> downloaded scripts/build.sh. The bottom ~half is the workaround for matrix
> builds (for Pharo 6 & 7) in GitlabCI, which are not directly supported.
> 2. Next, create a `.smalltalk.ston`. This is the main config hook for
> smalltalkCI. I added some links to the docs in the README.
> 
> That's really it I think. All this has been tested extensively with real
> projects, but only on Pharo 6/7 and Ubuntu 32 bit. PRs welcome and feel free
> to ask more questions!
> 
> 
> 
> -----
> Cheers,
> Sean
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
> 


Reply via email to