推奨する開発環境を以下に示す。
- Ubuntu 24.04 LTS
- Python 3.12.3 or higher
- Docker Engine 27.3.1 or higher
開発環境の具体的な構築方法を以降の節で説明する。
Pythonのvenvモジュールを使用するため、次のコマンドを実行して必要なパッケージをインストールしておく。
sudo apt install python3-venvローカルリポジトリのルートに移動して、このプロジェクト用にPythonの仮想環境を作成する。仮想環境名は .venv とする。
python3 -m venv .venv作成した仮想環境は、次のコマンドでアクティブにできる。
source .venv/bin/activate仮想環境がアクティブな状態で、python と pip のバージョンを確認する。
python -V
# pythonのバージョンが表示される
pip -V
# pipのバージョンとパスが表示される必要なパッケージを仮想環境に対してインストールする。
pip install -r requirements.txt
# CLIツールのビルドに必要なため追加する
pip install pyinstallerInstall Docker Engine on Ubuntuの指示にしたがって、Docker Engineをインストールする。
インストール完了後に、hello-world イメージを起動して動作を確認する。
sudo docker run hello-worldセットアップが正しく完了している場合は、以下と同様なメッセージが出力される。
Hello from Docker!
This message shows that your installation appears to be working correctly.
# 以下省略sudoを指定せずに docker コマンドを実行したい場合は、カレントユーザを dockerグループに追加する。
sudo usermod -aG docker $USER
newgrp docker設定した結果が有効であることを確認する。もしうまくいかない場合は一度ログアウトして再度実行してみる。
docker run hello-world
Linux向けのCLIツールをビルドする場合は、次のコマンドを実行する。 Pythonの仮想環境がアクティブであることを確認すること。
./build-cli.shビルドが成功すると、中間ファイルが build ディレクトリに、実行ファイルが dist ディレクトリに出力される。
実行ファイルを起動すると Usage がコンソールに表示される。
dist/batch-shipyard-<version>-cli-linux-x86_64Azure Batchの開始タスクで使用されるため、少なくとも以下の2つのDockerイメージをビルドする必要がある。
- shipyard-cargo
- shipyard-cascade
次のコマンドを実行して shipyard-cargo イメージをビルドする。
cd cargo
docker image build <レジストリ名>/shipyard-cargo:<バージョン> .
cd ..同様に次のコマンドを実行して shipyard-cascade イメージをビルドする。
cd cascade
docker image build -f Dockerfile.docker -t <レジストリ名>/shipyard-cascade:<バージョン .
cd ..ビルドした2つのイメージがローカルに追加されたことを確認する。
docker image ls
バージョン番号は以下のファイルに記載されている。リリース時に変更すること。
ファイルパス: convoy/version.py
__version__ = '4.0.0-rc.2'