chirimen-oh / chirimen.org

Tutorials for CHIRIMEN
https://tutorial.chirimen.org/
Mozilla Public License 2.0
3 stars 7 forks source link

チュートリアルサイトをコミュニティトップに差し替える #88

Open dynamis opened 3 years ago

dynamis commented 3 years ago

20201117 ミーティングにて、現状の chirimen.org をアーカイブにした上でこのリポジトリでメンテしているチュートリアルサイトを chirimen.org に設定することになった。

あとは例えば次のようなことを順次出来れば (この issue の範囲外)

dynamis commented 3 years ago

本リポジトリを netlify 上で (現状の) tutorial.chirimen.org に加えて chirimen.org の aliase としても設定した。 DNS 側の設定はこのようにすると chirimen.org でチュートリアルサイトが表示されるようになる:

image

ドキュメント: https://docs.netlify.com/domains-https/custom-domains/#dns-configuration

DNS としてはこんな感じにすれば良いってことかな:

それが終わったら tutorial.chirimen.org は本リポジトリの aliase から外し、新しいリダイレクトサイトの方を割り当て直す。その間に tutorial.chirimen.org に接続できない期間が発生する恐れはあるが仕方ない。

https://app.netlify.com/sites/chirimen-org/settings/domain https://app.netlify.com/sites/tutorial-chirimen-org/settings/domain

gurezo commented 1 year ago

@dynamis @dadaa DNS の管理や費用で、どうなっていましたっけ?

gurezo commented 1 year ago

@dynamis @dadaa DNS の管理や費用で、どうなっていましたっけ?

dadaa commented 1 year ago

アタシがもってますよ。次の更新は今年の 9/30 です。DNSの設定もこちらでできそうです。

gurezo commented 1 year ago

@dadaa cc @elie-j @dynamis 今日ミーティングで、ドメイン費用とかどんな状況だっけという話が出まして 今後管理や費用も含めて、どうしようか相談したいという話になりました。

dadaa commented 1 year ago

ほい。どうしましょ?

gurezo commented 1 year ago

@dadaa cc @elie-j @dynamis すみません、今気が付きました。 DNS・ドメインの管理やドメイン費用負担 を @dadaa さん個人から Web DINOの移譲したいのですが、如何でしょうか?

dadaa commented 1 year ago

りょ。

gurezo commented 1 year ago

@dadaa ありがとございます! @elie-j @dynamis 以降の移譲の段取りをお任せしても良いでしょうか?

dynamis commented 1 year ago

@gurezo スミマセンこちらのやり取り見落としてました。 弊社でのドメイン費用負担(保有管理)に切り替えるなら DNS 移管作業ですね。

@dadaa さんの方でドメイン移管の AuthCode を発行して DM か何かでご連絡頂けないでしょうか。

移転時にアクセス不能にならないよう DNS 設定引き継ぎなどで困ったら追加質問あるかもですが、多分 AuthCode さえあれば後はこちらで作業できそう (移転後は Cloudflare DNS を使う&既存設定を自動で読む機能があるので多分問題ない想定)。

弊社側のレジストリの説明 https://www.value-domain.com/userguide/manual/transfer 移転後は DNS 管理権限などはコミュニティの中の何名かにばらまいて私がボトルネックにならないようにさせてください。

gurezo commented 1 year ago

@dynamis 今の状況を教えてください 🙇 何をしたら良いか把握したいです

chibitaki commented 5 months ago

@dadaa さんに再度対応していただくように連絡しました。

dadaa commented 5 months ago

おつかれさまですー AuthCode 確認のところで移管先を訪ねられているので、送ってくださいませー Slack でもメールででも。

dynamis commented 5 months ago

移管先として何の情報が必要ですか? GMO (value-domain) のアカウントに移転したいのですがこちらの ID か何かの入力を要求されてます?こちらは AuthCode 入力するだけ状態で、先にリンクしたとおり、何かこちらから伝える必要があるという情報が見つからず。

image

dadaa commented 5 months ago

value-domain だけわかれば大丈夫です。ありがとさま。あとで slack で送りますわ。

dadaa commented 5 months ago

@dynamis slack でメッセージ送ったけど反応なさげでした。どこに送ったらいいです?

chibitaki commented 5 months ago

@dadaa slack で送ってくださったとのこと、私にも入っていますか? フォローするので、私にも送ってください。いろいろすみません。 よろしくお願いいたします。

dadaa commented 5 months ago

おはようございますー @chibitaki @dynamis Japanese Mozilla community group の slack で良いんですよね? さきほどお二人にメッセージ送ったのですけれど、もしかして届いていないのかしら?

chibitaki commented 5 months ago

@dadaa ありがとうございます!届きました!

dynamis commented 5 months ago

どうやら元のドメインの contact のメールアドレス確認をするようで、whois proxy を解除するのが最低限必要なようですので、まずは whois proxy 解除頂けますか @dadaa

image

