torutkのブログ

ソフトウェア・エンジニアのブログ

Redmine

Redmine 4.0(Rails 5.2)のプラグインをテストするなど(コントローラーのテスト編)

Redmine 3.x(Rails 4.2)までは、コントローラーの雛形を生成する際に一緒に生成される機能テスト(functional)のテストコードではActionController::TestCaseを継承していました。 class TermCategoriesControllerTest < ActionController::TestCase Redm…

Redmine 4.0(Rails 5.2)のプラグインをテストするなど

はじめに 今年の5月〜6月の2か月間で、Redmineの用語集プラグインを一から再実装する作業をしてきた結果、RubyとRuby on RailsとRedmineプラグインの作り方についてやっとある程度分かるようになってきました。まだ当初目標はコンプリートしていませんが(テ…

Redmine 4.0(Rails 5.1)でのプラグイン作成について(5)

id:torutk:20180530 の続き。Glossaryプラグインの再構築でファイル添付機能を実装しようとこの数日格闘していました。 書籍「Redmine Plugin Extension and Development」は4章にファイル添付の解説があり、基本そのままたどってみたのですがいくつか落とし…

Redmineプラグインの作成について、1か月経過時の感想

今年の5月1日から、Redmineの用語集プラグインをゼロから作ってみる作業を始めて一ヶ月が経過しました。(始めた経緯は、id:torutk:20180505 に記載)基本、オフの時間帯に細々と取り組んでいるので、まだ用語集としての基本機能がやっと通ったかなという段…

Redmine 4.0(Rails 5.1)でのプラグイン作成について(4)

id:torutk:20180527の続きです。用語一覧表示において、べたに一覧表示する方法と、カテゴリ毎に一覧表示する方法とをラジオボタンで切り替える機能をどのように実装すればよいかを探っています。 アプローチの模索 スタンドアロン(デスクトップ)アプリケ…

Redmine 4.0(Rails 5.1)でのプラグイン作成について(3)

id:torutk:20180506 の続きです。 この5月は、RedmineのGlossaryプラグインをステップ・バイ・ステップで再構築する試みをずっと続けています。その様子は次のWikiページに執筆中です。Redmine Glossaryプラグイン再構築 - ソフトウェアエンジニアリング - T…

5月の土曜日は・・・

今日は子供の小学校の運動会でした。うちの子の小学校はだいたい5月後半の土曜日に開催されます。近所の小学校だと先週の土曜日に開催されるところもありました。今日は日本Javaユーザーグループ主催のカンファレンスJJUG CCC 2018 Springの開催日であり、さ…

Redmine 4.0(Rails 5.1)でのプラグイン作成について(2)

id:torutk:20180505 の続きです。ゴールデンウィークをほぼGlossaryプラグインの再構築に費やしています。が、ステップバイステップの段階のやっと半分を超えたところです。 Rails 5ではbelongs_toのデフォルトはNULL許さず 他のモデルとの関連付けの一つにb…

Redmine 4.0(Rails 5.1)でのプラグイン作成について

id:torutk:20180424 において、GlossaryプラグインのRedmine 4.0対応に難航し暗礁に乗り上げてしまったので、別アプローチとしてゼロからGlossaryプラグインを作成する作業を5月1日より開始しています。この作業を通じてRedmineのプラグイン作成に習熟できた…

redmine trunkを落としてglossary pluginが動くか試してみる(続々々)

id:torutk:20180423 の続きです。 Glossary PluginのRedmine 4.0対応難航中 もう、「RE:ゼロから始めるGlossary Plugin開発」にタイトル変えて一から作っていきたくなる心境ですが、それも茨の道なので(幾度か頓挫)、もうしばらく現行のGlossary Pluginの…

redmine trunkを落としてglossary pluginが動くか試してみる(続々)

id:torutk:20180422 の続きです。 現時点でのRedmineアップデートへのプラグイン追従の感触 ここまで進めてみて、Redmine 3.4(Rails 4.2)からRedmine 4.0(Rails 5.1)へのアップデートでは、Redmine プラグインの追従が相当に遅れる気配が漂ってきました…

redmine trunkを落としてglossary pluginが動くか試してみる(続)

id:torutk:20180416 の続きです。 来るべきRedmine 4.0に備えて、Glossary Pluginが動作するかどうか(動作しないことが確認済み)、修正事項の調査をしています。調査の詳細は、次の個人Redmineのチケットに記載中です。 http://www.torutk.com/issues/81 …

redmine trunkを落としてglossary pluginが動くか試してみる

はじめに Redmine は現在3.4系列がリリースされている最新ブランチで3.4.5がリリースされてました。また、次はメジャーバージョンアップの4.0系列がリリースに向けて開発中です。Redmine 3.4から4.0への更新では、ベースとなっているRuby on Railsのバージョ…

WindowsのHyper-V上でFedora 26を27に更新したあとのRedmine起動エラーの解消

Windows 10のHyper-VにFedora 26を入れてRedmineを動かしていました。 今日、Fedora 26を27にアップグレードしたところ、いろいろ問題が発生しました。 DHCPサーバーでFedora 27にIPアドレスの固定割当をしてみたががうまくいかない Redmineが立ち上がらなく…

Redmineのプラグイン構造を探求する(コントローラ編の1)

モデル編の2(id:torutk:20171108)でいったんモデルの探求を中止し、ブラウザからのリクエストを受けるコントローラを探ることとします。 まずはHello World WebブラウザからURLを直接入力して、プラグインで用意したHello Worldメッセージを表示するだけの…

Redmineのプラグイン構造を探求する(モデル編の2)

昨日(id:torutk:20171107)の続きです。ソースコードの追跡はいったん中断し、データベース(RDBMS)のテーブルとRedmineプラグインのモデル(Rails のモデル)との対応を理解したいと思います。 プラグインの雛形を生成する 最初に、プラグインの雛形を生…

Redmineのプラグイン構造を探求する(モデル編の1)

はじめに プロジェクトで用語集を定義するのはBest practiceの一つです。10数年前になりますが、その頃はExcelで用語集を作っているプロジェクトが多かったように思います。しかし、Excelはいろいろきついので、当初はWikiで用語集を作成していました。しか…

3.4.3へのアップデート

10月15日にRedmine 3.4.3がリリースされたので、次のサイトを3.4.3へアップデートしました。 http://www.torutk.comRedmine 3.4.3のリリース情報日本語訳は次のサイトにあります。XSS脆弱性の修正があるので、なるべく早く適用した方がよいと思い、早速(と…

Redmine稼働環境のFedora 25を26に更新したら...

夏前に、自宅の仮想サーバーホストマシンを、子供の学習用(学校から指定されたeラーニングを行う)に転用しました。そのため、その仮想サーバー上で動かしていた家庭内Redmineをデスクトップで使用しているWindows 10マシンのHyper-V上で動かしています。Hy…

redmine 3.4.0のリリースと更新

(MySQL 5.1環境でmysql2 gemのビルドエラーが発生する問題と回避策を追記)Redmine 3.4.0がリリースされました。3.4.0では、多数の新機能が加わっています。これらについて日本語で紹介しているRedmine.JPブログがあります。 Redmine 3.4 新機能紹介 | Redmi…

Redmineのバージョンアップに追従しやすくする

はじめに 昨年11月に開催された Redmine.Tokyo勉強会(第11回)で、ファーエンドテクノロジーの前田さんが「Redmineのバージョンアップに追従していくための一工夫」というセッションがありました。(セッションスライドのURLは次です) http://www.slidesha…

redmine.tokyo勉強会(第11回)に参加 #redmineT

半年に1回のペースで開催されているredmine.tokyoの第11回勉強会に参加してきました。今回は、開催日がJJUG CCCともJava読書会とも重ならず参加することができました。 ノベリティと会場 ノベリティ 近日発刊の書籍(次)の第1章「バーベキューの段取りでRed…

RedmineのWikiページからカスタムクエリへリンクするマクロをプラグインとして用意

torutk.hatenablog.jp で、RedmineのWikiページにカスタムクエリへのリンクを設けて、クリックすると所定のカスタムクエリの結果のチケット一覧ページに飛ぶようにする方法を模索し、Wikiマクロを作成することで解決の目途を立てました。このWikiマクロを、…

RedmineでWikiページにカスタムクエリへのリンクを記述する

きっかけ Redmineのチケット機能を使って、バグ管理、課題管理、Q&A管理、備品管理、タスク管理など様々な作業の管理が行えます。一つのプロジェクトで多数の種類のチケット管理をするようになると、それぞれの種類ごとに一覧表を見られるようにしたくなりま…

Redmine Wiki Lists プラグインの使い方メモ

Redmineでは、プロジェクトの概要タブで、トラッカー別にチケットの未完了数/完了数/合計数とが表示可能です。進捗管理をする場合、未完了についてはまだ作業に入れていない状態か、作業中かを知りたいので、未着手、着手中、完了の分類がほしくなります(…

Redmineのプラグインにはいくつかの形式があるようです

Redmineのプラグイン作成を始めようとして難航する要因の1つが、「Redmineプラグイン」といってもいくつか形式があり、それを知らずにやみくもにサンプルを見ていて混乱することがあるのではないか?と思いました。Redmineの作り方をいろいろ調べてみたとき…

Redmineプラグイン作成でHookを使ってみる(続々)

前回(id:torutk:20160731)は、RedmineプラグインでView hooksの実装(HTMLテンプレート)において、コントローラークラスのインスタンス変数を利用する方法について記述しました。今回は、既存のモデルをHTMLテンプレート内で利用する方法を調べてみました…

Redmineプラグイン作成でHookを使ってみる(続)

昨日(id:torutk:20160730)は、Redmineが用意したフックの機構を使って、チケット一覧表示画面の下に任意の表示を差し込んでみました。ただし、表示は固定文字列のみでした。Ruby on Railsでは、拡張子.erbのファイルでHTMLのテンプレートを用意し実行時に…

Redmineプラグイン作成でHookを使ってみる

はじめに 3年前の自分は、Redmineのプラグインを作れるようになったと思っていたようです。 このはてな日記に、まず プラグイン作成はそんなに簡単ではない - torutkの日記 と、Redmineプラグイン作成に取り組んだけど難しいよ、と書いており、その次に Redm…

Redmine 10周年を祝う会@東京に参加 #redmineT

2016-07-24追記(LT資料へのリンクと若干の加筆)Redmineがリリースされてから先月でちょうど10年となりました。それを祝って日本のRedmine.Tokyo コミュニティ主催の祝う会が実施されました。 Redmine 10周年を祝う会@東京 - connpass10周年イベントは、既…