タグ: bitnami Redmine

  • BitnamiでRedmineの単体インストールパッケージが提供されなくなっている

    Windows用や、Linux用のRedmineの簡単インストールのパッケージを配布していたBitnamiで、インストール用のパッケージ配布がなくなっていた。コンテナイメージやRedmineのインストール済みのVMイメージについては、現在も配布されている。

    パッケージが配布されていないので、BitnamiでのRedmineのバージョンアップができなくなった。試すだけならば、コンテナイメージやVMイメージでよいのだが、通常利用には向かない。残念だ。

  • Redmineの移行先候補を探すのが大変なのでCopilotに調べさせてみた

    ちょっとRedmineのバージョンアップがめんどくさいので、移行先の候補を探した。検索しても、ゴミというか、Redmineのバージョンアップのページばかりになる。その中から探すのも大変なので、Microsoft Copilotに調べさせてみた。

    ## 質問

    現在、Redmineを利用しています。RedmineはバージョンアップとRubyのバージョン管理がめんどくさいです。そのため、別のツールに乗り換えを考えています。条件としては、オンプレミスで稼働させたいので、OSSのツールです。Redmineと同様のツールで、移行先の候補となるツールを10個探してください。

    ## Copilot

    Redmineからの移行を検討されているのですね。オンプレミスで稼働可能なオープンソースのプロジェクト管理ツールをいくつかご紹介します。以下のツールは、Redmineに似た機能を持ち、オンプレミス環境での使用が可能です:

    – Trac – ウェブベースのソフトウェアプロジェクト管理とバグトラッキングシステム。

    – GitLab – コード管理、CI/CD、モニタリングなどを統合したDevOpsプラットフォーム。

    – Phabricator – コードレビュー、タスク管理、バグトラッキングなどを提供するスイート。

    – Taiga.io – アジャイル開発に特化したプロジェクト管理ツール。

    – GanttProject – ガントチャートとリソース管理機能を備えたプロジェクトスケジューリングアプリケーション。

    – OpenProject – タスク管理、時間追跡、コスト報告などの機能を持つ。

    – ProjectLibre – プロジェクト管理のためのデスクトップアプリケーション。

    – RedmineUP – Redmineをベースにしたプロジェクト管理ツールで、追加機能を提供。

    – Fossil – 分散型バージョン管理、バグトラッキング、ウィキ、ブログ機能を統合。

    – Tuleap – アジャイル開発とソフトウェア開発ライフサイクル管理をサポート。

    これらのツールは、Redmineと同じくプロジェクト管理の基本的な機能を提供すると同時に、それぞれ独自の特徴や強みを持っています。移行を検討する際には、各ツールの機能、使い勝手、コミュニティのサポートなどを比較して、ご自身のニーズに最も合ったものを選択してください。また、移行プロセスにはデータのエクスポートとインポート、必要に応じてデータの変換作業が含まれることを念頭に置いておくと良いでしょう。必要なサポートがあれば、お気軽にお問い合わせください。

    OSSではないものが混じっていたり、微妙なツールもあったりする。Redmineからの移行先のおすすめはなにか、と聞くと、GitLabと答えてきた。順当にいくと、GitLabなんだろう。チケットの機能しか使わないとすると、ちょっと使いにくいのだが。そういう意味では、おとなしくRedmineのバージョンアップするのがよさそうだ。

  • やらかしたこと:Redmine

    Redmineで、ユーザを消したら、消したユーザの担当していたものが、担当者の欄が空白(表示されない)になった。アカウントを消すと、ユーザ情報も消えるから、チケットの表示も変わるのね。Redmineはユーザの削除じゃなくて、停止にしておかないと、過去のチケットなどをみるときに不具合がでると。

    学んだ。

  • Bitnami Redmineで3.4.6から4.1.1にアップグレード

    Bitnami Redmineで、Redmineの3.4.6を使っている。3.4系が古いので、Redmineの4.1.1にアップグレードにアップグレードしたときの作業を残す。基本的には、Bitnamiのドキュメントの流れでインストールはできた。インストーラーを普通に走らせるとパスなどは変わるので、そこらへんはアレンジしてる。

    ■参考
    https://docs.bitnami.com/general/apps/redmine/administration/upgrade/

    ■やったこと

    アップデート前の環境のDBのユーザ名とパスワードをファイルから抜く。対象のファイルは、下記。

    /opt/redmine-3.4.6-1/apps/redmine/htdocs/config/database.yml
    

    接続の確認をする

    /opt/redmine-3.4.6-1/mysql/bin/mysql -u bitnami -p
    

    データを保存するフォルダを作る

    mkdir data
    cd data
    

    mysqldumpでデータベースのデータを保存する

    /opt/redmine-3.4.6-1/mysql/bin/mysqldump bitnami -p --databases bitnami_redmine --add-drop-database < bitnami_redmine.sql
    

    Redmineのファイルを保存する

     tar czf redmine_files.tar.gz -C /opt/redmine-3.4.6-1/apps/redmine/htdocs/files .
    

    プラグインのファイルを保存する

    tar czf redmine_plugins.tar.gz -C /opt/redmine-3.4.6-1/apps/redmine/htdocs/plugins .

    現在の環境のbitnami redmineを停止する

    sudo /opt/redmine-3.4.6-1/ctlscript.sh stop
    

    新しいバージョンのbitnami redmineのインストーラを実行する。ウィザード形式なので、ウィザードにしたがって設定をする。

    sudo ./bitnami-redmine-4.1.1-5-linux-x64-installer.run
    

    インストールができたら、新しいRedmineが起動しているので、アクセスして、アクセスできることを確認する。

    アクセスができ(=インストールされている)ていれば、次にApacheを停止する

    sudo /opt/redmine-4.1.1-5/ctlscript.sh stop apache
    

    新しいデータベースの接続情報を確認する。下記のファイルに記載されている。

    /opt/redmine-4.1.1-5/apps/redmine/htdocs/config/database.yml

    旧環境のデータを保存したディレクトリに移動し、下記のコマンドで、データベースのデータを入れる。

    /opt/redmine-4.1.1-5/mysql/bin/mysql -u bitnami -p < ./bitnami_redmine.sql
    

    次に、データを展開する。プラグインを使っているようであれば、プラグインも同じように展開する。

    sudo tar xzf ./redmine_files.tar.gz -C /opt/redmine-4.1.1-5/apps/redmine/htdocs/files
    

    Productionログのパーミッションを一時的に変更する(後から戻す)。

    sudo chmod 666 /opt/redmine-4.1.1-5/apps/redmine/htdocs/log/production.log
    

    新しい環境のRedmineの実行環境のディレクトリに移動する

    cd /opt/redmine-4.1.1-5/apps/redmine/htdocs/
    

    次にDBのマイグレーションを実行する。

    sudo /opt/redmine-4.1.1-5/ruby/bin/ruby bin/rake db:migrate RAILS_ENV=production
    

    キャッシュをクリーンナップする

    sudo /opt/redmine-4.1.1-5/ruby/bin/ruby bin/rake tmp:clear

    Productionログの権限を元に戻す

    sudo chmod 644 /opt/redmine-4.1.1-5/apps/redmine/htdocs/log/production.log
    

    Apacheを起動する

    sudo /opt/redmine-4.1.1-5/ctlscript.sh start apache
    

    設定ファイルなどの変更が必要な場合には変更する。

  • bitnamiはVMwareに買収されていた

    https://searchvmware.techtarget.com/feature/VMwares-Bitnami-acquisition-grows-its-development-portfolio

    Redmineがパッケージ化されていて、簡易的に環境を用意するのに便利なBitnamiのツール群。その運営のbitnamiが2019年9月にVMwareに買収されていた。Cookieの承諾がVMwareのものになっていなければ、気が付かなかった。

  • Bitnami Redmine のMySQLダンプ

    Bitnami Redmine(Windows版)を使っていて、MySQLのダンプを取ろうと、mysqldumpコマンドを実行したが、接続エラーになる。mysqlコマンドでは、接続できているので、ユーザとパスワードと接続については、問題がないはず。いろいろと試した結果、以下のコマンドのときは成功したので、メモとして残しておく。

    mysqldumpで成功したコマンド

    mysqldump -u bitnami --password=password --all-databases --default-character-set=binary --port=3307 > dump2019mmdd.sql
    

    これを実行すると、パスワードのくだりのところで、警告は出たが、MySQL Dumpは成功した。passwordの部分は、実際のパスワードに置き換える。

  • BacklogsのRedmine3用

    Redmine3用のbacklogsの改良ブランチ。正規PJ側ではないので、保証はない(もともとのプラグインも補償はないが。)

    https://github.com/ayapapa/redmine_backlogs/tree/redmine3

    このブランチの流れであれば、Redmine4用も作っているようなので、この先、使えそう。

  • Bitnami Redmine バージョンアップ後、ファイルを添付すると「500 Internal Server Error」になる。

    Bitnami Redmineを3.4にバージョンアップした後、ファイルを添付すると、「500 Internal Server Error」が発生する。 production.logを確認したところ、下記のエラーが発生していた。

    ActiveRecord::StatementInvalid (Mysql2::Error: Data too long for column 'digest' at row 1: INSERT INTO `attachments` (`filesize`, `author_id`, `filename`, `content_type`, `created_on`, `disk_directory`, `disk_filename`, `digest`) VALUES (3219456, 51, 'xxxxxxxxxxxxxxxxxxxxx.xls', 'application/vnd.ms-excel', '2019-01-22 13:32:06', '2019/01', '190122133206_888b6d3922b1328bb95a9axxxxxxxxx.xls', '7f983175713489027c14d233d23098f3daf8162a91a1a0e169f0e64xxxxxxxxxx')):
      app/controllers/attachments_controller.rb:97:in `upload'
      lib/redmine/sudo_mode.rb:63:in `sudo_mode'
    

    ファイルのアップロードはエラーになっておらず、DBへの書き込み(INSERT)でエラーになっていた。MySQLのテーブルの定義を調べると、「digest」の型が「varchar(30)」で、実際に書き込みを行っているのは、64文字であることが判明。もともと、ファイルのハッシュ値(チェックサム)をMD5でやっていたものが、バージョンアップのタイミングで、SHA256になり、テーブルの定義がアップデートされていなかったのが、原因だった。

    「digest」カラムをSHA256のハッシュ値を保存できるようにするため、テーブル定義を下記のAlter文で更新した。

    alter table attachment modify digest varchar(64);
    

    更新後は、無事にRedmineにファイル添付できるようになった。