|
| 1 | +# Contribute to GitLab recipes |
| 2 | + |
| 3 | +This guide details how to use issues and pull requests to improve GitLab recipes. |
| 4 | + |
| 5 | +Please stick as close as possible to the guidelines. That way we ensure quality guides |
| 6 | +and easy to merge requests. |
| 7 | + |
| 8 | +Your Pull Request will be reviewed by one of our devs/volunteers and you will be |
| 9 | +asked to reformat it if needed. We don't bite and we will try to be as flexible |
| 10 | +as possible, so don't get intimidated by the extent of the quidelines :) |
| 11 | + |
| 12 | +For better maintainance and clarity, some naming guidelines should be followed. |
| 13 | +See details in each section below. |
| 14 | + |
| 15 | +## Pull Request title |
| 16 | + |
| 17 | +Try to be as more descriptive as you can in your Pull Request title. |
| 18 | + |
| 19 | +Particularly if you are submitting a new script or guide, include in the title, |
| 20 | +information about GitLab version, OS tested on and any other relevant info. |
| 21 | + |
| 22 | +For example some good titles would be: |
| 23 | + |
| 24 | +* [Installation script] GitLab 6.x - Ubuntu 12.04 - Apache |
| 25 | +* [Guide] GitLab 6.1 - FreeBSD - postrges, rvm |
| 26 | + |
| 27 | +## Guides |
| 28 | + |
| 29 | +Each installation guide has its own namespace and it should be provided in a |
| 30 | +`README` file so that it renders first when viewing the repository. Submit a new |
| 31 | +one in `install/platform/README.md` (it doesn't have to be strictly in markdown though). |
| 32 | + |
| 33 | +## Scripts |
| 34 | + |
| 35 | +Installation scripts reside in `install/platform/scripts/`, so if you have one, |
| 36 | +submit it there. They should named after the following scheme: `platform-platform_version`. |
| 37 | + |
| 38 | +Example: `ubuntu-server-12.04.sh` |
| 39 | + |
| 40 | +You are strongly encouraged to also provide a `README` file that describes |
| 41 | +how to use the script. You may have included all the needed info in the script |
| 42 | +itself (recommended), so you could simply write something between the lines: |
| 43 | + |
| 44 | + > This script installs GitLab 6.0 on Archlinux. Run it with `./archlinux.sh your_domain_name` |
| 45 | + > |
| 46 | + > For more info and variables you can change, read the comments in the script. |
| 47 | +
|
| 48 | + |
| 49 | +### Scripts doing similar things |
| 50 | + |
| 51 | +There is a strong possibility that your script will do similar things to what a |
| 52 | +script already in this repo do. In that case, please work on the existing script |
| 53 | +and enhance it with your changes. No need to duplicate things. |
| 54 | + |
| 55 | +## What information to put on your guide/script etc (mandatory) |
| 56 | + |
| 57 | +If you have an installation guide to provide, fill in the template and place it on top |
| 58 | +of it or include it in your installation script (commented), again on top. Try to |
| 59 | +include as many items of this template as you can. |
| 60 | + |
| 61 | +### Template |
| 62 | + |
| 63 | +``` |
| 64 | +Distribution : |
| 65 | +GitLab version : |
| 66 | +Web Server : |
| 67 | +Init system : |
| 68 | +Database : |
| 69 | +Contributors : |
| 70 | +Additional Notes : |
| 71 | +``` |
| 72 | + |
| 73 | +### Explanation |
| 74 | + |
| 75 | +| Label | Explanation | |
| 76 | +| ---------------- | ------------------------- | |
| 77 | +| Distribution | The official name and version of the platform/distribution, case sensitive. | |
| 78 | +| GitLab version | GitLab version on which the guide/script was tested. | |
| 79 | +| Web Server | The web server used to serve GitLab. May be two-fold, eg. apache with mod_passenger. | |
| 80 | +| Init system | (Optional but recommended) The init system used by the platform if any. Examples: `sysvinit`, `systemd`, `upstart`, `openrc`, etc | |
| 81 | +| Database | The database used for installation. Examples: `mysql`, `postrgres`, `mariadb`. |
| 82 | +| Contributors | Your github username (recommended in order to track you and give credits) or your real name or both. Example of the latter: **thedude (Jeffrey Lebowski)** | |
| 83 | +| Additional Notes | Anything else you want to add. Any deviations form the official guide can be reported here. Eg. using rvm for ruby install, storing in different locations, etc.| |
| 84 | + |
| 85 | + |
| 86 | +### Example |
| 87 | + |
| 88 | +``` |
| 89 | +Distribution : Fedora 19 |
| 90 | +GitLab version : 5.4 |
| 91 | +Web Server : apache with mod_passenger |
| 92 | +Init system : systemd |
| 93 | +Database : mariadb |
| 94 | +Contributors : thedude |
| 95 | +Additional Notes : the script uses rvm to install ruby |
| 96 | +``` |
0 commit comments