How about storing the fact that the initialization is done in the data?

I have seen this with liquibase.
Liquibase is a tool that manages database updates. It stores the version of
the installed data in a table.
So when you install a new version it can do the necessary updates and then
stores the new version.

Best
Christian

Am Fr., 8. Juni 2018 um 03:42 Uhr schrieb Max Spring <[email protected]
>:

> Not sure I understand your notion of "service changed" :-)
> I use the term "service" in a colloquial sense. I don't mean "OSGi
> service".
>
> Let me try it that way:
>
> My release build produces a self-contained tarball of the entire code of
> my service.
> My "devops" automation (in Jenkins) deploys the tarball on a test VM
> together with the production data.
>
> After this deployment, the very first time the Karaf container starts up,
> I want to run some initialization logic.
> But only this very first time. Any subsequent Karaf container start up
> should not do this initialization any more.
>
> -Max
>
>
> On 06/07/2018 05:48 PM, Leschke, Scott wrote:
> > You mean the logic should only execute if the service is "changed", but
> not in the case where the service is stopped and restarted?
> >
> > -----Original Message-----
> > From: Max Spring [mailto:[email protected]]
> > Sent: Thursday, June 07, 2018 7:40 PM
> > To: [email protected]
> > Subject: execute only at first startup?
> >
> > I've got a Karaf-based service.
> > Whenever I deploy a new revision of my service, I need to execute some
> code only at the very first startup.
> > I have this first-time functionality available as a Karaf command which
> I currently run manually each time right after startup after a new
> deployment.
> > I'd like to automate this.
> >
> > I'm thinking of using a marker file somewhere to indicate "first
> startup".
> > I'd have a new bundle checking for this file when it starts up. When it
> detect the file, the bundle executes my business logic initialization and
> then deletes the marker file.
> >
> > Or, is there something better for this scenario?
> >
> > -Max
> >
>


-- 
-- 
Christian Schneider
http://www.liquid-reality.de

Computer Scientist
http://www.adobe.com

Reply via email to