YouTrack クラウド 2026.2 ヘルプ

カスタムスクリプト

カスタムスクリプトを使用すると、コードブロックを整理して再利用できます。特定のタイプのルールは含まれていません。代わりに、他のスクリプトで使用できるコードが含まれています。

カスタムスクリプトは、JavaScript エディターを使用して作成されたワークフロー内のモジュールとして保存されます。カスタムスクリプトを追加するには、管理> ワークフローで JavaScript ワークフローを開くか作成し、エディターのサイドバーにあるモジュールの追加コントロールを使用して、カスタムスクリプトのテンプレートを選択します。

どのスクリプトでも、exports オブジェクトのプロパティとして割り当てることにより、他のスクリプトで使用するオブジェクトと関数を定義できます。

以下に例を示します。

最初に、単純な関数を定義するカスタムスクリプトを作成します。

// 'math.js' exports.f = function (x) { return x * x - 6 * x + 13; }; // And these are a couple of constants we need. exports.lower = 0; exports.upper = 9;

require('./math') を使用してこのスクリプトを別のファイルに読み込むと、YouTrack は exports オブジェクト用に定義したプロパティを含むオブジェクトを返します。この例では、そのオブジェクトが math 定数に割り当てられているため、math.f として関数にアクセスできます。

次に、この関数を参照するアクションルールを記述します。

// 'chart.js' const entities = require('@jetbrains/youtrack-scripting-api/entities'); const math = require('./math'); exports.rule = entities.Issue.action({ title: 'Draw a chart', command: 'draw', action: (ctx) => { const issue = ctx.issue; var chart = ''; for (var x = math.lower; x <= math.upper; x++) { var fx = math.f(x); var line = x + ' | '; for (var i = 0; i < fx; i++) { line = line + "#"; } chart = chart + line + "\n"; } issue.addComment(chart); } });
2026 年 4 月 23 日