プリザンターのバージョンアップ手順(Azure App Service)
## 概要
Azure App Serviceで運用しているプリザンターのバージョンアップ手順です。
## 注意事項
1. 現在運用中のパラメータファイルを最新バージョンに上書きコピーしないでください。最新バージョンで新たに追加したパラメータが失われ、プリザンターが起動しない恐れがあります。
1. Enterprise Editionを使用し項目拡張を実施している場合は、「サポート契約者様向け提供コンテンツ」の「EnterpriseEditionアップグレード済みプリザンターのバージョンアップ手順」に従ってバージョンアップを実施してください。
1.CodeDefiner実行時に/l、/zのパラメータを設定しないでください。
## 前提条件
1. プリザンター 1.3 以前のバージョンから、プリザンター 1.4 以降へバージョンアップする場合、[.NET8のインストール](https://pleasanter.org/manual/install-dotnet)が必要です。
## 手順
バージョンアップ手順は以下の通りです。
1. データベースのバックアップ
1. パラメータファイルのバックアップ
1. プリザンターの準備
1. アプリケーションの準備
1. パラメータ再設定
1. 拡張機能の再設定
1. プリザンターの配置
1. プリザンターの停止
1. アプリケーションの配置
1. CodeDefinerの実行
1. プリザンターの起動確認
## 1. データベースのバックアップ
データベースをバックアップします。**Enterprise Editionにアップグレードし、項目を拡張している場合は必ずバックアップしてください**
[Pleasanter ユーザーマニュアル - FAQ:バックアップ、リストア](https://pleasanter.org/manual?category=5580)
## 2. パラメータファイルのバックアップ
1. パラメータファイルをバックアップします。このバックアップは手順3.2.で使用します。パラメータファイルはマニュアル通りにセットアップした場合、C:\home\sites\wwwroot\Implem.Pleasanter\App_Data\Parameters\配下のjsonファイルとなります。
1. **拡張機能を利用していない場合は本手順は不要です。** 拡張機能で設定したパラメータファイルをバックアップします。このバックアップは手順3.3.で使用します。拡張機能で設定したファイルはマニュアル通りにセットアップした場合、C:\home\sites\wwwroot\Implem.Pleasanter\App_Data\Parameters\配下にある以下サブフォルダ内のファイルとなります。
|サブフォルダ名|拡張機能名|備考|
|:---|:---|:---|
|CustomDefinitions|[拡張項目](/ja/manual/extended-column)|組織、グループ、ユーザに項目を追加した際に生成されるフォルダ|
|ExtendedFields|[拡張フィールド](/ja/manual/extended-fields)||
|ExtendedHtmls|[拡張HTML](/ja/manual/table-management-extended-html)||
|ExtendedNavigationMenus|[拡張ナビゲーションメニュー](/ja/manual/extended-navigationmenus)||
|ExtendedScripts|[拡張スクリプト](/ja/manual/extended-script)||
|ExtendedServerScripts|[拡張サーバスクリプト](/ja/manual/extended-server-script)||
|ExtendedSqls|[拡張SQL](/ja/manual/extended-sql)||
|ExtendedStyles|[拡張スタイル](/ja/manual/extended-style)||
## 3. プリザンターの準備
### 1. アプリケーションの準備
1. [ダウンロードセンター](https://pleasanter.org/dlcenter)から、プリザンター最新バージョンをダウンロードします。
1. ダウンロードしたzipファイルを解凍します。
### 2. パラメータ再設定
手順3.1.で準備した最新バージョンモジュールのパラメータファイルに対して、現在設定済みの内容を反映します。[WinMerge](https://winmergejp.bitbucket.io/)などのファイル比較・マージツールを利用して最新バージョンモジュールのパラメータファイルと手順2.で取得したバックアップファイルのパラメータファイルを比較しながら最新バージョンモジュールのパラメータファイルを修正します。
**Service.jsonのTimezoneDefaultが正しい値か確認してください。TimezoneDefaultにはPleasanterをインストールするサーバのOSで有効なタイムゾーンを設定してください。(Windowsなら"Tokyo Standard Time"など、Linuxなら"Asia/Tokyo"など)**
[FAQ:プリザンターでサポートしている言語とタイムゾーンのパラメータの設定値を知りたい](https://pleasanter.org/ja/manual/faq-supported-language)
### 3. 拡張機能の再設定
**拡張機能を利用していない場合は本手順は不要です。** 手順3.1で準備した最新バージョンモジュールの拡張機能用パラメータファイルに対して、現在設定済みの内容を反映します。[WinMerge](https://winmergejp.bitbucket.io/)などのファイル比較・マージツールを利用して最新バージョンモジュールの拡張機能用パラメータファイルと手順2.で取得したバックアップファイルの拡張機能用パラメータファイルを比較しながら最新バージョンモジュールの拡張機能用パラメータファイルを修正します。
## 4. プリザンターの配置
### 1. プリザンターの停止
1. [Azure Portal](https://portal.azure.com/)に接続します。
2. App Service を開きます。
![image](https://pleasanter.org/binaries/90ff8944d431483da62410cdf5f90100)
3. 作成済みの App Service インスタンスを選択します。
4. App Serviceを停止します。
### 2. アプリケーションの配置
1. [Kudu](https://docs.microsoft.com/ja-jp/azure/app-service/resources-kudu#access-kudu-for-your-app) にアクセスします。
1. App Service の左側のメニューの"開発ツール"から「高度なツール」をクリック
![image](https://pleasanter.org/binaries/9e9a929cb8174c9f81ac9a25479890c4)
2. [移動](/ja/manual/table-record-move)のリンクをクリック
![image](https://pleasanter.org/binaries/8639e642c6ed4b07b1b86538b8394a9f)
3. Kudu のヘッダメニューから「Debug console」>「CMD」をクリック
![image](https://pleasanter.org/binaries/8d9aeb33b8b94c62a787d8adca8360c8)
4. ディレクトリ一覧から「site」をクリックします。選択後、プロンプトが C:\home\site\となることを確認します。
![image](https://pleasanter.org/binaries/1082db49c78b49afbe9ce76636e83f8b)
2. 手順3.2.でパラメータ再設定した最新バージョンモジュールの「pleasanter」フォルダに移動します。
3. 「Implem.Pleasanter」フォルダを「wwwroot」にリネームします。
4. wwwroot フォルダを zip 形式で圧縮し「wwwroot.zip」とします。
5. 「Implem.CodeDefiner」フォルダを[CodeDefiner](/ja/manual/getting-started-installer-pleasanter-rhel-8)にリネームします。
6. CodeDefiner フォルダを zip 形式で圧縮し「CodeDefiner.zip」とします。
7. wwwroot.zip と CodeDefiner.zip を Kudu の Size をターゲットにドラッグアンドドロップし、展開されて格納されたことを確認します。
![image](https://pleasanter.org/binaries/6a380563ed384537bce6539c052e7624)
※念の為、既存のC:\home\site\wwwroot\およびC:\home\site\CodeDefiner\をそれぞれC:\home\site\wwwroot_bk\、C:\home\site\CodeDefiner_bk\などとリネームしてバックアップしたうえで、新バージョンを配置することを推奨します。
## 5. CodeDefinerの実行
1. Kudu のディレクトリ一覧から CodeDefiner を選択し、プロンプトが C:\home\site\CodeDefiner となることを確認します。
2. 以下のコマンドを実行して、CodeDefinerを実行します。/l、/zの引数設定は不要です。
```
dotnet Implem.CodeDefiner.dll _rds /p C:\home\site\wwwroot
```
## 6. プリザンターの起動確認
1. App Serviceを開き、インスタンスを起動します。
1. ブラウザでプリザンターのログイン画面を開き、ログイン後、ナビゲーションメニューの「ヘルプ」-「バージョン」をクリックし、バージョンが正しいことを確認します。
![image](https://pleasanter.org/binaries/0d80470fa83c40bd99c057d2447549e0)