Skip to content
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

Before Script: Read Only File System #122

Closed
Jmeyer1292 opened this issue Feb 13, 2017 · 6 comments
Closed

Before Script: Read Only File System #122

Jmeyer1292 opened this issue Feb 13, 2017 · 6 comments

Comments

@Jmeyer1292
Copy link

I noticed today that a couple of build systems based on industrial_ci have started breaking where they previously worked.

See this link for an example. I clone, build, and install a git repo as part of my before_script but as of recently this step fails.

@mathias-luedtke
Copy link
Member

Thanks for reporting!
I your case, #120 should solve the problem, but..

I would recommend to switch to an absolut path for your clone/build in install-libsocket++.sh
This way you don't interfere with the build in any way.
Only $TARGET_REPO_PATH is read-only.

That being said, I guess making $TARGET_REPO_PATH writable might be more user-friendly..
#121 is a result oft the read-only volume as well.

@Jmeyer1292
Copy link
Author

@ipa-mdl Can you elaborate on what absolute path is appropriate in this scenario?

@mathias-luedtke
Copy link
Member

With #120 you script will be run with / as working directory (or /root, not 100% sure).

Can you elaborate on what absolute path is appropriate in this scenario?

Anything except $TARGET_REPO_PATH and $ICI_SRC_PATH;)
Since all commands are run in docker (and as root :-/) you can use any path you like.
I would use /tmp or /tmp/build_deps.

In version 0.3.1 the before script was executed in ~/ros/ws_$TARGET_REPO_NAME/src.

Which directory would you expect as a user?

@Jmeyer1292
Copy link
Author

So my initial logic was based off the travis CI script examples. See bottom of the page.

In these, they just download a directory, unzip it, cd into it, and build right there.
I will change it to /tmp if I need to. I would prefer if I didn't have to modify anything. +1 to making that dir writable.

@mathias-luedtke
Copy link
Member

mathias-luedtke commented Feb 14, 2017

So my initial logic was based off the travis CI script examples

Hmm, they pull additional code right into the src repo folder..
It get's a little bit more complicated with running in docker..
The before script will be run in the default workdir of the docker image as soon as #120 got merged.
I wonder if we should set it to a more reasonable default than /.

I would prefer if I didn't have to modify anything.

So just wait for #120 (and/or #123) to be merged :D

@Jmeyer1292
Copy link
Author

Ok. I appreciate your support @ipa-mdl.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants