Quickstart pour le commit upstream

Voici une synthèse des étapes nécessaires pour commencer à committer du code sur OpenStack.

Compte

Dans un premier temps il faut se créer un compte sur le launchpad, signer la licence individuelle des contributeurs et uploader sa clé SSH.

Il faut également être membre de la fondation OpenStack, le lien est fait sur l’email, donc il faut donner le même de chaque coté.

Il reste à paramétrer git si ce n’est pas déjà fait :

git config --global user.name "Firstname Lastname"
git config --global user.email "your_email@youremail.com"
git config --global gitreview.username yourgerritusername
sudo apt-get install git-review
sudo apt-get install python-pip

Devstack

Devstack sera nécessaire pour la partie test en relation avec les autres stack du projet.

git clone https://github.com/openstack-dev/devstack.git

Ensuite il faut paramétrer local.conf. Voici un exemple simple :

[[local|localrc]]
ADMIN_PASSWORD=mypassword
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
SERVICE_TOKEN=a682f596-76f3-11e3-b3b2-e716f9f80e50
FIXED_RANGE=172.16.200.0/24
NETWORK_GATEWAY=172.16.200.1
FLOATING_RANGE=192.168.200.0/24
PUBLIC_NETWORK_GATEWAY=192.168.200.1
HOST_IP=192.168.1.12
disable_service n-net
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
enable_service neutron
# Optional, to enable tempest configuration as part of devstack
RECLONE=yes

# Swift
enable_service tempest s-proxy s-object s-container s-account
SWIFT_HASH=66a3d6b56c1f479c8b4e70ae5c2000f5
SWIFT_REPLICAS=1
SWIFT_DATA_DIR=$DEST/data/swift

Pour valider la configuration, on lance le script de déploiement.

./stack.sh

Travailler sur un projet

Nous allons prendre comme exemple Swift. On commence par puller le dépôt officiel et faire la configuration associée à Gerrit.

mkdir ~/my_swift
cd ~/my_swift
git clone git://git.openstack.org/openstack/swift.git .
git review -s
git checkout -b my_swift

Comme on vient de créer un « nouveau swift », on va dire a devstack ou il se trouve en éditant local.conf.

SWIFT_REPO=/opt/stack/my_swift
SWIFT_BRANCH=my_swift

Tests

Les tests unitaires se font avec tox et les tests d’intégration se font avec devstack.

Commit

Le commit se fait comme d’habitude, il faut simplement veiller à bien avoir un Change-Id (–amend) puis pousser le commit pour le review.

git commit -a
git commit --amend
git review

Et le résultat en image :

commit-OS

Plus d’info

Toutes ces informations sont tirées de wiki.openstack.org :

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *