サイト再編成スクリプティング:最適な会場は?

YAML ファイルによって駆動されるスクリプトを作成しました。これは Discourse サイトの再編成を目的としたものです。これは、最大のサイトをナビゲートしやすくするために大規模な再編成を計画しているためです。UI を介して実行しようとすると、決して完了できません。

私のスクリプトには単体テストがまったくありません。単体テストの一般的な支持者であり、長年そうしてきましたが、このスクリプトの単体テストを作成する意欲はありません。

このスクリプトは、構築のためのフレームワークのようなものです。誰もが私と同じセマンティクスを望むわけではありません。その意味で、これは、人々が調整のために変更する可能性が高いと予想される一部の移行スクリプトに似ています。

これらの制約を考慮すると、これは PR として提出する価値があるでしょうか?それとも、#documentation:sysadmin でコードブロックとして投稿することを好みますか?

主に、同様のことを試みている他の人を助けたいと思っています。また、実際に関数は、レールコンソールで何をすべきかを知るのに役立つかもしれません。

「いいね!」 3

「サイトの再編成」が何を意味するのか全く分かりません。もしかしたら、Administrative Bulk Operations に投稿するべきでしょうか?

「MSN」は理解できませんが、私の場合は、投稿をカテゴリ間で移動したり、タグを追加したり、投稿の親を変更したり、カテゴリを非表示にしたり、リダイレクトを追加したりする作業が含まれます。タスクの一部は「Administrative Bulk Actions」でカバーされていますが、そうでないものもあります。いずれにしても、すべて単一のスクリプトから実行します。

現在、私の場合は112のアクションがあります。これを rails crake を組み合わせて、サイトの再編成をサイトのリーダーシップと検討する際に、1時間に数回行う可能性があるようなことを入力するつもりはありません。

質問は「これをどのように達成できるか?」ではありません。すでに作成済みであり、改善を続けるつもりです(たとえば、完全で詳細な監査ログも作成するようにするでしょう。まだ行っていませんが、実際のサイトで実行する前に必要になるかもしれません)。

質問は次のとおりです。どのように共有するのが最善か? スクリプトディレクトリにはそのようなものが見当たりません(見落としているかもしれませんが)、PRには通常自動テストが必要であることは理解していますが(スクリプトディレクトリにどの程度適用されるかはわかりません)。同時に、すでに150行を超えており、増え続けています。これは、コードボックスよりもはるかに大きくなるここへの投稿で共有するには大きすぎるように思えます。

おっと。「MSN」ではなく「maybe」でした。 :person_shrugging:

githubに投稿してリンクするのが良いと思います。トピックを作成するか、管理者のバルク操作に追加するかです。

「いいね!」 2

スタンドアロンのGitHubプロジェクトとして作成するのが最善の方法です。また、Metaでそのツールに関するトピックを作成して、人々がそれを見つけられるようにしてください。

「いいね!」 4

はい、ぜひ見つけられるようにしたいです!

動作するように、次のように開始しました。

require_relative "../config/environment"

これはスクリプトディレクトリに配置されたときに機能します。Discourse ディレクトリの外に配置するための一般的なパターンはありますか?(チェックアウト以外のものをチェックアウトするための .gitignore のようなプラグイン パターンは何も見つかりません。)

もしなければ、「スクリプト/にコピーする」ことをインストール手順として伝えることができますが、よりうまく適合できる何かがあるかどうかを知りたいだけです。

次のようなセットアップを使用するプロジェクトがあります。

cd /var/www/discourse/script
git clone https://github.com/user/discourse-config-tool.git
cd ..
bundle exec ruby script/discourse-config-tool/app.rb

このようなものが、あなたのツールのインストール手順に適しているでしょう。

「いいね!」 3

ありがとうございます!既存のパターンに合わせやすくなりますね!

設置が完了したら、より具体的な情報を添えて #documentation:sysadmin に投稿します。

「いいね!」 2

カテゴリーが間違っていたのかもしれません。モデレーションに送られました。

ここに#devで提出すべきでしたか?

承認しました。

「いいね!」 3

Stephenさん、ありがとうございます!

将来、このページではなくそちらにたどり着いた方の検索のために:

「いいね!」 2