2016-02-19 3 views
2

Une application Web est généralement constituée de code, de configuration et de données. Le code peut souvent être rendu open source sur GitHub. Mais la configuration par instance et les données peuvent contenir des secrètes, elles sont donc inappropriées être enregistrées dans GH. Les données peuvent être importées dans un stockage persistant, donc ne tenez pas compte pour le moment. En supposant que les configs sont basés sur des fichiers et enregistrés dans un autre dépôt SVN privé sécurisé, afin de déployer l'application Web sur OpenShift et implémenter CI, je dois fusionner les fichiers de configuration avec le code avant d'exécuter les scripts de construction. De plus, la stratégie de construction devrait prendre en charge les webhooks de GH pour la construction automatisée.Stratégie de génération OpenShift S2I à partir de plusieurs sources de données

Mes questions sont, pour être plus précis:

  1. Est-ce que OS buildconfig en charge plusieurs sources de données, en particulier de svn?
  2. Si non, comment déployer une telle application Web pour OS?
+0

Avez-vous regardé la fonction 'secrets' de OpenShift? https://docs.openshift.com/enterprise/3.0/dev_guide/secrets.html –

+0

Plusieurs sources d'entrée ont été demandées mais ne sont pas implémentées. Vous pouvez donc combiner le code source et les secrets et le contenu de l'image, mais pas plusieurs emplacements de code source . Vous pouvez utiliser un sous-module Git, mais dans ce cas, l'utilisation de Jenkins est logique. Assurez-vous de vérifier le plugin OpenShift Jenkins https://wiki.jenkins-ci.org/display/JENKINS/OpenShift+Pipeline+Plugin – Clayton

Répondre

1

La solution que je suis venu avec à ce jour:

  1. Au lieu de compter sur OS pour CI, utilisez Jenkin à la place.
  2. Fusionnez les fichiers de configuration avec le code en utilisant Jenkins.
  3. Au lieu d'utiliser le type de source Git dans buildconfig, utilisez binary source à la place
  4. Laissez jenkins courir oc start-build --from-dir=<directory> <directory> contient du code fusionné/config