Grid5000:Grid5000-code: Difference between revisions
No edit summary |
Sphilippot (talk | contribs) No edit summary |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 17: | Line 17: | ||
Everybody is strongly encouraged to contribute new scripts and improve existing scripts. | Everybody is strongly encouraged to contribute new scripts and improve existing scripts. | ||
The scripts are hosted in the grid5000-code | |||
See | The scripts are hosted in the grid5000-code GitLab repository repository on <code class='host'>gitlab.inria.fr</code>. | ||
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. | ||
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 == | == Contact == | ||
Grid5000 users mailing-list: <code>users@lists.grid5000.fr</code> | |||
== External tools == | == 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. | Some tools are identified as being useful for Grid'5000 users, but are not provided through Grid'5000 code. Here is a list. | ||
* <i>list empty for now</i> | |||
== FAQ == | == FAQ == | ||
Line 36: | Line 40: | ||
=== When are the scripts replicated to Grid'5000? === | === When are the scripts replicated to Grid'5000? === | ||
The scripts | 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 <code>users@lists.grid5000.fr</code>. | |||
=== 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? === | === How do I contribute a new script? === | ||
In a branch, commit it to the <code class='file'>staging/</code> directory. Follow a sane naming convention, | |||
and include in the script: | and include in the script: | ||
* a summary of what the script does | * a summary of what the script does | ||
* contact information (with email address, institution information) | * contact information (with email address, institution information) | ||
* a copyright and license statement (you might want to copy it from other scripts, like bin/katapult) | * 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? === | === What about licensing and copyright? === | ||
Line 68: | Line 70: | ||
=== How do I improve an existing script? === | === How do I improve an existing script? === | ||
Normal | Normal behavior rules apply: you should contact the script's author, | ||
and ask him if he/she is interested in integrating your changes, or | 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 | ask for the permission to commit them yourself. In the meantime, you | ||
Line 75: | Line 77: | ||
=== How do I move the script from staging/ to bin/? === | === How do I move the script from staging/ to bin/? === | ||
Contact the mailing list (<code> | Contact the mailing list (<code>users@lists.grid5000.fr</code>) | ||
and ask for an informal review. Please make sure that your script is | 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 | in a good state before starting the process. In particular, make sure | ||
that its | that its behavior towards the platform is sane (do not DOS OAR, for | ||
example), and that it provides enough documentation (through a --help | example), and that it provides enough documentation (through a --help | ||
option, for example) for everybody to be able to use it. | option, for example) for everybody to be able to use it. | ||
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.