## What is Routegadget?

PHP アプリケーション(v1 は Java) オリエンテーリングのルートの描画と比較を行うアプリケーション

Repository https://github.com/Maprunner/rg2/branches

リポジトリ確認

Tags

v0.1 ~ v1.5.9

Releases

https://github.com/Maprunner/rg2/releases

追加できそうなこと

  • 日本語設定ファイルがない → あるが、反映が微妙
  • 言語更新の反映が遅い→done issue 観れば良さそう

環境構築

sudo yum install git -y
sudo amazon-linux-extras install nginx1 -y
sudo service nginx start

sudo amazon-linux-extras install php7.2 -y
sudo yum install php php-devel php-opcache php-mbstring php-xml -y
sudo service php-fpm start

sudo cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.bck 
sudo cat /etc/php-fpm.d/www.conf.bck  | sudo sed "s/user = apache/user = nginx/" | sudo tee /etc/php-fpm.d/www.conf
sudo cat /etc/php-fpm.d/www.conf.bck  | sudo sed "s/group = apache/group = nginx/" | sudo tee /etc/php-fpm.d/www.conf
sudo service php-fpm restart

netstat -a --unix |egrep "Proto|fpm"


sudo echo '<?php phpinfo(); ?>' | sudo tee /usr/share/nginx/html/phpinfo.php
sudo service nginx restart
echo http://$(curl -s http://169.254.169.254/latest/meta-data/public-ipv4)/phpinfo.php
sudo cat /etc/nginx/nginx.conf  | sudo sed "s|/usr/share/nginx/html;|/usr/share/nginx/html; 
 client_max_body_size 10M; |g" | sudo tee /etc/nginx/nginx.conf
sudo service nginx restart
wget https://github.com/rhysd/hgrep/releases/download/v0.2.1/hgrep-v0.2.1-x86_64-unknown-linux-gnu.zip
unzip hgrep-v0.2.1-x86_64-unknown-linux-gnu.zip
cd hgrep-v0.2.1-x86_64-unknown-linux-gnu/
sudo cp hgrep /usr/local/bin/hgrep

RG2 install

cd /usr/share/nginx/html
sudo mkdir ws
sudo chown ec2-user:nginx ws
cd ws


## 事前にフォークしておく
git clone https://github.com/mikanbox/rg2.git

cp ./rg2/rg2-config\ .txt ./rg2/rg2-config.php
cat ./rg2/rg2-config.php | sed "s|https://www.happyherts.routegadget.co.uk|$(echo http://$(curl -s http://169.254.169.254/latest/meta-data/public-ipv4)/ws/)|g" | tee ./rg2/rg2-config.php
mkdir kartat

sudo chown -R ec2-user:nginx ./
echo http://$(curl -s http://169.254.169.254/latest/meta-data/public-ipv4)/ws/rg2/

調査

sudo yum install tree -y
cd rg2

echo "https://github.com/settings/tokens"
  • repo のみ選択してトークン発行
  • git push 時に使用可能

https://futureys.tokyo/summary-of-recommended-branch-model-on-git/

git checkout -b develop
git checkout -b feature-lang-jp
git branch

作業

ctr+u / ctr + b

調査

https://github.com/rhysd/hgrep#installation

hgrep --help
hgrep "getNewLanguage" -g '!*.min.js*'

反映が微妙い

getNewLanguage の呼び出しタイミング確認

hgrep "getNewLanguage" -g '!*.min.js*'

js/rg2ui.js 

      $("#rg2-select-language").click(function () {
        newlang = $("#rg2-select-language").val();

hgrep "getNewLanguage" -g '!*.min.js*'

Debbugは先にこっちを見ておくこと https://github.com/Maprunner/rg2/wiki/Debugging-and-Testing min ファイル作成方法

確認方法

http://35.74.79.228/ws/rg2/?debug

変更点

js/rg2ui.js のみ $("#rg2-select-language").click(function () { 部分の click → change に

html change / click 違い

ビルド方法

cat README-DEV.md

cd
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
. ~/.nvm/nvm.sh
nvm install node
npm install -g grunt
cd /usr/share/nginx/html
npm install -g grunt-cli

npm install
grunt

grunt すると min ファイルが上書きされ、アップデートされる

Pull Request 方法調べる

https://qiita.com/y-vectorfield/items/b955617712f3b66359f2

Fork → Clone → remote にfork と origin 追加

コミットルールはなさそう https://github.com/Maprunner/rg2/search?q=contri

https://github.com/Maprunner/rg2/pulls プルリク反映されてないので、コンタクト必要か

https://github.com/Maprunner/rg2/issues この辺 issue 反映させれば良さそうか

TODO

  • 綺麗なブランチの作成
  • PullRequest の提出
  • help / コミットログ からowner に連絡してみる

綺麗なブランチの作成

rg2-select-language git branch -m feature/modify_switch_lang_behavior feature/update_pulldown_behavior_rg2-select-language

git add . git commit -m “Update pulldown event trigger from click() to change()”

git diff 1740ec76a1a590361d6bbb3fba9e36637b77b62c minifyも更新しちゃったせいでログが大量に出ている — a/js/rg2-1.6.2.min.js +++ b/js/rg2-1.6.2.min.js

これのログが多すぎる

直前のコミットログ修正

git commit –amend

Pull Request の作成

https://github.com/Maprunner/rg2/pull/492

作成 done

TODO

  • help / コミットログ からowner に連絡してみる