0Pricing
DevOps Bootcamp · レッスン

requirements.yml で Role をインストールする

依存関係を固定して取得します。

「requirements.yml で Role をインストールする」はCoddyKit上の無料DevOps Bootcampレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDevOps Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 DevOps Bootcampコースには全4レッスンが含まれています。

手作業でのインストールをやめる

インストールコマンドを1つずつ実行する方法は、規模が大きくなると対応できません。requirements.ymlファイルにすべての依存関係を一覧化すれば、プロジェクト全体を一度にインストールできます。

依存関係のマニフェスト

requirements.ymlはパッケージマニフェストのようなものです。Playbookの実行に必要なロールとコレクションを正確に宣言します。

rolesの下にロールを一覧化する

ファイル内のrolesキーにはリストを記述します。各項目では、Galaxyから取得するロールをauthor.name形式で指定します。

roles:
  - name: geerlingguy.nginx

コレクションも一覧化する

別のcollectionsキーには、namespace.collection形式の名前でコレクションを一覧化します。これにより、1つのファイルで両方のコンテンツタイプを管理できます。

collections:
  - name: community.general

バージョンを固定する

インストールを再現可能にするため、必ずversionを追加します。指定しないと、チームメンバーのマシンで新しく公開された互換性のないリリースを取得する可能性があります。

roles:
  - name: geerlingguy.nginx
    version: "3.1.4"

すべてを一度にインストールする

-rを使ってansible-galaxyにファイルを渡すと、一覧にあるすべての依存関係を解決し、1つのコマンドでインストールします。

ansible-galaxy install -r requirements.yml

コレクションには別の実行が必要

通常のインストールコマンドはロールを処理します。コレクションには、同じ-rフラグを付けてcollection installサブコマンドを使います。

ansible-galaxy collection install -r requirements.yml

GalaxyだけでなくGitから取得する

ロールの項目では、Galaxyの名前の代わりにsrcのGit URLを使うこともできます。これにより、非公開または未公開のロールをインストールできます。

roles:
  - src: https://github.com/acme/role-app.git
    version: main

インストール先のパスを選ぶ

-pを追加すると、グローバルパスではなくroles/のようなプロジェクト固有のフォルダーにロールを配置できます。各プロジェクトを自己完結させるのに役立ちます。

ansible-galaxy install -r requirements.yml -p roles/

強制的に再取得する

デフォルトでは既存のロールが保持されます。固定したバージョンを更新する際に--forceを渡すと、ロールを再ダウンロードして上書きします。

ansible-galaxy install -r requirements.yml --force

ロールではなくファイルをコミットする

requirements.ymlはGitにコミットし、ダウンロードしたロールのフォルダーは無視します。マニフェストから誰でも同じ構成を正確に再構築できます。

クイックチェック

プロジェクトが依存するすべてのものをインストールする方法を思い出してください。

まとめ

requirements.ymlにロールとコレクションを列挙してバージョンを固定し、ansible-galaxy -rですべてインストールします。1つのファイルで、再現可能な環境を構築できます。📦

よくある質問

「requirements.yml で Role をインストールする」レッスンは無料ですか?

はい。「requirements.yml で Role をインストールする」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、DevOps Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 DevOps Bootcampコースには全4レッスンが含まれています。

「requirements.yml で Role をインストールする」で何を学びますか?

依存関係を固定して取得します。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

DevOps Bootcampを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのDevOps Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「requirements.yml で Role をインストールする」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このDevOps Bootcampレッスンでコードを書いて実行できますか?

はい。すべてのDevOps Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Galaxy における Role と Collection
  2. requirements.yml で Role をインストールする
  3. FQCN の利用:namespace.collection.module
  4. 自作 Role を Galaxy に公開する
← DevOps Bootcampに戻る