Hi Turbine Devs, I propose this as a vote, which allows us to get an overview of what we want to do or have to do, the workload, and how to communicate with INFRA.
SVN->Git (1.1) Move Turbine-core and Turbine-site from SVN to Git as detailed below. Turbine-Core is currently mirrored only in GitHub/Gitbox. (1.2) Move Fulcrum components from SVN to Git. Fulcrum is currently mirrored only in GitHub. a) try to keep it in one git repo or if not possible split up. b) split it up in any case. Find more information below! (1.3) Move Turbine Maven from SVN to Git as detailed below. Turbine-Archetypes is already a GIT repo. (2) Performing a Turbine-core release v5.1: As this might take some time depending on workload, should we release before the migration? We probably want still use the maven scm plugin to publish releases, but for building and publishing web content we have to change more (as it seems): (3) For each Git repo with a maven-site-configuration to build and publish web content, we should define either a) a Jenkins Build file(s) and/or b) a build directive within the .asf.yaml-file (supports jekyll and pelican) c) an instruction, how to do it locally, similar how it is explained here [2], but with additional restrictions (see below .asf.yml file, web root folder). The last alternative might be too much effort. It might be possible to do this even for mirrored git-repos (we have to ask INFRA). We might vote like this: [ ] +1 support (optional with order): Example: 3,2,1 > 1,2,3 > 2,1,3 / 1a > 1b [ ] +0 go ahead I don't care [ ] -1 no, do not ... , because Finally to achieve all of this correctly, we have to inform INFRA about our mappings and other required changes. - I expect Turbine-core and Turbine-site be migrated without much hassle and map easily to git from the current svn (the svn structure for turbine/core and turbine/site is the same). - Fulcrum components could be kept as currently in a single git repo or split up each into a separate git repo. As consistent the latter approach would be I would prefer keeping them together (if possible, see below!). Reasons are: The master module pom will be "lost". This could be solved with git modules, but requires some additional effort and advanced git knowledge + documentation/testing IMO. Who will help? - Maintenance effort increases (e.g. an update of a shared dependency has to be done in x (x= number of git repos) commits versus 1 commit, if we keep them as a collection also in version control. On the other side publishing has to be discussed with INFRA and is not done out-of-the-box, see below. What do you prefer? - Turbine-maven-parent and Parent-assembly might be split up (without archetypes) as well.. The policy of INFRA on how a project should publish their web site seems to be now, that by default HTML will be fetched from an branch "asf-site" inside a git repository. Additionally an .asf.yml file must be present in this branch [1]. As Turbine is structured in such a way, that the website is build modularily, we would need then by default a git repo for each module. We may use "subdir" command in .asf.yaml and default root URL setting for turbine-site and fulcrum-site, if the latter will not destroy the tree contents below ;-). The content to be published (in the branch asf-site) has to be in the root or in a folder "content" or "output"[1]. Building may take place using a Jenkins build file updating the asf-site branch or a buildbot-definition in .asf.yaml using Jekyll or Pelican hooks [1]. To keep Fulcrum components together, we might do it like Apache Jena achieved it to do it for their javadoc: Sync a named branch with the help of INFRA. Gavin McDonald pointed us to this: https://cwiki.apache.org/confluence/display/INFRA/How+Apache+Jena+migrated+from+the+CMS . In step 8 (optional) Jena created a branch javadoc, which maps to a subfolder in the website, https://github.com/apache/jena-site/tree/javadoc . We may proceed in a similar way for Fulcrum having only one git repo with multiple site branches? Nevertheless, be aware, that currently publishing a site could not be done and all steps require some effort! Any support is welcome, of course ;-) Thanks! Best regards, Georg [1] https://cwiki.apache.org/confluence/display/INFRA/git+-+.asf.yaml+features [2] https://maven.apache.org/plugins/maven-scm-publish-plugin/various-tips.html
smime.p7s
Description: S/MIME Cryptographic Signature
