- 投稿日:
🚀 やりたいこと
- ApexドメインのDNSレコードで次の振り分けを行いたい
- AレコードをGitHub Pagesへ
- MXレコードをさくらのレンタルサーバーにあるメールボックスへ
⚗️ ハマったところ
以下のようにMXレコードをIPで指定するとメールが受信できないケースがありました具体的にはさくらのメールボックスやGMailから投げると届くのですが、WantedlyやMeetyからの自動配信メールが届かない状態でした原因はDNSレコードの状態がRFC 1035に準拠しない事と思われます
ホスト | レコードタイプ | データ |
---|---|---|
lycolia.info | A | 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 |
lycolia.info | MX | 10 163.43.80.45. |
🛠️ 解決方法
Aレコードにメール用のサブドメインを追加し、これにIPを設定し、MXレコードからはそのドメインを参照することで上手くいくようになりますサブドメインはmail.
である必要はなく、別になんでもいいみたいですWebサーバーとメールサーバーが同じならApexドメインでも行けるっぽい
ホスト | レコードタイプ | データ |
---|---|---|
lycolia.info | A | 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 |
mail.lycolia.info | A | 163.43.80.45 |
lycolia.info | MX | 10 mail.lycolia.info. |
📖 参考情報
- ウェブとメールを別々のサーバで運営したい?・・・それ、ゾーン設定で出来ます! | さくらのナレッジ
- IPで指定すると上手く行かない的なことが書いてあります
- ググってたら偶々公式が引っかかったのですが、公式にこういう情報があるとありがてぇですね
- RFC 1035
- MXレコードには16bit整数で表現される優先度とドメイン名を定義する事、優先度は低い程優先されるということが書かれています
- 投稿日:
pull_request
イベントの公式リファレンスが手薄くイベントの意味を明示してないので動きを実際に確認したものをメモ程度に。基本は意味のままだと思いますが…
opened: PRが開いたとき
reopened: PRが開き直されたとき
synchronize: PRに対してPushが走ったとき
- 公式リファレンス
特定ブランチから特定ブランチへのPRを阻止する
- サンプルで作っただけなので中身は適当
pull_request
はbranches
を先頭に書かないと、指定ブランチ以外でも走るので注意
name: testing on opend PR to main
on:
pull_request:
branches:
- main
types:
- opened
- reopened
- synchronize
jobs:
# 事前ブランチチェック
before-check:
runs-on: ubuntu-latest
steps:
- name: fail case
if: startsWith(github.head_ref, 'test/') && github.base_ref == 'main'
# test/* ブランチから main ブランチ宛である場合
# exit 1で終了することで Workflow を failure 扱いにする
# https://docs.github.com/ja/actions/creating-actions/setting-exit-codes-for-actions
run: exit 1
# 前の if に入らなければ、そのまま次のジョブにつながる
after-exec:
# 指定されたジョブの成功を要求、失敗している場合、このジョブを実行しない
# 必然的に線形実行になる(並列では走らない)
needs: [before-check]
runs-on: ubuntu-latest
steps:
- name: TEST!
run: echo "RUN after-exec"
- 投稿日:
具体的にはref('SomeReference').once('value')
の結果を取得する
確認環境
Env | Ver |
---|---|
Chrome | 91.0.4472.77 |
Firebase SDK | 8.6.2 |
サンプルコード
top level awaitが使える
// apps[]から使いたいのを取る
const dbInstance = firebase.apps[0]
// DB参照を取る
const dbRef = firebase.database(dbInstance)
// 読み取る場合、書き込みは.set()とかする
(await dbRef.ref('/foo/bar').once('value')).val()
- 投稿日:
レンタルサーバーだってリッチにしたい!という想いの記事です。
やりたいこと
zsh
が使えるdircolors
が使える(ls
の色分けができる)nano
が使える
zshの導入
.zshrc
の編集については各々の設定があると思うので適宜読み替えてください
chsh -s /usr/local/bin/zsh
.zshrc
一式を突っ込む- https://github.com/Lycolia/my-zsh-conf
.zshrc
のfor sakura internet
以下のコメントを外して有効化するcommand not found: dircolors
を解消するために次項の手順でcoreutils
を導入する
coreutilsの導入
GNU lsとdircolorsの導入により、ls
に色付けが出来るようにします
mkdir local
wget https://ftp.gnu.org/gnu/coreutils/coreutils-9.2.tar.xz
xz -dc coreutils-9.2.tar.xz | tar xf -
cd coreutils-9.2/
./configure --prefix=/home/<user-name>/local/
make
make install
nanoの導入
wget https://www.nano-editor.org/dist/v7/nano-7.2.tar.xz
xz -dc nano-7.2.tar.xz | tar xf -
cd nano-7.2/
./configure --prefix=/home/<user-name>/local/ --enable-color --enable-nanorc
make
make install
cp doc/sample.nanorc ~/.nanorc
# オートインデント有効化
perl -i -pe 's/^# (set autoindent)/$1/' ~/.nanorc
# シンタックスハイライト有効化
perl -i -pe 's/^# (include .+\/local\/share\/nano\/\*.nanorc)/$1/' ~/.nanorc
- 投稿日:
取り敢えず各ジョブの中で使うやつ
今まで使っていた::set-output
は2023-05-31に廃止される予定なので置き換える必要があります。
GitHub Actions: Deprecating save-state and set-output commands
サンプルコード
- 設定方法:
echo "<KEY>=<VALUE>" >> "$GITHUB_OUTPUT"
- 参照方法:
steps.<ID>.outputs.{KEY}
name: variable example
on:
workflow_dispatch:
jobs:
ubuntu-testing:
runs-on: ubuntu-latest
steps:
- id: example
run: echo "value=hoge" >> "$GITHUB_OUTPUT"
- name: disp
run: echo ${{ steps.example.outputs.value }}