Developer Documentation: Difference between revisions
No edit summary |
(Replace outdated kernel version with pve manager as example) |
||
Line 25: | Line 25: | ||
retrieve project : | retrieve project : | ||
<source lang="bash"> | <source lang="bash"> | ||
# git clone git://git.proxmox.com/git/pve- | # git clone git://git.proxmox.com/git/pve-manager.git | ||
</source> | </source> | ||
update project to last version : | update project to last version : |
Revision as of 08:47, 26 January 2016
Introduction
Please coordinate your efforts with us before starting any development. It is important to have a common view of the problem and the corresponding solution – just to avoid duplicated or unnecessary efforts.
We will only include software which matches our quality criteria. The source code repository is read only. To include some code, send it as patch (git diff) to the pve-devel mailing list. We will review your code and commit after a successful review (and possible corrections/addition).
Mailing List
This is the primary communication channel for developers, discussing new features and implementation details. If you are a developer and you want to development additional features, this is the place to start.
PVE Development List: http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
Archive: http://pve.proxmox.com/cgi-bin/mailman/private/pve-devel/
Access to Code Repository (git)
Build instructions
You could find build instruction here :
https://git.proxmox.com/?p=pve-common.git;a=blob_plain;f=README.dev;hb=HEAD
Git commands summary
retrieve project :
# git clone git://git.proxmox.com/git/pve-manager.git
update project to last version :
# git pull
If you want to make some patches :
Create a local branch:
# git checkout -f -b my_branch master
Do some code modifications.
Then, make your commit (try to make small commits) :
# git commit -a
When you have finished your modifications, create patches :
# git format-patch -o /tmp/ --signoff master..my_branch
Then send your patchs to pve-devel@pve.proxmox.com (git-email package has to be installed and configured) with a short description in the email body
# git send-email --to=pve-devel@pve.proxmox.com --compose /tmp/00* --subject="What this patch for"
Proxmox VE 2.0 API Clients
php : https://github.com/CpuID/pve2-api-php-client
perl : http://search.cpan.org/~djzort/Net-Proxmox-VE-0.006/
python: https://github.com/remofritzsche/proxmox-utils
python: https://github.com/Daemonthread/pyproxmox
java: https://github.com/Elbandi/pve2-api-java
nodejs: https://www.npmjs.org/package/proxmox
Bugtracker (bugzilla)
Software License and Copyright
We only include code licensed under GNU Affero General Public License, version 3 http://www.gnu.org/licenses/agpl-3.0.html.
Additionally we ask contributors to send us a contributor license agreement form by email. This agreement establishes a relationship between us and the contributor, gives details on what it means when the contributor grants permission for their work to be included in a project, and enables us to be better stewards of these projects.
With the contributor agreement chosen by Proxmox, the Harmony CLA, the contributor gives Proxmox a license to use their contributions. The contributor continues to own the copyright in the contribution, with full rights to re-use, re-distribute, and continue modifying the contributed code, allowing them to also share that contribution with other projects.
We've tried to keep the agreement as simple and comprehensible as possible. It comes in two flavors, one for individual contributors and one for entities contributors (companies, foundations, or other organizations).
If you are making a contribution that is not your work (for example, a patch or library written by someone else), please contact office@proxmox.com for guidance on whether any additional steps are needed.