Comments (10)
We have created an issue in Pivotal Tracker to manage this:
https://www.pivotaltracker.com/story/show/154913644
The labels on this github issue will be updated when the story is started.
from bpm-release.
This would be unexpected and surprises me. BPM still relies on Monit to be started so it should be started at the same point in the lifecycle as any other job.
The problem might be that you're using BPM's pre-start. BPM's pre-start is different from the job's pre-start (in an unfortunate naming collision). If you want to run something before any job on the system has started then you should keep using the BOSH job pre-start script.
from bpm-release.
I'm still using the job's pre-start, not bpm-pre-start. The addon isn't bpm-ified – would that make a difference?
from bpm-release.
Nope. Does BOSH guarantee that a monit start command will only run after all of the job pre-starts on a machine have run?
from bpm-release.
Seems like it: https://bosh.io/docs/job-lifecycle.html
from bpm-release.
Yes, that's part of the contract. Alright, let me try to come up with an example deployment, maybe I'm just seeing effects related to the type of processes in my releases. Thanks for the response!
from bpm-release.
After bpm-ifying the release, it seems that this doesn't work reliably anymore. Some jobs of the release seem to be started before the addon's pre-start is finished. I didn't thoroughly test this, though.
dont think this is something that bpm could have caused, since agent determines when to consider pre-start finished. are you sure your pre-start script waits for service to start properly, before exiting 0?
from bpm-release.
Hey @voelzmo,
Were you able to recreate this behavior in an example deployment?
Best,
from bpm-release.
from bpm-release.
Closing this, as I couldn't reproduce with a simple example. Here's the outputs from my example with a demo lifecycle release that sleeps for 2 minutes in bosh's pre-start
:
# cat ../demo/pre-start.stdout.log
[2018-02-23 21:36:05+0000] pre-start running for ping-app/b4b255fd-8b91-4249-8d23-e9552dcc37b0
ping-app/b4b255fd-8b91-4249-8d23-e9552dcc37b0:/var/vcap/sys/log/ping-app# head -1 bpm.log
{"timestamp":"1519421886.588736534","source":"bpm","message":"bpm.start.acquiring-lifecycle-lock.starting","log_level":1,"data":{"job":"ping-app","process":"ping-app","session":"1.1"}}
ping-app/b4b255fd-8b91-4249-8d23-e9552dcc37b0:/var/vcap/sys/log/ping-app# date -d @1519421886.588736534
Fri Feb 23 21:38:06 UTC 2018
So: bpm start kicks in right after bosh's pre-start being done, just like it should. Thanks for clarifying, everyone.
from bpm-release.
Related Issues (20)
- Update bosh.io with new documentation HOT 12
- cgroup-path HOT 5
- persistent_disk allow_executions ? HOT 3
- creation of pre-defined files? HOT 3
- Delete bpm/mounts package HOT 4
- `bpm run` does not delete pidfile after completion HOT 2
- Provide a default init binary HOT 2
- Allow collocated jobs to read indicators without also reading all of job credentials HOT 3
- Rolling Cells "sometimes" causes problems with rep and route_emitter starting HOT 20
- Support shared mount-only volumes HOT 11
- Rootless garden does not work with BPM 1.1.1 HOT 8
- Failed to start container caused by empty runc’s bundle directory HOT 5
- Different digest for bpm-release?v=1.0.4 HOT 7
- Pointing out minor difference between /bin/pre-start vs. bpm hooks pre_start HOT 2
- Share the host's process namespace with the Bosh BPM container HOT 2
- BPM fails attempting to allow access to /dev/console via runc in latest bosh-lite HOT 7
- Missing go dependencies mean internet access is required to compile BPM v1.1.11 HOT 8
- Consume current golang-version HOT 3
- bpm 1.2.1 fails to start processes HOT 6
- bpm release version 1.2.3 - bpm-runc compilation problem with stemcell 1.148 (currently latest) HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bpm-release.