Project creation via INFO file docs 86/62386/15
authorAric Gardner <agardner@linuxfoundation.org>
Fri, 22 Nov 2019 21:02:57 +0000 (16:02 -0500)
committerAric Gardner <agardner@linuxfoundation.org>
Mon, 31 Aug 2020 19:25:23 +0000 (15:25 -0400)
JIRA: RELENG-1027
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
Change-Id: I87af7649e1ef4b3c2cc5e2326bec49fe4fbccd92

docs/index.rst
docs/project-creation.rst [new file with mode: 0644]

index d1e5f54..97eb1a0 100644 (file)
@@ -36,6 +36,7 @@ Self-Service:
    :maxdepth: 1
 
    committer-management
+   project-creation
 
 Tools:
 
diff --git a/docs/project-creation.rst b/docs/project-creation.rst
new file mode 100644 (file)
index 0000000..609e1a4
--- /dev/null
@@ -0,0 +1,70 @@
+.. _project-creation:
+
+#######################
+Project Creation (BETA)
+#######################
+
+
+Introduction
+============
+
+Self serve project creation: To reduce administrator time spent on
+project creation automation is in place. Submitting and merging an INFO.yaml
+file for a new Gerrit repository now creates the project and its related resources.
+
+Quick Start
+===========
+
+To drive Self-serve Project creation submit an INFO.yaml for approval in the
+correct location in the Linux Foundation's info-master repository.
+
+Determine the correct location via path in the info master repository.
+
+At the top level the info-master repo is a collection of directories,
+each for a Gerrit site.
+
+Inside these are the top level projects, and then their child projects and so on.
+
+The following example is for a Gerrit named gerrit.example.org and a project
+named example-parent/example-child
+
+An example of a parent and child:
+gerrit.onap.org/ccsdk/dashboard
+Where ccsdk is the parent and dashboard is the child.
+
+Correct clone options for your LFID will be available here:
+.. _info-master:  https://gerrit.linuxfoundation.org/infra/admin/repos/releng/info-master
+
+Example of cloning the info-master repo and creating a new repo
+"example-parent/example-child" on gerrit.example.org
+
+.. code-block:: bash
+
+    git clone ssh://LFID@gerrit.linuxfoundation.org:29418/releng/info-master
+    cd info-master/gerrit.example.org/example-parent/
+    mkdir example-child/ && cd example-child
+
+We are now in an empty directory whose name matches the repository we are creating.
+We must create an INFO.yaml file in this directory and submit it for review.
+We have created an optional helper to expediate this step, it makes creating and INFO.yaml file
+quicker and less error prone.
+
+.. code-block:: bash
+
+    lftools infofile create-info-file gerrit.example.org example-parent/example-child --empty --tsc_approval "https://link.to.meeting.minutes" > INFO.yaml
+
+We must now pause and fill out the empty sections on the INFO.yaml
+
+.. code-block:: bash
+
+    vim INFO.yaml #(add committers and lead)
+    tox #(check that you have entered valid yaml)
+    git add INFO.yaml
+    git commit -sv
+    git review
+
+.. note::
+
+   An LF staff will be automatically added to review your change.
+   If the --tsc_approval link checks out and the verify job passes
+   your project creation will happen on the merge of your patch set.