Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Next challenges

Recent achievements

  • Global
  • Personal

Recognition

  • Give kudos
  • Received
  • Given

Leaderboard

  • Global

Trophy case

Kudos (beta program)

Kudos logo

You've been invited into the Kudos (beta program) private group. Chat with others in the program, or give feedback to Atlassian.

View group

It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

プログラミングなしでJira CloudとConfluence Cloudのサイトバックアップを自動化する

今回は追加の費用負担なく Atlassian Cloud のJiraとConfluenceのバックアップを自動取得する方法を紹介します。

 

■ (0) 前提条件

この方法では Jira Automation の機能を利用するため、最低でも1つのJira製品を契約しておく必要があります。言い換えるとConfluenceだけを使っている場合は適用できません。

また、後述の手順はバックアップのみを実行してファイルのダウンロードは行わない割り切った方針になっています。ついては管理者がバックアップを何も行っていない状況からの第一歩としてご検討いただけますとさいわいです。

 

■ (1) 下準備

バックアップ実行のリクエストを送信するにあたって必要となる認証情報を用意します。

  1. サイト管理者のアカウントにて API token を発行する
  2. オンラインツール(Base64 Encode など)で "$EMAIL_ADDRESS:$API_TOKEN" の形式をエンコードする
    • 例: base64encode.png
    • ターミナルを使いたい場合は後述の (1-2) を参考のこと

 

(1-2) 認証情報のエンコーディング

$ echo -n "site-admin@example.com:SAMPLE2019" | base64
c2l0ZS1hZG1pbkBleGFtcGxlLmNvbTpTQU1QTEUyMDE5

 

■ (2) Confluence向けサイトバックアップのルールを作成する

どちらの製品から設定を始めても差し支えありませんが、ここでは Confluence Cloud から設定していきます。

  1. スケジュールを設定する
    • Cron expression にて (2-1) を指定する。
    • When rule executes... には "simply run the conditions and actions without providing issues" を選択する。
    • schedule-cron.png
  2. アクション Send web request を追加する
    • Webhook URL{{baseUrl}}/wiki/rest/obm/1.0/runbackup
    • Headers:
      • Authorization: Basic <(1-2) で出力した認証情報>
    • Webhook body: (2-2)
    • action-webhook.png
  3. アクション Log action を追加する
    • 成功時のレスポンスボディを audit log に出力するよう Log message に {{webhookResponse}} を指定する。
  4. 名前をつけて設定を保存して Run rule で試運転を行う
    • A4J の Audit log にて実行ログを確認できる。 
    • audit-log.png
  5. バックアップファイルが完成していることを確認する
    • このファイルは7日間保存されるため、ユーザーの操作などによりデータを喪失してしまった場合にダウンロードして復旧に利用できる。
    • confluence-backup.png

 

(2-1) Cron expression

方針: バックアップは最低48時間超の間隔を開けなければならないので、月・木の週2回の実行とする。また メンテナンス時間 はサービス利用ができなくなるため 19:00 (UTC) を指定する。

0 0 19 ? * 1,4

(2-2) Webhook body

{"cbAttachments":"true" }

 

■ (3) Jira向けサイトバックアップのルールを作成する

続いて Jira Cloud 向けの設定を投入します。ほとんど Confluence と同じなので差分のみを記載します。

  1. スケジュールを設定するのは同じ
  2. アクション Send web request を追加する
    1. Webhook URL: {{baseUrl}}/rest/backup/1/export/runbackup
    2. Webhook body: (3-1)
  3. 残りの手順は同じ
    • バックアップファイル: jira-backup.png

 

(3-1) Cron expression

方針: 同様に、月・木の週2回の実行とする。

0 0 19 ? * 1,4

(3-2) Webhook body

{"cbAttachments":"true", "exportToCloud":"true"}

 

■ (4) 制約事項

今回のアプローチには、いくつか留意点があります。

  • プランによってはルールの実行回数制限があるため、他のルールで枠を使い切ってしまった場合はバックアップが走らなくなります。ルール数が多い場合は Premiumプラン の導入をおすすめします。
  • ファイルを手元にダウンロードしていないので、保存期間の7日間を過ぎてしまった場合はバックアップが失われます。バックアップファイルを手元に残したい場合は Atlassian Cloud 製品のバックアップ取得を自動化するには にて紹介されているbashスクリプトを使ったバックアップ自動化をご検討ください。
  • 誤った操作などによりデータを喪失してしまった後にバックアップが行われた場合、データを喪失した状態のバックアップが取得されてしまいます。

 

2 comments

Very detailed post, nice work @Kenta Yamamoto 

Comment

Log in or Sign up to comment
TAGS

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you