まずはその状態で手続き進められるか試したいのですが、更に、どうやら記載のメールアドレスがこちらの登録アドレス (webmaster at webdino.org) と一致しなければ進められない可能性が高そうです:

https://www.value-domain.com/transfer.php?action=notes

ドメイン登録者連絡先(registrant contact)として自分のメールアドレスが登録されていない、また、そのメールアドレスでメールを受信できない場合。

普通は他のドメイン管理なども一緒にしていて、登録アドレスまるごと変えるわけにはいかないでしょうし。

汎用jpドメインなら譲渡手続きはちゃんとシステムとして存在するし個人で使ってる muu-muu だと譲渡手続きが明確に定められてるのだけど、value-domain の方はマニュアル探しても譲渡手続きの説明が見当たらず。

そちらのドメイン管理サービス (とレジストリ) の方には説明などありますか?

dadaa commented 5 months ago

@dynamis 解除してみました。どう?

dynamis commented 5 months ago

@dadaa 進行できました。そちらでの承認手続き操作をお願いします:

image

dynamis commented 5 months ago

移転完了しました!

image image

新しく chirimen 専用の cloudflare アカウントを作成、DNS セットアップ (既存レコードのインポート) して NS alex.ns.cloudflare.com, athena.ns.cloudflare.com ⇒ ricardo.ns.cloudflare.com, rosalyn.ns.cloudflare.com へと切り替え。

cloudflare 管理権限が必要な方は権限付与するのでお問い合わせください

dynamis commented 5 months ago

取りあえずこれで旧レジストリとそれに紐付く DNS がなくなっても大丈夫のはず

dynamis commented 5 months ago

自動インポートしてくれてると思った DNS 設定が全然既存の設定じゃなかったのかリダイレクトループ?になっていたので一旦 dns サーバを旧サーバ alex.ns.cloudflare.com, athena.ns.cloudflare.com に戻してから設定調査。

dynamis commented 5 months ago

取りあえず後回しにしようとしていたが、旧 DNS 設定依存とかはいつまで稼働継続するか分からないし、デプロイから新しい Cloudflare Pages 環境に揃えた:

旧 chirimen.org (github pages, 古いもの) の cloudflare pages デプロイ https://chirimen-oh.pages.dev/ デフォルトでビルド通らなかったので取りあえず build system version 2 (ruby3.2.2) ⇒ 1 (ruby 2.7.1) にしたら通った。これを archive.chirimen.org に割り当ててリンクなどを張っていく想定

tutorial.chirimen.org の cloudflare pages デプロイ https://chirimen-org.pages.dev/

_redirect rule 非互換ありそうだなと思ったらでプロログに次の warnings:

23:10:13.306 | Parsed 7 valid redirect rules.
-- | --
23:10:13.307 | Found invalid redirect lines:
23:10:13.307 | - #5: https://tutorial-chirimen-org.netlify.com/*   https://tutorial.chirimen.org/:splat 301!
23:10:13.307 | Only relative URLs are allowed. Skipping absolute URL https://tutorial-chirimen-org.netlify.com/*.
23:10:13.307 | - #15: /raspi/examples/polyfill/*  https://chirimen.org/chirimen-raspi3/gc/polyfill/:splat  200
23:10:13.307 | Proxy (200) redirects can only point to relative paths. Got https://chirimen.org/chirimen-raspi3/gc/polyfill/:splat
23:10:13.308 | - #16: /raspi/examples/drivers/*   https://chirimen.org/chirimen-raspi3/gc/drivers/:splat  200
23:10:13.308 | Proxy (200) redirects can only point to relative paths. Got https://chirimen.org/chirimen-raspi3/gc/drivers/:splat
23:10:13.308 | - #18: /raspi/examples/section3/*   https://chirimen.org/chirimen-raspi3/gc/i2c/:splat  200
23:10:13.308 | Proxy (200) redirects can only point to relative paths. Got https://chirimen.org/chirimen-raspi3/gc/i2c/:splat
23:10:13.308 | Info: the redirect rule /raspi/partslist → 302 /partslist could be made more performant by bringing it above any lines with splats or placeholders.
23:10:13.308 | Info: the redirect rule /raspi3/appendix0 → 302 /js/async could be made more performant by bringing it above any lines with splats or placeholders.
23:10:13.308 | Info: the redirect rule /raspi/appendix0 → 302 /js/async could be made more performant by bringing it above any lines with splats or placeholders.

absolute URL ができないってのはそもそも netlify 向けのハックなので削除すれば良い Proxy (200) redirects ダメよってのは修正が必要かも

CF Pages へのカスタムドメイン設定前:

image

カスタム設定に伴う変更

image

設定後 DNS 設定

image

取りあえずここで namesever 再度 switch

gurezo commented 5 months ago
dynamis commented 5 months ago

