katapedia
  • README
  • doc
    • Ansible
    • Assert
    • Astah
    • Autohotkey
    • CI
    • C_Cpp
    • CentOS6x系でhttp認証に失敗する
    • Chef
    • Clipboard
    • コーディング
    • Configure
    • Console2_NYAOS
    • Debian系RedHat系の違い
    • DesignDoc目次サンプル
    • Docker
    • Doxygenコメント規約
    • Eclipse
    • Excel
    • FAQ
    • Footer
    • Git
    • GitBucket
    • GitBucketとJenkins連携
    • GitBucketとRocketChat連携
    • GitHub
    • GitLab
    • Gitで大量のファイルの中から必要ファイルのみをaddする方法
    • GitのGUI比較
    • Gitのリポジトリがでかくなったときの削減の昔のやり方
    • Gitワークフロー
    • Go
    • Googletest
    • Gradle
    • Grafana
    • Groovy
    • Haroopad
    • Haskell
    • Htmlpdfに直リンクする(ダウンロードしない)方法
    • IT業界
    • Java
    • Javascript
    • Javascriptrライブラリ・フレームワーク一覧
    • Jenkins
    • JetBrains_IDE
    • Linux
    • Linux Command
    • Linux Distribution
    • Makefile
    • Maven
    • MicrosoftProject
    • NoSQL
    • Omniauthによるアカウント統合
    • Outlook
    • PHP
    • Prometheus_Loki
    • Python
    • RDB
    • Redmine
    • RedmineDドライブへの保存
    • Redmineアップデート
    • Redmineプラグイン
    • Redmineメール通知
    • Redmine文字化け
    • Ruby
    • Rust
    • R言語
    • SVN
    • Sidebar
    • Solaris
    • Staticまとめ
    • Terraform
    • Thinkpad
    • Tmux
    • ToDoリスト
    • UML
    • Vagrant
    • Vim/Neovim
    • VirtualBox
    • Visio
    • Webアプリケーション
    • Webサーバ
    • Webブラウザ
    • Webブラウジング
    • Webページ備忘録
    • Windows
    • Word
    • Zabbix
    • Zsh
    • C#
    • dotfiles
    • html_css
    • Lua
    • sonarqube
    • terminal
    • tweetまとめ
    • xrdp
    • お預り証サンプル
    • その他Webサービス
    • その他ツール
    • よく使う英語
    • アジェンダサンプル
    • アジャイル宣言
    • アンチパターン
    • インシデント
    • エディタ・IDE
    • エンジニアリングスキル
    • オンプレミスサーバ管理
    • オープンソースライセンス
    • キックオフミーティング
    • コミットメッセージでよく使う英語
    • サーバデータ移行
    • サーバ環境構築
    • シェルスクリプト
    • セキュリティ
    • ソフトウェア開発
    • チャットツール
    • チーム構築
    • ツール調査履歴
    • テスト
    • デザイン
    • デザインパターン
    • ドキュメント
    • ネットワーク
    • ノート
    • バージョン番号
    • ビジネスモデル
    • プラクティス一覧
    • プラグイン調査
    • プログラマがやってはいけない97のこと
    • プログラミングテクニック
    • プログラム
    • プログラムエラー集
    • プロジェクトマネージメント
    • プロダクトマネージメント
    • ヘルプ文
    • ライフハック
    • リソース設計
    • リバースエンジニアリングツール
    • リリースノート
    • リリースノートサンプル1
    • リンク
    • レビュー
    • 人月の神話
    • 人間のあれこれ
    • 仕事のあれこれ
    • 会議
    • 作業報告項目サンプル
    • 例外処理
    • 勉強
    • 名言・教訓
    • 品質管理
    • 教育
    • 数学
    • 文書レビュー観点
    • 朝会
    • 未来技術
    • 林檎の木のものを持ってきた
    • 正規表現
    • 物理
    • 知識データベース
    • 紛らわしい・似たような用語
    • 経営
    • 経済
    • 自作template_class_でundefined_reference_to
    • 要求分析・要件定義
    • 見積もり
    • 設計
    • 評価
    • 認証
    • 議事録サンプル
    • 運用・保守
    • 開発インフラ
    • 開発環境
    • 開発計画
    • 関数名でよく使われる英単語
    • 関数命名規約
    • 関数型言語
    • 雑多メモ
    • 面接
