fix(forgejo-runner): обычные job-поды доверяют внутреннему CA #146
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/runner-default-ca"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Что было
После переключения адреса в MikroTik имя
git.grachevko.ruвнутри кластера обслуживает новый шлюз, и его лист подписан внутренним CA. В подах метокubuntu-latest/defaultэтот CA не смонтирован, поэтому Node-экшены теряют доверие к сертификату и падают:Это первый красный прогон — №100 (до этого, в №98, та же джоба была зелёной, потому что имя смотрело в старый кластер, а там тот же хост отдаёт лист Let's Encrypt — публичный). Ломает любой новый PR, не только конкретный, и той же причиной упрётся следующая за фильтром джоба Flate — её
actions/checkoutтоже ходит наgit.grachevko.ruчерез Node.Доказательства (проверено вручную):
openssl s_client -connect 192.168.1.2:443 -servername git.grachevko.ru→issuer=Let's Encrypt; то же к 192.168.40.11 →issuer=CN=internal-ca;node -e "fetch('https://git.grachevko.ru/api/v1/version')"→fetch failed, а сNODE_EXTRA_CA_CERTS=/etc/ssl/internal-ca/ca.crt→ код 200.Что правит PR
В
podspec-default.yaml(меткиubuntu-latestиdefault) добавляется то, что уpodspec-dindуже есть:internal-caсмонтирован в/etc/ssl/internal-ca(readOnly);NODE_EXTRA_CA_CERTSиSSL_CERT_FILE— оба на/etc/ssl/internal-ca/ca.crt.Бандл
internal-caвключает и публичные корни (useDefaultCAs), поэтому доступ к GitHub и апстримным реестрам не страдает.Проверки
flate test all -p ./kubernetes/flux/cluster— 125 passed.f7d8bbfceff50ad9fde9815ace0cb9d38c838dc6, +18 строк, один файл, других изменений нет.Чего ожидать после мёржа
Первым прогоном этот PR будет с красным чеком
Flate - Filter: проверка ломается ровно той причиной, которую лечит, — исправленный podspec начнёт действовать только с момента мёржа. После мёржа перезапуск любого прогона должен становиться зелёным; проверю первым же.Заодно после этого MR: PR #145 придётся перебазировать (оба трогают этот файл), а из воркфлоу сборки образа в
container-imagesможно убрать собственныйNODE_EXTRA_CA_CERTS— это отдельной правкой, когда захочешь.