始めに
久しぶりの投稿です。
今回はSalesforceの自動化についての紹介になります。
Salesforceの保守作業を経験者であればウィークリーエクスポートのダウンロード面倒臭い、自動化できればめっちゃ楽になるじゃんって誰でも思ったことがあるかもしれません。
私はその一員でした。なので、なんか自動化できないかと思って、グーグル先生に聞いた結果、force-backup-automatorというものを見つけました。
GitHub:https://github.com/stefanzepeda/force-backup-automator
すでにPythonのライブラリー化されているので、pipで直ぐインストールしてみました。
が、ずっとログインできなくて、困りました。
ちょっと調べてみまして、SalesforceさんはGETでログインするのを禁止したらしいです・・・
そこでソースコードを見て簡単に改造してみて、動くようになりました。
改造後のソースコードをGithubにあげたので、使いたい方はご自由にどうぞです。
GitHub:https://github.com/lexluthor0304/force-backup-automator-jp
事前準備
上記リンクのrequirements.txtをインストール
$ pip install -r requirements.txt
使用方法
run.pyにmain関数を実装する
def main():
backup_instance = BackupController(org_link="組織リンク", is_headless=1)
backup_instance.download_backups(
download_location="ダウンロードパス",
backup_url="メールに記載しているバックアップリンク",
user_name="ユーザ名", pass_word="パスワード")
if __name__ == "__main__":
main()
↑のように実装したらterminalにて実行してみるとこうなります。
最後
こちらのpythonコードをdockerのコンテナイメージを作成する、あるいはpythonのscheduleを利用すればAWSのECSなど毎月自動的に起動させて手動作業は全部無くなります。
つまらない定形作業であれば全部pythonで自動化した方がクライアントとwin-winの関係を構築できるのではないかと思います。