Chapitre 2. Comprendre les configurations de construction


Les sections suivantes définissent le concept de construction, de configuration de construction et décrivent les stratégies de construction primaires disponibles.

2.1. BuildConfigs

La configuration de build décrit une définition de build unique et un ensemble de déclencheurs pour le moment où une nouvelle construction est créée. Les configurations de build sont définies par un BuildConfig, qui est un objet REST qui peut être utilisé dans un POST vers le serveur API pour créer une nouvelle instance.

La configuration de build, ou BuildConfig, se caractérise par une stratégie de build et une ou plusieurs sources. La stratégie détermine le processus, tandis que les sources fournissent sa contribution.

En fonction de la façon dont vous choisissez de créer votre application en utilisant OpenShift Dedicated, un BuildConfig est généralement généré automatiquement pour vous si vous utilisez la console Web ou CLI, et il peut être modifié à tout moment. Comprendre les pièces qui composent un BuildConfig et leurs options disponibles peut vous aider si vous choisissez de modifier manuellement votre configuration plus tard.

L’exemple suivant BuildConfig se traduit par une nouvelle construction chaque fois qu’une balise d’image conteneur ou le code source change:

Définition d’objet BuildConfig

kind: BuildConfig
apiVersion: build.openshift.io/v1
metadata:
  name: "ruby-sample-build" 
1

spec:
  runPolicy: "Serial" 
2

  triggers: 
3

    -
      type: "GitHub"
      github:
        secret: "secret101"
    - type: "Generic"
      generic:
        secret: "secret101"
    -
      type: "ImageChange"
  source: 
4

    git:
      uri: "https://github.com/openshift/ruby-hello-world"
  strategy: 
5

    sourceStrategy:
      from:
        kind: "ImageStreamTag"
        name: "ruby-20-centos7:latest"
  output: 
6

    to:
      kind: "ImageStreamTag"
      name: "origin-ruby-sample:latest"
  postCommit: 
7

      script: "bundle exec rake test"
Copy to Clipboard Toggle word wrap

1
Cette spécification crée un nouveau BuildConfig nommé ruby-échantillon-build.
2
Le champ runPolicy contrôle si les builds créés à partir de cette configuration de construction peuvent être exécutés simultanément. La valeur par défaut est Serial, ce qui signifie que les nouvelles versions s’exécutent de manière séquentielle, pas simultanément.
3
Il est possible de spécifier une liste de déclencheurs, ce qui provoque la création d’une nouvelle version.
4
La section source définit la source de la construction. Le type source détermine la source principale d’entrée, et peut être soit Git, pour pointer vers un emplacement de référentiel de code, Dockerfile, à construire à partir d’un Dockerfile en ligne, ou Binary, pour accepter les charges utiles binaires. Il est possible d’avoir plusieurs sources à la fois. Consultez la documentation pour chaque type de source pour plus de détails.
5
La section stratégie décrit la stratégie de construction utilisée pour exécuter le build. Ici, vous pouvez spécifier une stratégie Source, Docker ou Custom. Cet exemple utilise l’image de conteneur ruby-20-centos7 que Source-à-image (S2I) utilise pour la construction de l’application.
6
Après que l’image du conteneur est construite avec succès, elle est poussée dans le référentiel décrit dans la section de sortie.
7
La section postCommit définit un crochet de construction optionnel.
Retour au début
Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2025 Red Hat