summaryrefslogtreecommitdiffstats
path: root/docs/guides/onap-developer/contribution/setting-up-environment.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/guides/onap-developer/contribution/setting-up-environment.rst')
-rw-r--r--docs/guides/onap-developer/contribution/setting-up-environment.rst164
1 files changed, 164 insertions, 0 deletions
diff --git a/docs/guides/onap-developer/contribution/setting-up-environment.rst b/docs/guides/onap-developer/contribution/setting-up-environment.rst
new file mode 100644
index 000000000..341279b99
--- /dev/null
+++ b/docs/guides/onap-developer/contribution/setting-up-environment.rst
@@ -0,0 +1,164 @@
+.. This work is licensed under a Creative Commons Attribution 4.0
+.. International License. http://creativecommons.org/licenses/by/4.0
+.. Copyright 2020 Nokia.
+
+Setting up environment
+======================
+
+This chapter is based on the `Git Guide <https://docs.releng.linuxfoundation.org/en/latest/git.html>`_
+and the `Gerrit Guide <https://docs.releng.linuxfoundation.org/en/latest/gerrit.html>`_
+in the Linux Foundation Releng Documentation.
+
+Prerequisites
+~~~~~~~~~~~~~
+
+Before you start, you should have an LFID account (sign up
+`here <https://identity.linuxfoundation.org/>`_).
+
+Installing git
+~~~~~~~~~~~~~~
+
+1. Install Git.
+
+ For Debian based systems:
+
+ .. code-block:: bash
+
+ sudo apt-get install git -y
+
+
+ For rpm based systems:
+
+ .. code-block:: bash
+
+ sudo dnf install git -y
+
+
+ For MacOS systems, install `homebrew <http://brew.sh>`_ and install Git
+
+ .. code-block:: bash
+
+ brew install git
+
+.. note:: For more information on git, see the `Git Guide <https://docs.releng.linuxfoundation.org/en/latest/git.html>`_ in the Linux Foundation Releng Documentation.
+
+Configure Git
+~~~~~~~~~~~~~
+
+1. Set the author name or email used to sign off a commit with the following commands.
+
+.. code-block:: bash
+
+ git config --local user.name "Your Name"
+ git config --local user.email yourname@example.com
+
+.. note:: Your name and e-mail address (including capitalization) must match the one you entered when creating your LFID account.
+
+2. Optionally, change the Git commit editor to your preferred editor, for example, vim.
+
+.. code-block:: bash
+
+ git config --global core.editor "vim"
+
+Installing git-review
+~~~~~~~~~~~~~~~~~~~~~
+
+1. Install git-review.
+
+.. code-block:: bash
+
+ pip install git-review
+
+.. note:: If you don’t have pip installed already, follow the `installation documentation <https://pip.pypa.io/en/stable/installation/>`_ for pip.
+
+Setting up gerrit
+~~~~~~~~~~~~~~~~~
+
+Setting SSH keys
+----------------
+
+1. Generate SSH keys.
+
+ For OpenSSH 8.7 or older versions:
+
+ .. code-block:: bash
+
+ ssh-keygen -t rsa
+
+ For OpenSSH 8.8 or later versions, either use ed25519 or ECDSA algorithm to generate ssh keys:
+
+ .. code-block:: bash
+
+ ssh-keygen -t ed25519
+
+ or
+
+ .. code-block:: bash
+
+ ssh-keygen -t ECDSA
+
+ .. note:: OpenSSH 8.8+ disables RSA signatures using the SHA-1 hash algorithm by default, which may cause authentication problem when pull/push code. You can either specify the encrypt algorithm or re-enable the RSA/SHA1 in ~/.ssh/config file to solve the issue. For more information, please refer to `OpenSSH Release Notes <https://www.openssh.com/releasenotes.html>`_.
+
+ Your public key is now available as .ssh/id_rsa.pub or .ssh/id_ed25519.pub or .ssh/id_ecdsa.pub under .ssh folder.
+
+2. Print the generated key to the terminal and copy it.
+
+.. code-block:: bash
+
+ cat .ssh/id_rsa.pub
+
+3. On the project gerrit page, go to Settings.
+
+.. figure:: https://docs.releng.linuxfoundation.org/en/latest/_images/gerrit-settings.png
+ :alt: Settings page for your Gerrit account
+ :width: 50 %
+
+4. Click **SSH Public Keys** under **Settings**.
+
+5. Click **Add Key**.
+
+6. In the **Add SSH Public Key** text box, paste the contents of your **id\_rsa.pub** file and then click **Add**.
+
+.. figure:: https://docs.releng.linuxfoundation.org/en/latest/_images/gerrit-ssh-keys.png
+ :alt: Adding your SSH key
+ :width: 50 %
+
+Setting up CLA as an individual contributor
+-------------------------------------------
+
+1. Navigate to **Settings** — the gear icon on the upper right corner, and click **Agreements** from the menu on the left:
+
+.. figure:: https://raw.githubusercontent.com/communitybridge/docs/master/.gitbook/assets/settings-icon.png
+
+.. figure:: https://raw.githubusercontent.com/communitybridge/docs/master/.gitbook/assets/agreements.png
+
+2. Click **New Contributor Agreement**.
+
+.. figure:: https://raw.githubusercontent.com/communitybridge/docs/master/.gitbook/assets/agreement-link.png
+
+3. New Contributor Agreement types appear:
+
+.. figure:: https://raw.githubusercontent.com/communitybridge/docs/master/.gitbook/assets/new-contributor-agreement.png
+
+4. Choose the Individual CLA option.
+
+.. figure:: CLA_types.png
+
+5. Click the **Please review the agreement link** and then click the message link that appears:
+
+.. figure:: https://raw.githubusercontent.com/communitybridge/docs/master/.gitbook/assets/cla-gerrit-icla-proceed-to-sign-cla.png
+
+6. Sign in to EasyCLA if you are prompted.
+
+7. Select **Company**.
+
+.. note:: To contribute to this project, you must be authorized under a signed Contributor License Agreement. You are contributing on behalf of your work for a company.
+
+If any further prompts appear, follow the steps described at the below links:
+
+- `Individual Contributor <https://docs.linuxfoundation.org/v2/easycla/contributors/individual-contributor#gerrit>`_
+- `Corporate Contributor <https://docs.linuxfoundation.org/v2/easycla/contributors/corporate-contributor#gerrit>`_
+
+8. Complete the form and click **SEND**.
+
+The CCLA manager signs a Corporate CLA and adds you to the approved list.