Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 359737 - Migrate EF-maintained websites on www to Git
Summary: Migrate EF-maintained websites on www to Git
Status: RESOLVED FIXED
Alias: None
Product: Community
Classification: Eclipse Foundation
Component: Website (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: phoenix.ui CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 341037 359738 359747 359748 359749 359757 359758 359764 375211 382758 382759 387643 389205 389206 389207 389208 389209 389210 389211 389768 389769 389771 389772 389779 389780 389895 390033 390258 390259 390265 390270 390272 390276 390277
Blocks: 324116
  Show dependency tree
 
Reported: 2011-10-03 12:54 EDT by Wayne Beaton CLA
Modified: 2014-03-11 15:57 EDT (History)
9 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Wayne Beaton CLA 2011-10-03 12:54:35 EDT
There are several subsites maintained by the Eclipse Foundation that need to be moved to Git (/articles, /projects, /resources, etc). 

Denis and I have discussed creating separate Git repositories for each.

Note that none of these subsites are aligned with an Eclipse project.

I'll open a separate blocking bug for each of them.
Comment 1 David Williams CLA 2011-10-05 14:25:03 EDT
> Note that none of these subsites are aligned with an Eclipse project.
> I'll open a separate blocking bug for each of them.

While not directly related to this ... I don't think ... what is the strategy for moving project websites to Git? It should be easier for a project to move website to Git (as far as I know) that code, since no one (that I know of) "build" it, maintain branches, etc. But, some might have scripts that refer read from it or (semi-automatically) "feed" it; I'm not sure (I am not aware of any). But, might get some (few) committers used to using Git on their websites, before messing with their code repos. Seems it would not have to be done at same time as project's code ... but perhaps that's the assumption? 

Just wondering.
Comment 2 Wayne Beaton CLA 2011-10-05 14:55:18 EDT
(In reply to comment #1)
> > Note that none of these subsites are aligned with an Eclipse project.
> > I'll open a separate blocking bug for each of them.
> 
> While not directly related to this ... I don't think ... what is the strategy
> for moving project websites to Git? It should be easier for a project to move
> website to Git (as far as I know) that code, since no one (that I know of)
> "build" it, maintain branches, etc. But, some might have scripts that refer
> read from it or (semi-automatically) "feed" it; I'm not sure (I am not aware of
> any). But, might get some (few) committers used to using Git on their websites,
> before messing with their code repos. Seems it would not have to be done at
> same time as project's code ... but perhaps that's the assumption? 
> 
> Just wondering.

We've already done some experimenting with this (Bug 324116). Our larger evil plan is to use our own migration as the starting point of a larger migration of project websites to Git. Our hope is to get as many of the EF-maintained sites over to Git as possible before the end of 2011 and then use the lessons learned to start encouraging other projects to move. 

My hope is that projects will move their websites either before or shortly after the Juno release.
Comment 3 Wayne Beaton CLA 2011-12-01 10:40:47 EST
There are some questions that I think we need to answer before we can move ahead.

Where do we put these repositories? Do they go alongside project code repositories, or do we make a special location for them? I'm in favour of putting them in a separate location to keep them distinct from code repositories (for one, it will allow us to automatically filter out website repositories when setting up GitHub clones, and running Dash queries).

What will be the structure of the repositories? One repo/root directory? e.g. for Bug 359758, do we create a repository named "committers.git" and map the checkout of it to "/committers"?

FWIW, I'm ready to move ahead with /committers (Bug 359758), /articles (Bug 359738). These are both pretty low activity; once we have them up and running, I can move ahead with /projects (I don't think I've created a bug for this yet).
Comment 4 Denis Roy CLA 2011-12-02 11:27:52 EST
> Where do we put these repositories? Do they go alongside project code
> repositories, or do we make a special location for them?

They _were_ alongside the code before Phoenix. Since we were publishing the pages to a centralized location, we decided to create a dedicated repo for the website.

If we decide to store the repo with the project code, we'd likely need a good naming convention and a repo->directory mapping to make sure the right repos are published in the correct locations.

My vote was to create a container (like /gitroot/www.eclipse.org) and have each repository inside correspond to one top-level directory name (committers.git, articles.git, etc.)
Comment 5 Jesse McConnell CLA 2012-03-09 15:55:08 EST
My preference would be to have it sitting alongside our other repositories

org.eclipse.jetty.website.git

but i am open if you want to have a distinct project for this

under the jetty project in our git repo would restrict users to just normal jetty committers which is fine
Comment 6 Andrew Overholt CLA 2012-03-21 15:50:10 EDT
I'd vote in favour of having the website repos alongside the code (preferably in one repo) but if that makes things difficult from an administration standpoint, I have no preference.
Comment 7 Wayne Beaton CLA 2012-03-23 14:21:28 EDT
Based on "overwhelming" feedback, I guess keeping these alongside project directories is what we should do.

My preference is to use some kind of naming strategy to figure out what goes where (though I'm willing to defer to better judgement). I'm concerned that trying to maintain this information in a file or database introduces an opportunity to for things to get out of synch (and it's just one more thing that we have to think about).

There is some variability in terms of where project websites sit in the www hierarchy.

e.g. 

rt.gemini.naming => http://eclipse.org/gemini/naming/
technology.egit => http://eclipse.org/egit

How does this bode for naming conventions?

If we replace the slashes with underscores, maybe something like:

e.g.

website-gemini_naming.git => http://eclipse.org/gemini/naming/
website-egit.git => http://eclipse.org/egit

Do we have any "root" directories with underscores in their name?

How worried are we about projects erroneously creating extraneous "website" directories? I'm not particularly worried.

Maybe we should just maintain a file with the mapping. Webmaster team would have to make sure it's up-to-date. Thoughts?
Comment 8 Denis Roy CLA 2012-03-23 14:30:27 EDT
I guess I don't understand the concrete benefit of having a web repo alongside a code repo.  From Eclipse's point of view, it's still 2 separate projects.

From the admin point of view, we're already discussing mappings via files or meta-data, the dangers of having content published to www.eclipse.org when it shouldn't be and the fact that data may be out of sync.

Having one /gitroot/www.eclipse.org container removes all this ambiguity -- one git repo per top-level directory on www.eclipse.org makes it really easy for us to script deployment to the website.

I'm not opposed to having the website along the code.  But it sounds like a recipe for headaches and increased need for support with little to no benefit for committers.
Comment 9 Denis Roy CLA 2012-03-23 14:35:20 EDT
Actually, since I'm the one who will have to deploy and maintain this system, I'll put my big-boy hat on and forcibly decide that one container for all the www.eclipse.org content is the only way to do this right.

I'll still let you folks decide what the container's name will be...   I suggest /gitroot/www.eclipse.org but otherwise I don't care  :)
Comment 10 Wayne Beaton CLA 2012-03-23 14:37:23 EDT
(In reply to comment #9)
> Actually, since I'm the one who will have to deploy and maintain this system,
> I'll put my big-boy hat on and forcibly decide that one container for all the
> www.eclipse.org content is the only way to do this right.

I put "overwhelming" in quotes for a reason.

+1

> I'll still let you folks decide what the container's name will be...   I
> suggest /gitroot/www.eclipse.org but otherwise I don't care  :)

+1
Comment 11 Jesse McConnell CLA 2012-03-23 14:44:52 EDT
So you really want all content or all project for the website in one git repository?

I have been planning on publishing docbook generated output to our website as part of a nightly process and I really didn't want to have to bother much with making sure my git repo was all merged up every time someone decides to tweak a comma on their page...nor do I really relish having to clone the _entire_ website when I want to make a change...

I don't see what the big deal is with multiple git repositories for this, it seems far more natural and gitish then one big uber git repository for the whole website.
Comment 12 Denis Roy CLA 2012-03-23 14:45:51 EDT
Great.  I created /gitroot/www.eclipse.org

My other recommendation is that each repo (which corresponds to a top-level directory on www) be named top-level-name.git.  Again, this will help us maintain a natural mapping of repo_name -> www.eclipse.org/path

I've already created /gitroot/www.eclipse.org/articles.git for /articles.  Wayne, have at it if you want, or I can do the import for you.
Comment 13 Denis Roy CLA 2012-03-23 14:47:05 EDT
> So you really want all content or all project for the website in one git
> repository?

One git repo per top-level directory on www.

Essentually, each of these directories in the current CVS repo would become its own Git repo:

http://dev.eclipse.org/viewcvs/viewvc.cgi/www/?root=Eclipse_Website
Comment 14 Jesse McConnell CLA 2012-03-23 14:50:50 EDT
(In reply to comment #13)
> > So you really want all content or all project for the website in one git
> > repository?
> 
> One git repo per top-level directory on www.
> 
> Essentually, each of these directories in the current CVS repo would become its
> own Git repo:
> 
> http://dev.eclipse.org/viewcvs/viewvc.cgi/www/?root=Eclipse_Website


Ok, as long as jetty gets it own git repo I am happy :)
Comment 15 Jesse McConnell CLA 2012-06-04 12:50:49 EDT
What is the status of this work?

Are we close to being able to manage our websites with git?
Comment 16 Wayne Beaton CLA 2012-06-13 15:54:00 EDT
I now have git repositories /articles and /resources. I'm prepared to do all future work on those sites from these git repositories. I've asked a "now what" question on Bug 359738.
Comment 17 Eclipse Webmaster CLA 2014-03-11 15:57:32 EDT
I think we're done here.  Please reopen if I'm wrong.

-M.