Я работаю над небольшим скриптом, чтобы взять некоторые переменные, packageName, newVersion. Я погуглил и попробовал очень много, и это заставляет меня спрашивать.
Сценарий выполняется как: updatePackage.sh -p weblogic-pkg-1 -v 2.0.1-B3
Это гласит:
## Weblogic Deployment
   'weblogic-pkg-1':
     ensure:            'present'
     deploymenttype:    'AppDeployment'
     versionidentifier: '2.0.0-B2'
     timeout:           60
     stagingmode:       "nostage"
     remote:            "1"
     upload:            "1"
     target:
       - "%{hiera('package_clustername')}"
     targettype:
       - 'Cluster'
     localpath:         '/opt/releases/staging/applications/weblogic-pkg-1/weblogic-pkg-1-2.0.0-B2.war'
Я пытаюсь заставить скрипт изменить номер версии, когда он соответствует пакету, поэтому желаемый результат:
## Weblogic Deployment
   'weblogic-pkg-1':
     ensure:            'present'
     deploymenttype:    'AppDeployment'
     versionidentifier: '2.0.1-B3'
     timeout:           60
     stagingmode:       "nostage"
     remote:            "1"
     upload:            "1"
     target:
       - "%{hiera('package_clustername')}"
     targettype:
       - 'Cluster'
     localpath:         '/opt/releases/staging/applications/weblogic-pkg-1/weblogic-pkg-1-2.0.1-B3.war'
В файле YAML содержится около 50 пакетов, поэтому я не могу просто с сожалением сказать о sed /version /newVersion. Система также довольно заблокирована, поэтому добавить в ОС парсер yaml может быть сложно.
Какие-нибудь советы?
Спасибо
Дейв
