| //Licensed under the Apache License, Version 2.0 (the "License"); |
| //you may not use this file except in compliance with the License. |
| //You may obtain a copy of the License at |
| // |
| //http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| //Unless required by applicable law or agreed to in writing, software |
| //distributed under the License is distributed on an "AS IS" BASIS, |
| //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| //See the License for the specific language governing permissions and |
| //limitations under the License. |
| = Mentors' Guide |
| Apache Incubator PMC |
| 2002-10-16 |
| :jbake-type: pmcGuide |
| :jbake-status: published |
| :idprefix: |
| :toc: |
| :imagesdir: ../images/ |
| |
| The Mentors' guide is a go-to place for information about getting a podling up and running from an infrastructure point of view. |
| |
| This document targets any Incubating Project member, but |
| especially Mentors, who have to ensure that some things get done. |
| For a general description of the role of a mentor on an incubating |
| project see the |
| link:/guides/roles_and_responsibilities.html#Mentor[Roles and Responsibilities]document. |
| |
| This guide is a descriptive and at times |
| discursive document. It describes established practices. |
| It is informational not normative. Policy is laid down in the |
| link:/incubation/Incubation_Policy.html[Incubation Policy]. |
| |
| == Overview |
| |
| After the Podling has been accepted by the Incubator PMC, one of the mentors |
| link:/incubation/Incubation_Policy.html#Setting+Up+a+New+Podling[sets up] |
| the Podling; _i.e._ adds the podling metadata, creates the initial Podling status page, and |
| either creates or requests that |
| other resources (mail lists, subversion, bug tracker, _etc._) |
| be created. |
| |
| == Add to Incubation Summary file |
| |
| Add the podling to the podling summary file in |
| the "incubator" SVN at *content/podlings.xml* |
| (e.g. copy the entry from another podling that also has status="current") |
| and see link:website.html[instructions]. |
| |
| Please do this step ASAP after Acceptance. Other setup procedures utilize |
| this metadata. |
| |
| Add a *'reporting'* tag (after *'description'*) with the attribute *'monthly="true"'* |
| and the appropriate "group" attribute, based on the month in which the podling |
| entered incubation (1 for January, April, July, October, 2 for February, May, |
| August, November or 3 for March, June, September, December). The text content |
| of the 'reporting' tag must contain the initial list of reporting months, |
| starting with the month after the podling entered incubation. Below is an example of the final XML snippet |
| |
| [literal] |
| ---- |
| <podling name="PodlingName" status="current" resource="podlingname" sponsor="Sponsor" startdate="YYYY-MM-DD"> |
| <description>A description of the podling, for the status page and reports</description> |
| <reporting group="1|2|3" monthly="true">First,Second,Third</reporting> |
| <champion availid="userid">Champion Name</champion> |
| <mentors> |
| <mentor username="userid">Mentor One</mentor> |
| <mentor username="userid">Mentor Two</mentor> |
| <mentor username="userid">Mentor Three</mentor> |
| </mentors> |
| </podling> |
| ---- |
| |
| An example reporting block: |
| [literal] |
| ---- |
| <reporting group="3" monthly="true">June, July, August</reporting> |
| ---- |
| Once the first three reports are complete, the monthly attribute should be removed |
| and the list of months removed as well. |
| |
| The first report might be |
| very short. However it is better that the Incubator PMC can help to |
| guide through the early setup stages. |
| For more details see the |
| link:ppmc.html#Incubator+ASF+Board+Reports[PPMC Guide]. |
| |
| == Initialize Podling Status Page |
| |
| A mentor needs to |
| link:website.html#Edit+your+project+status+page[create the web page] that will track the project's status. |
| A mentor will also need to update it until |
| link:ppmc.html#Project+Status+Updates[others in the project's PPMC can update it]. |
| |
| The status |
| page is the incubator's record of the progress made. |
| It MUST be kept update to date during incubation. |
| Some of the information is available from the proposal. |
| As the startup process continues and resources are |
| created the status SHOULD be updated. |
| |
| The template contains lists of actions which may be needed |
| to start up a podling. All those which do not apply should |
| be deleted. |
| |
| The status page is a useful aid to workflow. Volunteers |
| can use it to sign up to the various tasks and monitor their |
| progress. Once the mailing lists are set up and prospective |
| committers subscribe then these may be used for discussion. |
| |
| == Resources |
| |
| Resources should be requested in a particular order, and based on paperwork processed. Do not request source repositories before SGAs are filed, for instance, if the source code is not already Apache licensed or Category A licensed. |
| |
| The proposal should include a list of required resources. All of these will |
| require active set up. Some are created by infrastructure after an appropriate |
| request, others can be set up by any IPMC members (typically mentors). |
| |
| The first resources to be created are LDAP and DNS. These should be requested via link:https://issues.apache.org/jira/browse/INFRA[Apache Infra JIRA -> New Podling Parent Request] |
| |
| Once these items are requested, mailing lists should be created next. Other resources typically post information to these lists. |
| |
| === Request Mailing Lists |
| |
| Apache mailing lists require volunteer moderators. New moderators can be |
| link:http://www.apache.org/dev/committers.html#mailing-list-moderators[changed later] |
| but at least one volunteer is required before the mailing lists can be set up. |
| Moderation is a reasonably |
| link:http://www.apache.org/dev/committers.html#mail-moderate[easy task] |
| though moderators may want to set up |
| link:http://spamassassin.apache.org/[spam filtering]. |
| Having at least three moderators is recommended to spread the load. |
| |
| The proposal should contain the rest of the information that needs to be collected |
| before the mailing lists can be requested. Incubator is the responsible top level project. |
| So the domain *MUST* be *incubator.apache.org*. |
| For example: |
| |
| - dev@${podling}.incubator.apache.org |
| - commits@${podling}.incubator.apache.org |
| - private@${podling}.incubator.apache.org |
| |
| For initial community building it is usually appropriate to only have a "dev" list, to keep the discussions focussed. Later add a "user" list if needed. A podling that is already established and using an existing user interaction channel may want to keep those resources around until they feel they have transitioned to the ASF successfully. You will want to discuss this on your existing development lists. |
| |
| [NOTE] |
| ==== |
| If you are using SVN |
| Commits under *http://svn.apache.org/repos/asf/incubator/_${podling}_* will be emailed to *commits@${podling}.incubator.apache.org*. |
| Any deviation will require special configuration in the *asf-mailer.conf* file by the IPMC. |
| ==== |
| |
| Mailing lists creation is a task for the link:#who-infra[infrastructure team]. The |
| infrastructure team offers a tool that simplifies the creation of mailing lists. You can access the |
| link:https://selfserve.apache.org/mail.html[Incubator Mailing List Request Form^] |
| to request a list. A notification will be sent to private@incubator when the lists have been created. |
| |
| Remember to update the project status file with mailing list details. Prospective committers |
| and mentors will need to subscribe. Email them once the status file has been updated. Inform |
| any existing mailing lists or forums previously used by the project. |
| |
| Once the *commits* list is created, the project MUST review |
| the */incubator/${podling}* tree, since any commits made prior |
| to the list's creation will have generated no email trail. |
| |
| ==== Mail Archives |
| |
| Archives at link:http://mail-archives.apache.org[http://mail-archives.apache.org] for the public |
| mailing lists will be setup as part of the mailing list creation process. No action is |
| required by Mentors. The archives will be link:http://mail-archives.apache.org/mod_mbox/[visible] |
| as soon as posts have been made (and moderated) to these lists. |
| |
| You can also leverage link:https://lists.apache.org[lists.apache.org^] for |
| mailing list archives. There is a login link in the top right corner, which allows you to respond to |
| threads from within the web application. |
| |
| Many projects are independently archived externally (for example, at |
| link:http://www.mail-archive.com/[The Mail Archive] and |
| link:http://marc.info/?q=about[MARC]) |
| Independent archives help to |
| increase project visibility as well as preserving a independent historic record. |
| These subscriptions are not automatically created. If desired, subscribe manually. |
| |
| Subscriptions to news-to-mailing-list bridges (for example, link:http://www.nabble.com[Nabble]) |
| must also be created manually. Subscribing helps accessibility and visibility but Nabble news |
| users may not be aware that they are posting to a mailing list. |
| |
| ==== Mailing List Administration |
| |
| Apache uses link:http://www.ezmlm.org/[ezmlm]. See the |
| link:http://www.ezmlm.org/man/ezmlmman.html[manual] and |
| committer link:http://www.apache.org/dev/committers.html#mail[mail FAQ] |
| for more details. |
| |
| ==== Mailing List Transition |
| |
| Independent mailing lists and groups are perfectly acceptable but development should |
| happen on the official mailing lists at Apache. If a project has existing mailing lists, |
| forums or groups the community needs to consider their future and plan for the transition |
| to the official Apache mailing lists. |
| |
| It may be useful to move development first to the official lists followed gradually |
| by the user resources. |
| |
| Note that subscribers of external mailing lists will not be automatically subscribed |
| to the new Incubator project mailing lists. Instead, a note should be posted to the |
| old external mailing list asking them to subscribe to the new list. If possible, add |
| a footer to the old mailing list with some instructions. |
| |
| === Self Service Requests |
| |
| Most of the resources you will request can be done via Self Service. To do that, visit https://selfserve.apache.org/ and request the necessary resources. This includes git, mailing lists, JIRA and Confluence. If you do not have access to Self Serve, please use link:https://issues.apache.org/jira/browse/INFRA[JIRA] instead. |
| |
| ==== JIRA Issue Tracking |
| |
| To request JIRA, visit https://selfserve.apache.org/jira.html |
| |
| ==== Other Issue Trackers |
| |
| Request an issue tracker on the link:https://issues.apache.org/jira/browse/INFRA[infra jira] |
| |
| Remember to post an email announcing that the issue tracker is available. |
| |
| === Git Migrations |
| |
| To request a git migration, please file a link:https://issues.apache.org/jira/browse/INFRA[New Git Repository] infra ticket, requesting to migrate from an existing organization to the Apache Organization |
| |
| === Gitbox Requests |
| |
| To request gitbox repositories for a new podling, please first file a link:https://issues.apache.org/jira/browse/INFRA[GitBox Integration] infra ticket. Once your podling has been added, you can use link:https://gitbox.apache.org/ to manage your gitbox repositories and user information. |
| |
| == Podling Bootstrap |
| |
| Following podling creation, it needs to be bootstrapped. Here are some of the tasks: |
| |
| * Ensure link:#mentors-ipmc[Mentors are on the IPMC] |
| * Add podling to link:#Sending+in+an+Incubation+Report[reporting schedule] |
| * link:#Initialize+Podling+Status+Page[Initialize project status page] |
| * Start link:#orientation[orientation] link:#who-committers[Prospective committers] |
| * Start *CLA* and *CCLA* submission link:#who-committers[Prospective committers] |
| * Request Required Resources |
| ** link:#request-mailing-lists[Mailing Lists] |
| *** Consider and plan link:#transition-mailing-lists[transition to official mailing lists] |
| *** Ensure all PPMC members are signed up to teh private mailing list |
| ** link:#request-issue-tracking[Issue Tracking] |
| *** Consider and plan link:#issue-tracking-transition[issue tracking transition] |
| * link:#create-website[Create website] link:#who-committers[Prospective committers] |
| ** Consider and plan link:#web-site-transition[web site transition] |
| * Start link:#initial-ip-clearance[IP Clearance] |
| * Start *SGA* submission |
| ** link:#Set+Up+Repository[Transfer Repos] |
| |
| == Mentors MUST be on the IPMC |
| |
| Mentors link:/policy/incubation.html#Mentor[MUST] be on the IPMC. This should be checked prior to beginning incubation. |
| Any prospective Mentors who are not yet on the IPMC should ask to be added (by election). |
| Email the application to *private@incubator.apache.org*. |
| |
| [NOTE] |
| ==== |
| This process may take a few days. |
| ==== |
| |
| == CLA and CCLA Submission |
| |
| Prospective committers need to submit a Contributor License Agreement |
| (link:http://www.apache.org/licenses/#clas[CLA]). |
| This process can take a while so it is recommended that committers start to submit |
| these as soon as the podling is accepted. |