mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-06-21 16:40:52 +00:00
Extract the username and password from the mirror url (#7651)
* Explode out mirror username and password * Update models/repo_mirror.go * Just roundtrip the password * remove unused declaration * Update templates/repo/settings/options.tmpl
This commit is contained in:
parent
867f46f78e
commit
bee1227b2f
5 changed files with 69 additions and 10 deletions
|
@ -7,6 +7,7 @@ package models
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"net/url"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
|
@ -119,7 +120,7 @@ func sanitizeOutput(output, repoPath string) (string, error) {
|
|||
return util.SanitizeMessage(output, remoteAddr), nil
|
||||
}
|
||||
|
||||
// Address returns mirror address from Git repository config without credentials.
|
||||
// Address returns mirror address from Git repository config with credentials censored.
|
||||
func (m *Mirror) Address() string {
|
||||
m.readAddress()
|
||||
return util.SanitizeURLCredentials(m.address, false)
|
||||
|
@ -131,6 +132,41 @@ func (m *Mirror) FullAddress() string {
|
|||
return m.address
|
||||
}
|
||||
|
||||
// AddressNoCredentials returns mirror address from Git repository config without credentials.
|
||||
func (m *Mirror) AddressNoCredentials() string {
|
||||
m.readAddress()
|
||||
u, err := url.Parse(m.address)
|
||||
if err != nil {
|
||||
// this shouldn't happen but just return it unsanitised
|
||||
return m.address
|
||||
}
|
||||
u.User = nil
|
||||
return u.String()
|
||||
}
|
||||
|
||||
// Username returns the mirror address username
|
||||
func (m *Mirror) Username() string {
|
||||
m.readAddress()
|
||||
u, err := url.Parse(m.address)
|
||||
if err != nil {
|
||||
// this shouldn't happen but if it does return ""
|
||||
return ""
|
||||
}
|
||||
return u.User.Username()
|
||||
}
|
||||
|
||||
// Password returns the mirror address password
|
||||
func (m *Mirror) Password() string {
|
||||
m.readAddress()
|
||||
u, err := url.Parse(m.address)
|
||||
if err != nil {
|
||||
// this shouldn't happen but if it does return ""
|
||||
return ""
|
||||
}
|
||||
password, _ := u.User.Password()
|
||||
return password
|
||||
}
|
||||
|
||||
// SaveAddress writes new address to Git repository config.
|
||||
func (m *Mirror) SaveAddress(addr string) error {
|
||||
repoPath := m.Repo.RepoPath()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue