Project Checklist

From Wiki
Jump to: navigation, search

TODO: Andrea, merge in content from https://locationtech.org/wiki/The_Forge

Project Onboarding Checklist

This checklist is intended as a helpful guide for new projects joining LocationTech. It lists things you'll want to push for and make sure you have set up and working properly as you bring your project into LocationTech.

The infrastructure basics

These are set up for you by webmasters. They are done after the project is officially created and some of the committers have done their committer paperwork.

  1. A project mailing list - Projects must use the mailman mailing lists provided by the Foundation. They are covered under the terms of use, privacy policy, and so forth. At this time (2016), Using Google groups are not currently allowed. You are welcome to have dev & users lists if you like. Unless you need two, you are likely best just going with a dev list to start.
  2. A code repository - You have a choice of using git on the Foundation's servers, or Github under the LocationTech organization. You can use git at other third party forges like Bitbucket too. Just go with Github, that's where everyone else is. :-)
  3. Bug tracker - You have a choice of using Bugzilla hosted on the Foundation's servers, or Github issues connected with your project at Github. Again, just go with Github. :-) We are doing a proof of concept for JIRA, but currently it is not officially supported.

IMPORTANT NOTE: If you're already using Github, you can simply move your repository over to the LocationTech organization. You can preserve your history. For information, please see: https://wiki.eclipse.org/GitHub

The infrastructure optional

These are optional, you can raise a bug to request them https://bugs.eclipse.org/bugs/ For product, use Eclipse Foundation => Community => pick the item

  1. Continuous integration - You have a choice of Hudson or Jenkins. Both are supported by the Eclipse Foundation's IT staff. They are very similar, but we'll lean to Jenkins for various reasons.
  2. Nexus - Nexus is the server side of Maven and holds artifacts for and from your build. If you're consuming or producing jar files, we recommend you use it. Last we checked, a Nexus pro account is needed to push artifacts to Maven central. You're welcome to do this if you have one.
  3. Jar signer - TBD, webmaster is setting this up.
  4. Download site - TBD, webmaster is setting this up.

IMPORTANT: Please make sure you log in to LocationTech.org, and populate the URL's for each there. That way they'll show up in your project page and people can find your project easier.


In your repository

Contributing Guide

(Derived from https://wiki.eclipse.org/Architecture_Council/Contributor_Guide_Recommendation#Source_Code_Repositories)

Be sure you have a contributing guide named CONTRIBUTING or CONTRIBUTING.md in the root of your project repository, this should include:

  • A link to the project website and documentation (link to your project page)
  • Communication channel (provide a link to the project mailing list)
  • Mechanics of how to actually contribute (pull requests accepted, via Gerrit, etc.);
  • Link to sign a CLA

Additionally, the guide might include:

  • Link to downloads (optional); and
  • Link to the main project contribution guide


Operating as a community

(Derived from https://wiki.eclipse.org/Community_Development_for_Eclipse_Projects)

Transparency

It's great when colleagues get together to discuss their plans for a project. In order to help your community know what's happening in the project and feel like they can be part of it, those back channel conversations need to be captured. Consider summarizing conversations in the project mailing list, on the project website, or in a bugzilla record. Bugzilla is particularly good for capturing these conversations as it facilitates follow-up conversation, and—since these conversations very often translate into features or fixes for the project—is probably the ultimate home for the results of the conversation.

Grow

Your project runs on mindshare and the energies of interested people. Look for people you can encourage to get involved in the project and pull them in.