From 20de8e5d3a5d113f61997f9287447acfba765c34 Mon Sep 17 00:00:00 2001 From: Agent Date: Mon, 6 Apr 2026 08:19:54 +0000 Subject: [PATCH] fix: fix: disinto init change-password triggers must_change_password despite --must-change-password=false (#267) --- bin/disinto | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/bin/disinto b/bin/disinto index ece30cb..bff0810 100755 --- a/bin/disinto +++ b/bin/disinto @@ -708,11 +708,15 @@ setup_forge() { fi else echo "Admin user: ${admin_user} (already exists)" - # Reset password to the persisted value so basic-auth works (#158) - _forgejo_exec forgejo admin user change-password \ - --username "${admin_user}" \ - --password "${admin_pass}" \ - --must-change-password=false + # Only reset password if basic auth fails (#158, #267) + # Forgejo 11.x may ignore --must-change-password=false, blocking token creation + if ! curl -sf --max-time 5 -u "${admin_user}:${admin_pass}" \ + "${forge_url}/api/v1/user" >/dev/null 2>&1; then + _forgejo_exec forgejo admin user change-password \ + --username "${admin_user}" \ + --password "${admin_pass}" \ + --must-change-password=false + fi fi # Preserve password for Woodpecker OAuth2 token generation (#779) _FORGE_ADMIN_PASS="$admin_pass" -- 2.49.1