-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[deploy.sh] fix node-gyp failure on rebuild #191
[deploy.sh] fix node-gyp failure on rebuild #191
Conversation
@iche033 & @chapulina I must admit I'm no expert in nodejs so this might be a hack. There are some deprecated and old tags for gzweb here: And there are no images or tags of gzweb in the new official location here: The images here: In general, the old gzweb docker_image in https://github.com/osrf/docker_images seems more like an sample of how to put gzweb into docker, it starts a gzserver (without many plugins available or the mechanisms to load custom ones in place) and gzweb which is probably not what it would do in. @mikaelarguedas might have some insight here as I've opened issues to docker_images in the past and to use them in practice usually you end up writing your own. In practice, I believe it's possible to create a generic gzweb docker image, which is not aware of all the required models ahead of time, but when brought up with kubernetes or docker-compose, unknown models could be volume mounted to the gzweb container, and added to the Not actual code, just an example of how this change would enable updating the official gzweb images for generic use:
|
GitHub actions were not triggered on this PR see PR #192 |
node-gyp configure will fail if build directory already exists. One reason this might already exists is if new models have been added to the model path, and `npm run deploy --- -m local` is run again. This change enables building a generic docker image for gzweb, and later loading in the models at launch time via a volume mount that were not known when the original gzweb image was built.
From nodejs/node-gyp README: - `rebuild` Runs `clean`, `configure` and `build` all in a row - `clean` Removes the `build` directory if it exists This ensures `npm run deploy` succeeds if it is run a second time. `npm run deploy` needs to be re-run if the deploy options change.
962b8d7
to
9a649a0
Compare
Ignore all the docker reasoning I mentioned... I think this is simply a bug. |
Bump @iche033 and @chapulina
This PR replaces:
with just:
Because build will fail when the build directory isn't clean. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks reasonable to me
* [deploy.sh] fix node-gyp failure on rebuild node-gyp configure will fail if build directory already exists. One reason this might already exists is if new models have been added to the model path, and `npm run deploy --- -m local` is run again. This change enables building a generic docker image for gzweb, and later loading in the models at launch time via a volume mount that were not known when the original gzweb image was built. * [deploy.sh] node-gyp rebuild From nodejs/node-gyp README: - `rebuild` Runs `clean`, `configure` and `build` all in a row - `clean` Removes the `build` directory if it exists This ensures `npm run deploy` succeeds if it is run a second time. `npm run deploy` needs to be re-run if the deploy options change.
node-gyp configure will fail if build directory already exists.
One reason this might already exists is if new models have been added
to the model path, and
npm run deploy --- -m local
is run again.This change enables building a generic docker image for gzweb, and later
loading in the models at launch time via a volume mount that were not
known when the original gzweb image was built.