to complete with some final thoughts:

We may add for each of our partials an asf-site branch and deploy them 
like
publish:
  whoami:    asf-site
  subdir:    turbine
e.g. for turbine-core and turbine-site. This might be done for all 
separate git repositories, but Fulcrum is currently merged into one:
https://github.com/apache/turbine-fulcrum. 
Intead of using a Jenkins build we might use the Jekyll CMS to deploy as 
mentioned here 
https://cwiki.apache.org/confluence/display/INFRA/git+-+.asf.yaml+features
because Infra supports Jekyll buildbots
https://cwiki.apache.org/confluence/display/INFRA/Migrate+your+project+website+from+the+Apache+CMS
(.. output the generated files into a _site folder )
(although some information seems to be already outdated or not yet 
updated)
and Maven site and Jekyll seems to be mergable (this "plugin" has to be 
updated and tested)
https://github.com/salmon-charles/maven-jekyll-skin
As a result we may build it this way, with Github Actions/Workflows 
https://docs.github.com/en/actions/quickstart
(instead of Jenkins)..

GitHub workflows seem to be quite powerful, event triggered, e.g. on 
release, I found this example with jekyll, which publishes to branch 
asf-site

https://github.com/apache/arrow-site/blob/master/.github/workflows/deploy.yml
. The problem is, only a single asf-site branch could exist per 
repository.

As a result we may split the tasks and proceed to resolve publishing 
Turbine related partials and postpone Fulcrum.
Except we follow Thomas' suggestion, that we split each Fulcrum component 
into its own Git repository!

Best regards, Georg



Von:    "Georg Kallidis" <[email protected]>
An:     "Turbine Developers List" <[email protected]>
Datum:  06.08.2021 13:21
Betreff:        [DISCUSS] Migrate SVN Repos to Git, How to Migrate Site 
Building + Publishing



Hi Turbine Dev community,

We have to decide a couple of infrastructure changes, find more 
information here 

https://issues.apache.org/jira/browse/INFRA-22176?focusedCommentId=17394620&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17394620


where a put some questions, which we my have to answer. 

After the discussion is at some point, I (or volunteer) would summarize it 

and write it out in votable question(s).

1) Move Turbine /Fulcrum to Git (native) as already 
https://github.com/apache/turbine-archetypes)

This step seems to be entirely independent from the main question of how 
to publish our site. We very well could postpone it, but would be more 
consistent of course and more welcoming (i.e. allow pull requests, but no 
low level issue discussion, as this is disabled for apache projects, but 
instead forwarding to mailing list should be done).

We already have this in read only (git mirror of svn):
https://github.com/apache/turbine-fulcrum
https://github.com/apache/turbine-core

We could just inform INFRA we want them as writeable and ask for help to 
achieve this.

More detailed discussion: What's missing is
- turbine/maven with parent/assembly/archetype. Archetype is already 
migrated to a git repo.
- turbine/site (wrapper site). Like fulcrum/fulcrum-site this is the 
wrapper site for Turbine, as the latter is for Fulcrum components.
- fulcrum/site may bebetter a separate repo, as a sobproject of the 
published web site could be declared in .asf.yaml (see below), but we have 

to populate a branch asf-site with just the output of fulcrum-site - might 

be possible, but probably without having done this yet (no template).

Should we get a git-repo for each of those? This is not required for 
changing our site-building (except turbine/site and fulcrum/site).

Proposal: Migrate first turbine/site and then in parallel with site 
migration (help of INFRA needed) migrate svn-repositories turbine-fulcrum 
and turbine-core to read-write Git-repos (may be without fulcrum-site (see 

below) and migrate svn-repo turbine/maven without turbine-archetype to a 
new GIT-repository turbine-maven?

2) How to Build site

2.1) How to structure our project web site content? We currently have a 
very delegated site content generation. Each sub project has its own site 
and we have two "site-wrappers" for Turbine and Fulcrum.

That is, we have these partials:

- turbine-core (with staging/development and master/trunk)
- turbine-site (wrapper for /turbine)
- fulcrum-site (wrapper /fulcrum)
- 17 active Fulcrum components
- 9 dormant Fulcrum components
- turbine-parent ..
.. ?

Currently we could build all parts separately and the site is updated 
accordingly and partially. This is not an easy and very much used feature 
in the new project site building process as far as I can see.

We may proceed like Apache James. Keep the project site buildings and 
"hide" it all behind a wrapper, in their case a Jekyll SPA like landing 
page. But they use a people account for deplyoment not an git repo 
(asf-site) and may not be finished with their migration. 

This boils down to use at least turbine/site as asf-site and fulcrum/site 
the same.

Proposal: Contact Infra, migrate turbine/site to Git (separate repo), 
extract fulcrum/site to separate git-repo or keep it, if possible and 
declare there the asf-site branches. Then either use one of the solutions 
in 3).

2.2) We might keep the xdoc build or change to Jekyll (Hugo ..) - ?

3) How to publish project web site

https://infra.apache.org/project-site.html
https://cwiki.apache.org/confluence/display/INFRA/git+-+.asf.yaml+features

If we have a structure for our web content building, there are two 
options: 1) asf-site branch + jenkins or 2) .asf.yaml for git repos.


Best regards, Georg






Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to