-
Notifications
You must be signed in to change notification settings - Fork 3
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
CREO2URDF – Build a GA on a self-hosted runner for automatically generate the urdfs #87
Comments
Because of https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#self-hosted-runner-security, we ought to rely on a private repository. I've churned out a brand-new one: That said, it could be still beneficial for the community to document here (i.e., public-wise) how to set up the infrastructure for the GA. @Nicogene, could you please draft below what the GitHub Action is supposed to be doing in terms of input/output? This will help me organize the work. |
As agreed f2f w/ @pattacini, we thought about creating a central GitHub action in the ccing @traversaro since he may be interested |
If I am not wrong, we should have trigger repository on both the repos that host the configuration files and the one that host the CAD, right? |
Ideally yes, @traversaro. To start with, I would honestly send the triggers via the green button (i.e., |
I managed to install and run I will move on setting the self hosted runner |
I built a first draft of the GA that runs from a manual dispatch that simply execute this commands: cd C:\Users\Public\icub-tech-iit\cad-libraries
mkdir output_urdf
.\run_creo2urdf.ps1 -asmPath "C:\Users\Public\icub-tech-iit\cad-mechanics\projects\simulation_model\ergocub_1-1\sim_ergocub_1-1.asm" -yamlPath "$env:GITHUB_WORKSPACE\ergocub-software\urdf\creo2urdf\data\ergocub1_1\ERGOCUB_all_options.yaml" -csvPath "$env:GITHUB_WORKSPACE\ergocub-software\urdf\creo2urdf\data\ergocub1_1\ERGOCUB_joint_all_parameters.csv" -outputPath "C:\Users\Public\icub-tech-iit\cad-libraries\output_urdf"
cp .\output_urdf\model.urdf $env:GITHUB_WORKSPACE\ergocub-software\urdf\ergoCub\robots\ergoCubSN001
.\run_creo2urdf.ps1 -asmPath "C:\Users\Public\icub-tech-iit\cad-mechanics\projects\simulation_model\ergocub_1-1\sim_ergocub_1-1.asm" -yamlPath "$env:GITHUB_WORKSPACE\ergocub-software\urdf\creo2urdf\data\ergocub1_1\ERGOCUB_all_options_gazebo.yaml" -csvPath "$GITHUB_WORKSPACE\ergocub-software\urdf\creo2urdf\data\ergocub1_1\ERGOCUB_joint_all_parameters.csv" -outputPath "C:\Users\Public\icub-tech-iit\cad-libraries\output_urdf"
cp .\output_urdf\model.urdf $env:GITHUB_WORKSPACE\ergocub-software\urdf\ergoCub\robots\ergoCubGazeboV1_1
.\run_creo2urdf.ps1 -asmPath "C:\Users\Public\icub-tech-iit\cad-mechanics\projects\simulation_model\ergocub_1-1\sim_ergocub_1-1.asm" -yamlPath "$env:GITHUB_WORKSPACE\ergocub-software\urdf\creo2urdf\data\ergocub1_1\ERGOCUB_all_options_minContacts.yaml" -csvPath "$GITHUB_WORKSPACE\ergocub-software\urdf\creo2urdf\data\ergocub1_1\ERGOCUB_joint_all_parameters.csv" -outputPath "C:\Users\Public\icub-tech-iit\cad-libraries\output_urdf"
cp .\output_urdf\model.urdf $env:GITHUB_WORKSPACE\ergocub-software\urdf\ergoCub\robots\ergoCubGazeboV1_1_minContacts
cp .\output_urdf\*.stl $env:GITHUB_WORKSPACE\ergocub-software\urdf\ergoCub\meshes\simmechanics
rmdir -Recurse C:\Users\Public\icub-tech-iit\cad-libraries\output_urdf The problem seems that the first time the urdf is generated fine, then creo seems to remain zombie and the following generations fails, I need to investigate a little bit about it. |
The strange thing is that I can run
@Lawproto @fiorisi do you know what that file is for? Is it necessary? |
Actually now I pulled |
Bingo! Here what was the problem:
I remembered I had these local changes in cad-libraries: --- a/config/search_path.pro
+++ b/config/search_path.pro
@@ -85,6 +85,8 @@ search_path ".\..\cad-mechanics\projects\icub\koroibot"
search_path ".\..\cad-mechanics\projects\simulation_model"
search_path ".\..\cad-mechanics\projects\simulation_model\head"
search_path ".\..\cad-mechanics\projects\simulation_model\icub3"
+search_path ".\..\cad-mechanics\projects\simulation_model\ergocub_1-1"
+search_path ".\..\cad-mechanics\projects\simulation_model\cer" cc @fiorisi |
Fixing locally Now we should:
Future improvements:
|
To start with, we could just guarantee that those repos are aligned via a pull with what is needed to generate the URDF. |
Fix in |
Unfortunately sometimes some creo background process remains stuck even if the generation exit fine, I put a wait of 30 sec with a forced kill of the process |
With the latest version of the action the output of the generation is a PR in @xela-95 @traversaro now the versions of all the repo used is both in the commit message and PR body |
An MVP has been achieved, closing in favour of: |
Task description
Since now
creo2urdf
can be run from terminal:URDF
generation from the terminal #53and we have
run_creo2urdf.ps1
script, we need to prepare our self-hosted runner for generating automatically theergocub-software
modelsDoD
The github action and the self-hosted runner are ready.
The text was updated successfully, but these errors were encountered: