Grid5000:Grid5000-code: Difference between revisions
No edit summary |
Sphilippot (talk | contribs) No edit summary |
||
Line 19: | Line 19: | ||
The scripts are hosted in the grid5000-code GitLab repository repository on <code class='host'>gitlab.inria.fr</code>. | The scripts are hosted in the grid5000-code GitLab repository repository on <code class='host'>gitlab.inria.fr</code>. | ||
See https://gitlab.inria.fr/ | See https://gitlab.inria.fr/grid5000/grid5000-code/ for more info. | ||
Note that the technical team doesn't provide support for those tools. | Note that the technical team doesn't provide support for those tools. | ||
Latest revision as of 21:43, 16 December 2019
Grid5000-code
Grid5000-code is a repository of user-contributed scripts and tools that aim at improving the daily life of Grid'5000 users, by making the platform easier to use.
The scripts are distributed automatically on all Grid'5000 frontends, in /grid5000/code
.
The scripts are divided in two categories:
- public scripts: located in the
bin/
subdirectory, that is also part of the default$PATH
. Those scripts are considered good enough for everybody to try and use them. - 'tentative' scripts, located in the
staging/
subdirectory. While you might find very interesting scripts in this directory, there is no guarantee about the quality of this software.
For more information about the various scripts, see bin/README
and staging/README
.
Everybody is strongly encouraged to contribute new scripts and improve existing scripts.
The scripts are hosted in the grid5000-code GitLab repository repository on gitlab.inria.fr
.
See https://gitlab.inria.fr/grid5000/grid5000-code/ for more info.
Note that the technical team doesn't provide support for those tools.
A new version of grid5000-code is deployed on all sites when:
- a tag is pushed on the master branch of the repository AND
- a maintainer press the deploy button of the CI
Contact
Grid5000 users mailing-list: users@lists.grid5000.fr
External tools
Some tools are identified as being useful for Grid'5000 users, but are not provided through Grid'5000 code. Here is a list.
- list empty for now
FAQ
When are the scripts replicated to Grid'5000?
The scripts are automatically replicated to Grid'5000 frontends when a tag is associated to a commit on the master branch of the repository and one of the project developpers manually launch the deployment pipeline.
Discussions on this topic happen on users@lists.grid5000.fr
.
How do I get write-access to the grid5000-code repository?
Drop a mail to one of the maintainer of the grid5000-code project.
How do I contribute a new script?
In a branch, commit it to the staging/
directory. Follow a sane naming convention,
and include in the script:
- a summary of what the script does
- contact information (with email address, institution information)
- a copyright and license statement (you might want to copy it from other scripts, like bin/katapult)
Then, submit a merge request.
What about licensing and copyright?
Each script can have its own copyright and license. However, it is strongly recommended that you choose a common Free Software license for your script.
If no licensing information is provided on a script committed to SVN, It is assumed that the script is distributed under the terms of the GNU General Public License, version 2, or any later version.
How do I improve an existing script?
Normal behavior rules apply: you should contact the script's author, and ask him if he/she is interested in integrating your changes, or ask for the permission to commit them yourself. In the meantime, you can temporarily "fork" the original script, by renaming it.
How do I move the script from staging/ to bin/?
Contact the mailing list (users@lists.grid5000.fr
)
and ask for an informal review. Please make sure that your script is
in a good state before starting the process. In particular, make sure
that its behavior towards the platform is sane (do not DOS OAR, for
example), and that it provides enough documentation (through a --help
option, for example) for everybody to be able to use it.