2019/10/25 平見知久
システム設定のインポートとエクスポートを使って設定を変更する
OTRSで設定を変更する際、小さな変更ならいいのですが大幅な変更を行う場合Webの管理画面からの変更が面倒な場合がたまにあります。
たとえばリストで2,30項目あった場合にその順番を入れ替えたり、多数の項目を追加したいといった場合などです。
こういった場合には設定のエクスポートとインポートを使うことで比較的簡単に修正を行うことができます。
例として、システム設定TimeVacationDays::Calendar1を編集する場合で説明します。
まず、内容は何でもいいので項目の変更を行い、デプロイします。
これは設定のエクスポート機能では修正した設定のみが書き出されるためです。すでに何かしらの修正を行っている場合には不要です。
設定の左側にグレーの縦帯がついていることを確認してください。
この状態で、システム設定の「インポート&エクスポート」を選択し、「現在の設定をエクスポート」を押します。
するとブラウザでExport_Current_System_Configuration.ymlというファイルをダウンロードされます。
このファイルには、OTRSのデフォルト設定から変更した設定全てが記載されています。
ファイルの拡張子ymlとなっていますが、YAML形式と呼ばれるフォーマットとなっています。
内容はテキストファイルですので適当なテキストエディタで開くことができます。
もし日本語が化ける場合にはサクラエディタ等、UTF-8が扱えるエディタを使用してみてください。
YAML形式では行頭のスペースの個数でネストを表現します。頭のスペースが2つの項目がOTRSの設定名に対応しています。
先頭の「—」と2行目の「Modified:」はそのままで、エディタでTimeVacationDays::Calendar1を検索し、間の内容は削除してしまいます。
また、TimeVacationDays::Calendar1の後ろの行に設定がまだ存在している場合には末尾も削除してしまってください。
この状態から値を編集していきます。EffectiveValue:の行からが実際の値になりますので適宜変更します。
他の項目については変更する必要がありませんのでそのままにしておいてください。
繰り返しになりますがYAML形式では行頭のスペースの個数が意味を持ちますので、行頭のスペースを足したり消したりはしないでください。
編集が終わったらエディタで保存し、OTRSの「インポート&エクスポート」で今度は編集したファイルを選択し、「システム設定をインポート」を押します。
形式が正しければ、デプロイ画面が表示されますので、確認して「選択された変更をデプロイ」ボタンを押して変更を反映します。
…いかがだったでしょうか?
YAML形式ということで慣れがやや必要ですが、応用することで複数の設定を一度に変更したり、テキストファイルであることを利用してGitやSubversion等で設定変更のバージョン管理を行ったりといったことも可能です。また、元のファイルをコピー(バックアップ)しておけば元に戻すことも簡単に行えます。
単純な設定なら画面で行っても十分ですが、順序を入れ替えたり複数項目を足したりといったときにはうまく使うと楽に変更を行うことができます。
機会があればぜひお試しください。
※記事はOTRS版で記載していますが、OTOBO版でも同じです。(2021年11月19日現在)