asxpio/db/migrations/010_payout_addresses.rb
Sergei Poljanski 1dd8f9081f
All checks were successful
Build and Deploy to Production / test (push) Successful in 26s
Build and Deploy to Production / build (push) Successful in 59s
Build and Deploy to Production / deploy (push) Successful in 38s
invoices: payout addresses in the database
Default crypto payout addresses lived in the CRYPTO_ADDRESSES and
LTC_ADDRESS Forgejo secrets, so changing one meant editing a secret and
redeploying. Keep them in a payout_addresses table edited at
/admin/invoices/payout-addresses (read to view, write to change, every
change audited), and prefill the new-invoice form from it.

The old env values are imported once on the first boot with an empty
table, so the current addresses carry over; after that the secrets can
be removed.

Assisted-by: Claude:opus-5
2026-10-10 08:36:32 +04:00

13 lines
453 B
Ruby

Sequel.migration do
change do
# Default crypto payout address per CryptoAsset code, prefilled into the
# new-invoice form. Seeded once from the old CRYPTO_ADDRESSES/LTC_ADDRESS
# env; managed at /admin/invoices/payout-addresses since.
create_table(:payout_addresses) do
String :coin, primary_key: true
String :address, null: false
String :updated_by
DateTime :updated_at, null: false
end
end
end