Jenkins CLI를 사용하여 작업
7472 단어 Jenkins
목적
절차 개요
절차
ssh 공개 키를 Jenkins로 설정
오른쪽 상단에서 설정 클릭하여 자신의 사용자 설정을 변경합니다.
SSH Public Keys에 자신의 공개 키 정보를 추가합니다.
다음은 입력 예 (더미)
jenkins-cli.jar 다운로드
Jenkins 관리 를 클릭하십시오.
Jenkins CLI를 클릭합니다.
전환 대상 화면의 jenkins-cli.jar 링크를 클릭하면 jenkins-cli.jar이 다운로드됩니다.
jenkins-cli 실행
동작 확인
다운로드한 파일을 적당한 장소에 배치하여 실행한다.
도움말이 표시되면 OK.
jenkins-cli 도움말 보기$ java -jar jenkins-cli.jar -s http://{JenkinsのURL} help
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by hudson.remoting.RemoteClassLoader (file:/Users/01013548/repositories/chappie/chappie-infra-job-definition/jenkins-cli.jar) to method java.lang.ClassLoader.getClassLoadingLock(java.lang.String)
WARNING: Please consider reporting this to the maintainers of hudson.remoting.RemoteClassLoader
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
add-job-to-view
Adds jobs to view.
build
ジョブをビルドします。オプションで完了するまで待ちます。
cancel-quiet-down
"quiet-down"コマンドの処理をキャンセルします。
clear-queue
ビルドキューをクリアします。
~~~~~~~~~~~~中略~~~~~~~~~~~~~~~~~~~~
update-node
標準入力からの情報でノード定義XMLを更新します。get-nodeコマンドの正反対のことを行います。
update-view
Updates the view definition XML from stdin. The opposite of the get-view command.
version
バージョンを表示します。
wait-node-offline
ノードがオフラインになるのを待ちます。
wait-node-online
ノードがオンラインになるのを待ちます。
who-am-i
認証情報を表示します。
Java9를 사용하면 Warning이 대량으로 나오는데 문제 없음.
작업 확인
기존 작업을 확인할 때 다음 명령을 실행합니다.
표준 출력에 작업 내용이 표시됩니다. 그리고는 삶아지고 구워져 좋아합니다.
기존 작업 표시$ java -jar jenkins-cli.jar -s http://{JenkinsのURL} get-job ジョブの名前
기존 작업 표시 (실행 결과 샘플)$ java -jar jenkins-cli.jar -s http://{JenkinsのURL} get-job sample
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by hudson.remoting.RemoteClassLoader (file:/Users/01013548/repositories/chappie/chappie-infra-job-definition/jenkins-cli.jar) to method java.lang.ClassLoader.getClassLoadingLock(java.lang.String)
WARNING: Please consider reporting this to the maintainers of hudson.remoting.RemoteClassLoader
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
<?xml version='1.0' encoding='UTF-8'?>
<project>
<description>サンプル</description>
<keepDependencies>false</keepDependencies>
<properties>
<org.datadog.jenkins.plugins.datadog.DatadogJobProperty plugin="[email protected]">
<tagProperties></tagProperties>
<tagFile></tagFile>
<emitOnCheckout>false</emitOnCheckout>
</org.datadog.jenkins.plugins.datadog.DatadogJobProperty>
</properties>
<scm class="hudson.scm.NullSCM"/>
<canRoam>true</canRoam>
<disabled>false</disabled>
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
<triggers/>
<concurrentBuild>false</concurrentBuild>
<builders/>
<publishers/>
<buildWrappers>
<hudson.plugins.ws__cleanup.PreBuildCleanup plugin="[email protected]">
<deleteDirs>false</deleteDirs>
<cleanupParameter></cleanupParameter>
<externalDelete></externalDelete>
</hudson.plugins.ws__cleanup.PreBuildCleanup>
<hudson.plugins.ansicolor.AnsiColorBuildWrapper plugin="[email protected]">
<colorMapName>xterm</colorMapName>
</hudson.plugins.ansicolor.AnsiColorBuildWrapper>
<hudson.plugins.timestamper.TimestamperBuildWrapper plugin="[email protected]"/>
</buildWrappers>
작업 만들기
리디렉션을 사용하여 표준 입력에서 xml 파일을 읽어 작업을 만듭니다.
XML 파일을 모두 이치에서 그리는 것은 힘들기 때문에,
다른 작업을 get-job한 결과를 저장 & 일부 변경 -> create-job 하는 것이 즐겁다.
작업 만들기$ java -jar jenkins-cli.jar -s http://{JenkinsのURL} create-job {ジョブ名} < ジョブの定義ファイル(xml)
요약
이제 Jenkins의 화면을 터뜨리고 작업을 만들거나 하지 않아도 된다.
비슷한 작업을 대량으로 만들거나 사시미 민들레적인 일을 다소 편하게 할 수있을 것. . .
XML-yaml의 상호 변환이라든가 하면 인간에게도 상냥해질 것 같네요.
(할 수 있는지는 모른다)
Reference
이 문제에 관하여(Jenkins CLI를 사용하여 작업), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/RyoMa_0923/items/541f26b4d23170b9ce97
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ java -jar jenkins-cli.jar -s http://{JenkinsのURL} help
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by hudson.remoting.RemoteClassLoader (file:/Users/01013548/repositories/chappie/chappie-infra-job-definition/jenkins-cli.jar) to method java.lang.ClassLoader.getClassLoadingLock(java.lang.String)
WARNING: Please consider reporting this to the maintainers of hudson.remoting.RemoteClassLoader
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
add-job-to-view
Adds jobs to view.
build
ジョブをビルドします。オプションで完了するまで待ちます。
cancel-quiet-down
"quiet-down"コマンドの処理をキャンセルします。
clear-queue
ビルドキューをクリアします。
~~~~~~~~~~~~中略~~~~~~~~~~~~~~~~~~~~
update-node
標準入力からの情報でノード定義XMLを更新します。get-nodeコマンドの正反対のことを行います。
update-view
Updates the view definition XML from stdin. The opposite of the get-view command.
version
バージョンを表示します。
wait-node-offline
ノードがオフラインになるのを待ちます。
wait-node-online
ノードがオンラインになるのを待ちます。
who-am-i
認証情報を表示します。
$ java -jar jenkins-cli.jar -s http://{JenkinsのURL} get-job ジョブの名前
$ java -jar jenkins-cli.jar -s http://{JenkinsのURL} get-job sample
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by hudson.remoting.RemoteClassLoader (file:/Users/01013548/repositories/chappie/chappie-infra-job-definition/jenkins-cli.jar) to method java.lang.ClassLoader.getClassLoadingLock(java.lang.String)
WARNING: Please consider reporting this to the maintainers of hudson.remoting.RemoteClassLoader
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
<?xml version='1.0' encoding='UTF-8'?>
<project>
<description>サンプル</description>
<keepDependencies>false</keepDependencies>
<properties>
<org.datadog.jenkins.plugins.datadog.DatadogJobProperty plugin="[email protected]">
<tagProperties></tagProperties>
<tagFile></tagFile>
<emitOnCheckout>false</emitOnCheckout>
</org.datadog.jenkins.plugins.datadog.DatadogJobProperty>
</properties>
<scm class="hudson.scm.NullSCM"/>
<canRoam>true</canRoam>
<disabled>false</disabled>
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
<triggers/>
<concurrentBuild>false</concurrentBuild>
<builders/>
<publishers/>
<buildWrappers>
<hudson.plugins.ws__cleanup.PreBuildCleanup plugin="[email protected]">
<deleteDirs>false</deleteDirs>
<cleanupParameter></cleanupParameter>
<externalDelete></externalDelete>
</hudson.plugins.ws__cleanup.PreBuildCleanup>
<hudson.plugins.ansicolor.AnsiColorBuildWrapper plugin="[email protected]">
<colorMapName>xterm</colorMapName>
</hudson.plugins.ansicolor.AnsiColorBuildWrapper>
<hudson.plugins.timestamper.TimestamperBuildWrapper plugin="[email protected]"/>
</buildWrappers>
$ java -jar jenkins-cli.jar -s http://{JenkinsのURL} create-job {ジョブ名} < ジョブの定義ファイル(xml)
이제 Jenkins의 화면을 터뜨리고 작업을 만들거나 하지 않아도 된다.
비슷한 작업을 대량으로 만들거나 사시미 민들레적인 일을 다소 편하게 할 수있을 것. . .
XML-yaml의 상호 변환이라든가 하면 인간에게도 상냥해질 것 같네요.
(할 수 있는지는 모른다)
Reference
이 문제에 관하여(Jenkins CLI를 사용하여 작업), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/RyoMa_0923/items/541f26b4d23170b9ce97텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)