Linux インスタンスが Amazon Linux 2 か Red Hat Enterprise Linux 7 かを判断する最善の方法を見つけようとしています。
私はConditionArchitecture
テストを見ていましたが、十分に細かくなっていないようです。もう 1 つのルートはConditionPathExist
、AL2 と RHEL7 の間の一意のパスを使用して見つけようとすることです。
[Unit]
Description=CloudPassage Halo Agent Configuration
After=network-online.target network.service
Before=cphalod.service
ConditionFileNotEmpty=!/opt/cloudpassage/data/store.db.vector
[Service]
Type=oneshot
ExecStart=/opt/cloudpassage/bin/configure --agent-key=XXXXXXXXXXXXXXXXXXXXXX --tag=XXX-XXX-XXX --proxy=proxy:3128 --dns=false
[Install]
WantedBy=multi-user.target
基本的に、ユニットの最終版のサービス セクションに、AL2 が 1 つのエージェント キーとタグを使用する場合、RHEL7 の場合は別のエージェント キーとタグを使用するという条件ステートメントを追加したいと考えています。誰かが似たようなことをしましたか?SOの周りを検索してみましたが、私のようなシナリオでは何も見つかりませんでした。ユニットファイルではなく、より良い方法がある場合は、提案を受け付けています。