やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

GitHubアップローダ今後の方針

さらなる自動化のために整理、検討する。

要件の変化

これまで

これまでの要件は以下である。

これは大体できたと思う。細かい懸念は多いが。

  • バグがありそう
  • 未解決課題がある
  • commitメッセージとissueの同化をやめたい
    • -m起動引数を使わねばいいだけなので後回し
      • 以下要件との兼ね合いもあるため方針を定めるのが先

新たな要件

さらに現状では、以下の要件が生まれ、追加されつつある。しかし上記要件と合わないためうまく統合できていない。

  • GitHubリポジトリ一発アップロード(CUI確認と入力の省略)
  • コントリビューションの定期取得
    • コントリビューションSVGの作成

理想の要件

さらに未提案だが、以下の要件もある。

  • 定期アップロード
    • 指定日時による自動アップロード

優先度が低い要件

優先度は低いものは以下。

  • GUIによる表示確認と操作
    • ReadMe(Markdown)の表示確認
    • Issueの本文をMarkdownで書いて表示確認する

4大インタフェース

大枠で分類すると、ユーザインタフェースとして以下の4種類に分類される。

  • GUIインタフェース(Markdown→HTML→表示)
  • CUIインタフェース(CUI確認と入力)
  • CUIコマンド(CUI確認や入力なし)
  • 定期実行(データ登録後はPC起動する以外完全放置でOK)

下に行くほど自動化されていく。これらは同一のインタフェースではない。実装も変わる。よって、個別の案件として実装すべきと判断する。

方針

現状のCUIインタフェースパターンから、どうやってコマンド、定期パターンへ移行すべきか考えた。

  1. gitコマンドのエラーを検出できるようにする
    • GitPythonに置き換えることで何とかならないか
  2. コマンドパターンでエラーが生じたら自動でログファイルパスをテキストエディタで開く
    • ログからどのように対処するか判断材料を得られる。そこからは手動
  3. コマンドパターンを流用して、定期実行を行う

コマンドをコアにして他へ流用するのが良さそう。

所感

さしあたり現在のCUIインタフェースを完成させてしまうのが先か。それとも一旦完成とみなしてGitPythonの学習を進めるか。