Aller au contenu

Déploiement de projet VCS par CLI

Référence ligne de commande pour créer, mettre à jour et éditer les projets VCS sur Stack Harbor PaaS — méthodes createproject, update, editproject et leurs paramètres.

Le CLI de la plateforme expose chaque action de déploiement VCS disponible dans le tableau de bord. Cette page couvre les trois méthodes principales — createproject, update et editproject — et les paramètres acceptés par chacune. Ensemble, elles couvrent le cycle de vie d’un déploiement basé sur VCS, de l’enregistrement aux mises à jour et reconfigurations.

Pour installer le CLI lui-même, voir l’aperçu CLI de la plateforme.

Créer un nouveau projet VCS

Pour enregistrer un nouveau projet VCS et le préparer au déploiement :

~/jelastic/environment/vcs/createproject \
  --envName  {env_name} \
  --type  {type} \
  --context  {context} \
  --url  {url} \
  [--branch  {branch}] \
  --autoupdate {true/false} \
  [--interval  {interval}] \
  --autoResolveConflict {true/false} \
  --zdt {true/false}

Paramètres principaux :

  • {env_name} — nom de l’environnement cible.
  • {type} — type VCS. Soit git soit svn. Pour Git, fournir aussi {branch} pour pointer la version voulue.
  • {context} — chemin de contexte pour le nouveau projet.
  • {url} — URL du dépôt.

Drapeaux optionnels :

  • --autoupdate {true/false} — active l’auto-déploiement périodique. Si true, fournir aussi {interval} pour la fréquence d’interrogation en minutes.
  • --autoResolveConflict {true/false} — correspond à l’option Auto-resolve conflicts du tableau de bord. Quand true, les modifications locales sur le serveur applicatif sont écartées au profit de la version du dépôt à chaque mise à jour.
  • --zdt {true/false} — active le déploiement zéro interruption pour les serveurs applicatifs PHP.

Authentification de dépôt privé

Pour un dépôt privé, ajoutez les paramètres d’authentification à la même commande :

[--login  {login}] [--password  {password}] [--keyId  {keyId}]
  • {login} — requis pour l’authentification par mot de passe et par clé SSH ; identifiant du compte VCS.
  • {password} — pour l’authentification par mot de passe.
  • {keyId} — pour l’authentification par clé SSH ; nom de la clé SSH privée enregistrée dans le tableau de bord. La clé SSH publique appariée doit être attachée au dépôt.

Après exécution, la réponse confirme la création du projet et restitue les paramètres configurés. Les mêmes options sont visibles si vous basculez vers le tableau de bord et cliquez sur Edit sur l’entrée du nouveau projet.

Déployer ou redéployer un projet VCS

Une fois le projet créé, exécutez la méthode update pour le déployer la première fois, ou pour redéployer manuellement après un changement de code :

~/jelastic/environment/vcs/update \
  --envName  {env_name} \
  --context  {context}

Utilisez le même {env_name} et {context} que dans createproject. Les appels suivants redéploient le projet selon l’état courant du dépôt.

Éditer un projet VCS existant

Pour changer la configuration d’un projet enregistré — changer de branche, modifier l’intervalle d’interrogation, basculer l’auto-résolution — utilisez editproject :

~/jelastic/environment/vcs/editproject \
  --envName  {env_name} \
  --type  {type} \
  --oldcontext  {oldcontext} \
  --newcontext  {newcontext} \
  --url  {url} \
  [--branch  {branch}] \
  --autoupdate {true/false} \
  [--interval  {interval}] \
  --autoResolveConflict {true/false} \
  --zdt {true/false}

La plupart des paramètres correspondent à createproject. Les deux qui diffèrent :

  • {oldcontext} — nom du contexte de projet existant à changer.
  • {newcontext} — nouveau contexte. Requis même s’il est identique à {oldcontext}.

editproject met à jour seulement la configuration du projet. Pour appliquer les nouveaux paramètres à un déploiement en exécution, appelez update ensuite.

Modèles d’usage courants

Enregistrer et déployer en une session shell

~/jelastic/environment/vcs/createproject \
  --envName my-app \
  --type git \
  --context ROOT \
  --url https://github.com/example/my-app.git \
  --branch main \
  --autoupdate true \
  --interval 5 \
  --autoResolveConflict true \
  --zdt false

~/jelastic/environment/vcs/update --envName my-app --context ROOT

Basculer un projet vers une nouvelle branche

~/jelastic/environment/vcs/editproject \
  --envName my-app \
  --type git \
  --oldcontext ROOT \
  --newcontext ROOT \
  --url https://github.com/example/my-app.git \
  --branch release-2.0 \
  --autoupdate true \
  --interval 5 \
  --autoResolveConflict true \
  --zdt false

~/jelastic/environment/vcs/update --envName my-app --context ROOT

Voir aussi