35

hudson/jenkins ジョブの名前を変更しようとしました。ただし、名前の変更に失敗しました。

ジョブの名前を変更する方法はありますか?

4

8 に答える 8

67

次の手順に従って、jenkins UI を介して選択したジョブの名前を変更できます。

job>configure>Advanced Project Options>Display Name

もう 1 つの方法は、Jenkins/hudsonサーバー上のディレクトリの名前を変更してからrestartJenkins.

于 2013-01-30T12:07:07.250 に答える
17

完全を期すために、Groovyスクリプト コンソールを使用した Hudson ジョブ名の更新について言及したいと思います。

// Groovy script to rename job in Hudson
import hudson.model.*;

def JOB_PATTERN = ~/^MY_JOB.*$/; //find all jobs starting with "MY_JOB".
def NEW_PART = "_NEW"

(Hudson.instance.items.findAll { job -> job.name =~ JOB_PATTERN }).each { job_to_update -> 
    println ("Updating job " + job_to_update.name);
    def new_job_name = job_to_update.name + NEW_PART; //Append new part to the job name
    println ("New name: " + new_job_name);
    job_to_update.renameTo(new_job_name);
    println ("Updated name: " + job_to_update.name);
    println("="*80);
}

同時に数十のジョブを更新する必要がある場合に役立ちます。

: 次のコードは機能しません。

job_to_update.name = new_job_name;
job_to_update.save();

ジョブの名前を新規および保存構成に設定すると、現在のジョブの名前は変更されませんが、ジョブ構成のコピーが新しい名前で作成されます。また、この場合、参照が壊れている可能性があるため、Hudson は構成をリロードする必要があります。

于 2013-04-29T16:34:56.830 に答える
11

ジョブの名前を変更する通常の方法:

構成画面に移動し、上部のプロジェクト名フィールドを編集します。次に、[保存] をクリックし、[はい] をクリックして確認します。( Saveの横にあるApplyボタンをクリックしないでください。エラーメッセージが表示されます: JENKINS-17474 )

表示名を変更しても、ジョブの名前は変更されません。表示方法が変更されるだけです。たとえば、検索ボックスを介して元の名前で引き続き検索され、URL にも表示されます。

ファイルシステム レベルでディレクトリの名前を変更する必要はありません。

于 2013-04-29T16:11:20.137 に答える
2

Marc のスクリプトを動作させることができないので、以下に示すように、すべてのジョブを無効にするスクリプトに基づいて作成します。これは、「Findur.OpenComponent」を含むプロジェクトの名前を「Findur.OpenComponents」に変更するためです。

import hudson.model.*

renameChildren(Hudson.instance.items)

def renameChildren(items) {
  for (item in items) {
    if (item.class.canonicalName != 'com.cloudbees.hudson.plugins.folder.Folder') {     
      if (( m = item.name =~ /^(Findur.OpenComponent)(\..*)$/)){
        println(item.name)
        println m.group(1) + " " + m.group(2)
        newname = m[0][1] + 's' + m.group(2)
        item.renameTo(newname)
      }

    } else {
        renameChildren(((com.cloudbees.hudson.plugins.folder.Folder) item).getItems())
    }
  }
}
于 2016-04-07T20:41:41.457 に答える
1

要件に応じて、私は通常次のいずれかを選択します。

ジョブ>構成 -プロジェクト名のプロパティを変更 -高度なプロジェクト オプション、 [高度な... ] をクリックし、表示名の値を設定します。

次に、ジョブを保存します。ファイル システム レベルで名前を変更する必要はありません。

于 2013-01-30T12:31:38.010 に答える