Difference between revisions of "Documentation/Nightly/Developers/Build system/SlicerBot"
m (Created page with '= Overview = Each time a task associated to the wiki, repository or bug tracker is automated by the execution of a script on a machine, the ''machine user'' running such script …') |
Tag: 2017 source edit |
||
(11 intermediate revisions by 2 users not shown) | |||
Line 7: | Line 7: | ||
== Wiki == | == Wiki == | ||
− | This SlicerBot user publishes update on the Slicer wiki. The associated wiki account is [[User:UpdateBot| | + | This SlicerBot user publishes update on the Slicer wiki. The associated wiki account is [[User:UpdateBot|UpdateBot]] |
− | |||
== Git == | == Git == | ||
− | This SlicerBot user can commit changes to a defined subset of Slicer repositories. The associated | + | This SlicerBot user can commit changes to a defined subset of Slicer repositories. The associated Github account is [https://github.com/slicerbot slicerbot] and it can commit changes to [https://github.com/orgs/Slicer/teams/slicerbot/repositories all repositories associated] with the <code>slicerbot</code> in the [https://github.com/Slicer Slicer] GitHub organization. |
− | As documented on [https:// | + | As documented on [https://docs.github.com/en/developers/overview/managing-deploy-keys#machine-users managing deploy keys] Github guide, there are multiple approaches to grant a machine ''access'' to a repository. We chose the ''machine user'' one. |
In a nutshell, the steps to configure a ''git machine user'' are: | In a nutshell, the steps to configure a ''git machine user'' are: | ||
− | * | + | * Generate SSK keys without pass-phrase: |
+ | |||
+ | ssh-keygen -t rsa -C "slicerbot@slicer.org" | ||
* Add the generated <code>id_rsa.pub</code> key to the list of SSH keys associated with [https://github.com/slicerbot slicerbot] user. Each key '''*SHOULD*''' be named <code>slicerbot-<hostname></code>. For example <code>slicerbot-factory-south-ubuntu</code> | * Add the generated <code>id_rsa.pub</code> key to the list of SSH keys associated with [https://github.com/slicerbot slicerbot] user. Each key '''*SHOULD*''' be named <code>slicerbot-<hostname></code>. For example <code>slicerbot-factory-south-ubuntu</code> | ||
+ | * Setup git username and email: | ||
+ | |||
+ | git config --global user.name "Slicer Bot" | ||
+ | git config --global user.email "slicerbot@slicer.org" | ||
+ | |||
+ | === SVN2GitHub synchronization === | ||
+ | |||
+ | * See [[{{FULLPAGENAME}}/SVN2GitHub|SVN2GitHub]] | ||
+ | |||
+ | == HtmlDoc == | ||
+ | |||
+ | See https://github.com/Slicer/apidocs.slicer.org#readme | ||
+ | |||
+ | == Packages == | ||
+ | |||
+ | These bots can upload packages on http://slicer.kitware.com/midas3 | ||
+ | |||
+ | === Applications === | ||
+ | |||
+ | The group with "write" permission on the [http://slicer.kitware.com/midas3/folder/249 NA-MIC/Public/Slicer/Packages/Applications/] folder is <code>Slicer App Packages Uploader</code> | ||
+ | |||
+ | Bots currently associated with this group are: | ||
+ | |||
+ | * [http://slicer.kitware.com/midas3/user/44 Slicerbot Kitware] | ||
+ | * [http://slicer.kitware.com/midas3/user/465 Slicerbot Perklab] | ||
+ | |||
+ | Organization of packages listed on https://download.slicer.org is specified on https://github.com/mhalle/slicer4-download | ||
+ | |||
+ | === Extensions === | ||
+ | |||
+ | Extensions are organized in three different folders: | ||
+ | * [http://slicer.kitware.com/midas3/folder/254 NA-MIC/Public/Slicer/Packages/Extensions/Nightly] | ||
+ | * [http://slicer.kitware.com/midas3/folder/1568 NA-MIC/Public/Slicer/Packages/Extensions/Continuous] | ||
+ | * [http://slicer.kitware.com/midas3/folder/253 NA-MIC/Public/Slicer/Packages/Extensions/Experimental] | ||
+ | |||
+ | Currently, any user associated with the <code>Experimental Uploader</code> group as "write" permission to these folders. | ||
+ | |||
+ | In additional to users who [[Documentation/{{documentation/version}}/Developers/Tutorials/BuildTestPackageDistributeExtensions#Step-by-step:_How_to_create.2C_publish_and_distribute_an_extension_.3F|requested]] to be added to the <code>Experimental Uploaded</code> group, the following bots are included: | ||
+ | |||
+ | * [http://slicer.kitware.com/midas3/user/44 Slicerbot Kitware] | ||
+ | * [http://slicer.kitware.com/midas3/user/465 Slicerbot Perklab] | ||
+ | Note: The concept of channels is being discussed (See [http://www.na-mic.org/Bug/view.php?id=2334 #2334]). By default, only extension associated with the "official" would be listed in the extensions manager. User will have the option to select other channels. | ||
= SlicerBots = | = SlicerBots = | ||
− | As of | + | As of 2018-03-07, the machines with SlicerBot accounts are: |
* factory | * factory | ||
+ | * factory-south | ||
* factory-south-ubuntu | * factory-south-ubuntu | ||
− | * | + | * metroplex |
+ | * overload |
Latest revision as of 18:31, 25 January 2022
Home < Documentation < Nightly < Developers < Build system < SlicerBotContents
Overview
Each time a task associated to the wiki, repository or bug tracker is automated by the execution of a script on a machine, the machine user running such script will be identified as SlicerBot
.
Type of SlicerBot
Wiki
This SlicerBot user publishes update on the Slicer wiki. The associated wiki account is UpdateBot
Git
This SlicerBot user can commit changes to a defined subset of Slicer repositories. The associated Github account is slicerbot and it can commit changes to all repositories associated with the slicerbot
in the Slicer GitHub organization.
As documented on managing deploy keys Github guide, there are multiple approaches to grant a machine access to a repository. We chose the machine user one.
In a nutshell, the steps to configure a git machine user are:
- Generate SSK keys without pass-phrase:
ssh-keygen -t rsa -C "slicerbot@slicer.org"
- Add the generated
id_rsa.pub
key to the list of SSH keys associated with slicerbot user. Each key *SHOULD* be namedslicerbot-<hostname>
. For exampleslicerbot-factory-south-ubuntu
- Setup git username and email:
git config --global user.name "Slicer Bot" git config --global user.email "slicerbot@slicer.org"
SVN2GitHub synchronization
- See SVN2GitHub
HtmlDoc
See https://github.com/Slicer/apidocs.slicer.org#readme
Packages
These bots can upload packages on http://slicer.kitware.com/midas3
Applications
The group with "write" permission on the NA-MIC/Public/Slicer/Packages/Applications/ folder is Slicer App Packages Uploader
Bots currently associated with this group are:
Organization of packages listed on https://download.slicer.org is specified on https://github.com/mhalle/slicer4-download
Extensions
Extensions are organized in three different folders:
- NA-MIC/Public/Slicer/Packages/Extensions/Nightly
- NA-MIC/Public/Slicer/Packages/Extensions/Continuous
- NA-MIC/Public/Slicer/Packages/Extensions/Experimental
Currently, any user associated with the Experimental Uploader
group as "write" permission to these folders.
In additional to users who requested to be added to the Experimental Uploaded
group, the following bots are included:
Note: The concept of channels is being discussed (See #2334). By default, only extension associated with the "official" would be listed in the extensions manager. User will have the option to select other channels.
SlicerBots
As of 2018-03-07, the machines with SlicerBot accounts are:
- factory
- factory-south
- factory-south-ubuntu
- metroplex
- overload