Мне нужно обновить файл, используя ansible. В ручном процессе обновления, когда запускается команда редактирования, файл открывается в редакторе, таком как vim, nano et c, где изменения обновляются и сохраняются.
, т. Е. После выполнения следующей команды, временный файл открывается в редакторе, указанном в команде, sudo OC_EDITOR="nano" oc edit configmap/webconsole-config -n openshift-web-console
Обратите внимание, что при каждом запуске команды содержимое открывается в новых временных файлах. После обновления изменений файл сохраняется в контейнере docker.
Поскольку в приведенной выше команде редактор указан как nano
, содержимое файла открывается в редакторе nano с содержимым следующим образом:
# Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
apiVersion: v1
data:
webconsole-config.yaml: |
apiVersion: webconsole.config.openshift.io/v1
clusterInfo:
adminConsolePublicURL: https://console.router.default.svc.cluster.local/
consolePublicURL: https://master.novalocal:8443/console/
masterPublicURL: https://master.novalocal:8443
extensions:
properties: {}
scriptURLs: []
stylesheetURLs:[]
features:
clusterResourceOverridesEnabled: false
inactivityTimeoutMinutes: 0
.
.
.
Здесь stylesheetURLs
необходимо обновить в файле следующим образом:
.
.
scriptURLs: []
stylesheetURLs:
- http://127.0.0.1:30296/css/logo.css
features:
clusterResourceOverridesEnabled: false
.
.
.
Здесь stylesheetURLs
необходимо обновить с отступом, как указано выше, и с отступом другое содержимое должно быть сохранено.
Как этого достичь в ansible playbook?
Дополнительная информация: Цель этого - обновить веб-консоль lo go из okd / openshift 3.11, ссылка: https://docs.okd.io/3.11/install_config/web_console_customization.html