Powered by GitBook
On this page
  • Jenkinsの環境変数
  • よく使うシェルコマンド
  • sloccount
  • cccc
  • cppcheck
  • doxygen
  • DRY(pmd(cpd))
  • 移行
  • jenkins-ciのダウンロード
  • プラグインの移行
  • パイプラインプラグイン対応状況
  • Troubleshooting
  • Jenkins上のMavenのproxy設定
  • ghprbでChecking PR から Created Pull Requestまでの間が遅い
  • パイプラインでnohup: failed to run command `sh': No such file or directoryとなる
  • シェル変数、コマンドが展開される
  • JenkinsプラグインのProxy設定
  • JenkinsでGitがproxy越しに使えない
  • PHP
  • スタイルチェック
  • 静的解析
  • 重複コード
  • 参考サイト
  • SVN
  • コミットトリガーでjenkinsを実行する
  • ほしいプラグイン
  • Tips
  • パイプライン使用時はWorkspaceが使えない
  • ビルドを一括削除
  • プロジェクトページにコンソール出力を表示したい。
  • Jenkinsにパラメータ(引数)を渡す
  1. doc

Jenkins

PreviousJavascriptrライブラリ・フレームワーク一覧NextJetBrains_IDE

Last updated 7 years ago

Jenkinsの環境変数

$JOB_NAME:ビルドのプロジェクト名

$WORKSPACE:ワークスペースのディレクトリパス

よく使うシェルコマンド

sloccount

sloccount --duplicates --wide --details * > $WORKSPACE/sloccount.sc

cccc

find . -name ".h" -o -name ".cc" -o -name ".c" | tr 'n' ' ' | xargs cccc

cppcheck

cppcheck --enable=all --suppress=variableScope --xml . 2> cppcheck_result.xml

doxygen

find . | grep ".c$|.cc$|.h" | xargs -i nkf -w --overwrite {}

nkf -w --overwrite README.md

doxygen Doxyfile

DRY(pmd(cpd))

find . -type f | egrep '.c$|.cc$|.h$' | xargs -i nkf -w --overwrite {}

/usr/local/bin/pmd/bin/run.sh cpd --minimum-tokens 100 --files . --language cpp --encoding UTF-8 --format xml > $WORKSPACE/cpd.xml || true

移行

jenkins-ciのダウンロード

プラグインの移行

awk '{print $1}' /tmp/plugins.txt > /tmp/plugins_tripped.txt

パイプラインプラグイン対応状況

Troubleshooting

Jenkins上のMavenのproxy設定

/var/lib/jenkins/tools/hudson.tasks.Maven_MavenInstallation/"Jenkins上から入力したMaven名"/conf/settings.xml

にproxyを記述

ghprbでChecking PR から Created Pull Requestまでの間が遅い

ghprbは複数のジョブを並列で処理できるようになっていないこと原因と思われる。1つのhookから呼び出されるジョブを1つにすればブロックされなくなり速くなる。

パイプラインでnohup: failed to run command `sh': No such file or directoryとなる

Durable Task Plugin 1.13のバグ。1.12にダウングレードすれば直る

シェル変数、コマンドが展開される

実行前にevalが入っている模様

バックスラッシュで回避すること

JenkinsプラグインのProxy設定

JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Dhttp.proxyHost=192.168.1.1 -Dhttp.proxyPort=8080 -Dhttp.nonProxyHosts=localhost"

JenkinsでGitがproxy越しに使えない

git->jgitにしたらうまくいった模様。

configure system->git->jgit追加

追加で、以下のコマンドにてプロキシ無効

sudo git config --system http.proxy "

PHP

スタイルチェック

phpcs --report=checkstyle --report-file="phpcs.xml" PHP || true

静的解析

phpmd PHP xml cleancode,codesize,controversial,design,naming,unusedcode --exclude "PHP/test" --reportfile "phpmd.xml" || true

重複コード

phpcpd --log-pmd=phpcpd.xml PHP --exclude="PHP/test" || true

参考サイト

SVN

コミットトリガーでjenkinsを実行する

svnのpost-commitを使用するしか方法はない。

リポジトリのhooks/post-commitに

REPOS="$1"
REV="$2"
UUID=`svnlook uuid $REPOS`

wget --no-proxy  http://jenkins_ip:port/jenkins/job/StaticAnalysis_C/build?delay=0sec

post-commitに実行権限を付けることを忘れないこと!!

ほしいプラグイン

  • 出力したファイルの内容をジョブのトップ画面に表示するプラグイン

Tips

パイプライン使用時はWorkspaceが使えない

ビルドを一括削除

cd /var/lib/jenkins/jobs/Test/builds

rm -r ビルド番号

ジェンキンス再起動

プロジェクトページにコンソール出力を表示したい。

出力をファイルにし、

RichTextPublisher

HTMLで表示する。

また、正規表現ひっかける

description setter plugin

を使うこともできる

Jenkinsにパラメータ(引数)を渡す

ビルドのパラメータ化にチェック。

適当な名前をつける

$名前

でパラメータを引ける

wget -no-proxy

java -jar jenkins-cli.jar -s list-plugins > /tmp/plugins.txt

cat plugins_tripped.txt | xargs java -jar jenkins-cli.jar -s install-plugin

->

https://wiki.jenkins-ci.org/display/JA/Building+a+software+project#Buildingasoftwareproject-Jenkinsが設定する環境変数
http://jenkins_ip:port/jnlpJars/jenkins-cli.jar
http://jenkins_ip:port/
http://jenkins_ip:port/
https://github.com/jenkinsci/pipeline-plugin/blob/master/COMPATIBILITY.md
https://github.com/jenkinsci/ghprb-plugin/issues/461
https://wiki.jenkins-ci.org/display/JENKINS/Durable+Task+Plugin
http://d.hatena.ne.jp/yk5656/20140617/1404310791
http://www.spiceworks.co.jp/blog/?p=4188
http://d.hatena.ne.jp/Kenji_s/20110917/1316216108
https://github.com/jenkinsci/description-setter-plugin
https://issues.jenkins-ci.org/browse/JENKINS-33839
https://wiki.jenkins-ci.org/display/JENKINS/Rich+Text+Publisher+Plugin
https://wiki.jenkins-ci.org/display/JENKINS/Description+Setter+Plugin