jsk-ros-pkg / jsk_model_tools

JSK model utilities
https://github.com/jsk-ros-pkg/jsk_model_tools
BSD 3-Clause "New" or "Revised" License
6 stars 29 forks source link

eusurdfのモデル変換で/tmpにファイルを作るが他のユーザが上書きできない #124

Closed mmurooka closed 8 years ago

mmurooka commented 9 years ago

特にPR2で起きていますが, eusからurdfにモデル変換するときに/tmpに途中生成のcolladaファイルができるようになっていて, ユーザaaaが変換したcolladaが/tmpに残っていると, ユーザbbbが同じ名前のcolladaファイルを/tmpに作れず,止まってしまう, という問題がおきています.

どのように解決するのがよろしいでしょうか. 1.コンパイルのたびに,/tmpにランダムな名前のディレクトリを作って,そこにcolladaを置く 2.colladaファイルを作るときに誰でも消せるように権限を付ける くらいしか思いつかず 1.でやってみようかと思いますがよろしいでしょうか.

garaemon commented 9 years ago

/tmpのしたにmktempでもう一回層ディレクトリを掘るんじゃないかな?

mmurooka commented 9 years ago

ありがとうございます.

eusでランダムに作ったディレクトリの名前を知りたいのですが, 良い方法ありますでしょうか. eusのプログラムの中でディレクトリを作るので構いません.

snozawa commented 9 years ago

eusでランダムに作ったディレクトリの名前を知りたいのですが, 良い方法ありますでしょうか. eusのプログラムの中でディレクトリを作るので構いません.

これが必要な状況は、ちょっと複雑な状況かな、とおもいます。 変換のフロー図をみなおしてみて、もうちょい別な解法があるかも検討してみるとよいですね。 なんとか途中生成ファイルをお互いにやりとりしなくてすむように、などなど

それで、上記をもしやるとしたらなにかコンフリクトしない名前づけでルール決めとくとかはあるかもしれません。 eusのプロセスのPIDの名前をつける、とか。

garaemon commented 9 years ago

乱数で適当に数字をくっつけて、そのファイルが被っていないかを確認して繰り返し行う、とか色々とやり方はある気がします。

mmurooka commented 8 years ago

https://github.com/jsk-ros-pkg/jsk_model_tools/pull/126 で解決しているのでcloseします.