tutorial.chirimen.org にアクセスできませんか。手元の複数経路と監視サービスは問題ないのですが、一部のDNSキャッシュに駄目なの残ってたりしたかな。。。?TTL=autoで正確な挙動未確認ですがそんなに長くは残らないと思ってたのですが、明日以降も継続して駄目なら調べるのでお知らせください。

404の挙動やアクセスログからもnetlifyからcloudflareデプロイ側に切り替わってるなと確認していたつもりなのですが。

暫く切り替え安定が確認できたら当初のarchiveに移す&メインサイトをtutorialに差し替えるとかの作業に進めたいなと思ってます。

kou029w commented 5 months ago

https://chirimen.org/PiZeroWebSerialConsole/ https://chirimen.org/chirimen-drivers/ など、/リポジトリ名/ が現在 404 Not Found となってしまっているようです

dynamis commented 5 months ago

tutorial サイトに切り替えるには chirimen/gc などのサブディレクトリで使われているものがあったので単純差し換えはまだ出来ないな、と思っていたところでした。

など、/リポジトリ名/ が現在 404 Not Found となってしまっているようです

そうですよね。ディレクトリベースの gh-pages も結構利用されていたのでそれらは CF にする場合は個別デプロイ / リダイレクト設定をする必要がありますね。影響範囲調査と対応方針検討を終えるまで一旦 gh-pages (DNS 設定はこちらを参照) に戻しました:

CNAME @ chirimen-oh.pages.dev ⇒ A @ 185.199.108.153 A @ 185.199.109.153 A @ 185.199.110.153 A @ 185.199.111.153

アクセス出来るようになったが証明書が (chirimen.org 向けではなく github.io 向けとされて) エラーになってるのでカスタムドメインの設定を続けて実施。

org での Verified domains に chirimen.org を追加 (出来るように DNS TXT レコードの設定と verify 処理を実施) https://github.com/organizations/chirimen-oh/settings/pages

image

しかし個別リポジトリ側の pages 設定にカスタムドメインの設定がでてこない。。。

https://docs.github.com/ja/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site image

image

https://docs.github.com/ja/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages#https-errors

カスタムドメインを設定した後、サイトが HTTPS 経由で利用可能になるには最長 1 時間かかります。

ということだからだろうか。少し待ちながら継続調査

dynamis commented 5 months ago

tutorial サイトのためのリポジトリの設定を見ていた。DNS Check in Progress とあるので素直に 1 時間待つ:

image

dynamis commented 5 months ago

gh-pages を使ってきているリポジトリと設定画面 URL をリストアップ:

CF pages にデプロイしてサブディレクトリ gh-pages からはリダイレクト設定を書くという対応をすれば良いかと思ったのだが、ちょっと多いな。。。

しかし gh-pages 継続利用しつつ tutorial サイトを apex ドメインに切り替える場合 netlify/cloudflare では使えていた/使っている機能 (_redired など) が使えなくし、jekyll 縛りがあって docusaurus とか他のドキュメントサイトに使いやすいフレームワークへの移行も不可能。

ちょっと多いけど頑張って片っ端から CF pages (サブドメインデプロイの gh-pages でも勿論構わない) にデプロイしていってサブディレクトリからはリダイレクトする設定を書いた上で tutorial サイトを apex ドメインに切り替えるという手順を踏む以外には利用中の全機能を維持/今後の更なる柔軟性を確保する手段はなさそうかな。。。

kou029w commented 5 months ago

デプロイについて:

jekyll 縛りがあって

この条件はGitHub Actionsを使用して回避できるかとは思いますよ

参考リンク:

dynamis commented 5 months ago

この条件はGitHub Actionsを使用して回避できるかとは思いますよ

そうそう、そうでした!Actions 利用制限のある org とかだったりもしませんものね。 リダイレクトは使えなくて構わない (あるいは meta でのリダイレクトで許容できる) と判断できれば tutorial のデプロイを gh-pages で行う形で apex ドメインに使えるようにするのもありですね。

workers 系の処理がほしい場面があっても (今はまだ使ってないはずなので) それはサブドメインで使うとかでもきっと大丈夫

dynamis commented 5 months ago

gh-pages の DNS check が完了し chirimen.org での HTTPS 証明書エラーが出なくなり、ひとまず障害は一通り解消できただろうか。

もう少し現状で問題が残ってないか様子を見た上で、gh-pages に寄せるべきか CF pages に寄せるべきか迷う/判断し、apex ドメインを tutorial サイトに差し替える作業を進める。

www.chirimen.org の設定がないよって gh-pages からは指摘されてるが以前からそれは使ってなかったはず。 試しに tutorial サイトを www.chirimen.org 側に cf pages デプロイした状態にしておいてみる / 試験環境として使ってみる (後日 bulk redirect 設定で chirimen.org に飛ばすことを想定)

DNSSEC の有効化は一旦保留中。MX レコードの設定はしてないがメールとしては使ってなかったという理解で正しいだろうか (もし Google Workspace とか使ってたら設定します...)