2017-10-27 4 views
1

私はRaspberry Pi用のソフトウェアを開発しています。モバイルシステムなので、私はGithubをレポとして利用してアップデートを得ることを考えました。実際にGithubである必要はありませんが、どんなgit repoでも問題ありません。問題は、以下の流れが働くかどうかです。Githubをアップデートソースとして使用する

1)更新があると、MQTTの更新トピックに公開します。
2)加入者は、メッセージを取得し、システム全体のコマンドを実行します。
- git pull
- download new dependencies if there is any
- run makefile
- restart the application
3)更新されたシステムは、新しいバージョン番号とメッセージを発行しています。

レポのセキュリティはsshキーで達成され、レポは間違いなくプライベートになります。アプリケーションの再起動中のデータ損失はごくわずかです。

このフレームワークは、追加のフレームワークを構成するよりも簡単に作成できるため、更新フレームワークを使用する予定はありません。

このフローで重要な点はありませんか?

答えて

1

考慮すべきことのリスト:

  1. どのようにMQTTブローカーへのアクセスを確保するのだろうか?
  2. ネットワーク接続が中間更新を失った場合はどうなりますか?
  3. 壊れた更新を公開するときのロールバック戦略は何ですか? (ある時点で)
  4. リポジトリのDoSingを防止し、更新が更新される際の更新の品質を保証するために、更新をずらす方法はありますか?
  5. なぜ既存のフレームワークより優れた仕事をすることができると思いますか?
  6. あなた自身のソリューションをロールするのではなく、既に利用可能なソリューションのいずれかを見てください。 http://resin.io/
関連する問題