Skip to content

Commit d796cb4

Browse files
committed
Merge remote-tracking branch 'giteaofficial/main'
* giteaofficial/main: [skip ci] Updated translations via Crowdin Add link for repositories README file (go-gitea#27684) Fix typo "GetLatestRunnerToken" (go-gitea#27680) Clipboard copy enhancements (go-gitea#27669) Remove unnecessary parameter (go-gitea#27671) Always delete existing scheduled action tasks (go-gitea#27662) Support allowed hosts for webhook to work with proxy (go-gitea#27655)
2 parents 649d058 + 63e391e commit d796cb4

File tree

20 files changed

+515
-83
lines changed

20 files changed

+515
-83
lines changed

models/actions/runner_token.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ func NewRunnerToken(ctx context.Context, ownerID, repoID int64) (*ActionRunnerTo
8282
})
8383
}
8484

85-
// GetLastestRunnerToken returns the latest runner token
86-
func GetLastestRunnerToken(ctx context.Context, ownerID, repoID int64) (*ActionRunnerToken, error) {
85+
// GetLatestRunnerToken returns the latest runner token
86+
func GetLatestRunnerToken(ctx context.Context, ownerID, repoID int64) (*ActionRunnerToken, error) {
8787
var runnerToken ActionRunnerToken
8888
has, err := db.GetEngine(ctx).Where("owner_id=? AND repo_id=?", ownerID, repoID).
8989
OrderBy("id DESC").Get(&runnerToken)

modules/hostmatcher/http.go

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,17 @@ import (
77
"context"
88
"fmt"
99
"net"
10+
"net/url"
1011
"syscall"
1112
"time"
1213
)
1314

1415
// NewDialContext returns a DialContext for Transport, the DialContext will do allow/block list check
1516
func NewDialContext(usage string, allowList, blockList *HostMatchList) func(ctx context.Context, network, addr string) (net.Conn, error) {
17+
return NewDialContextWithProxy(usage, allowList, blockList, nil)
18+
}
19+
20+
func NewDialContextWithProxy(usage string, allowList, blockList *HostMatchList, proxy *url.URL) func(ctx context.Context, network, addr string) (net.Conn, error) {
1621
// How Go HTTP Client works with redirection:
1722
// transport.RoundTrip URL=http://domain.com, Host=domain.com
1823
// transport.DialContext addrOrHost=domain.com:80
@@ -26,11 +31,18 @@ func NewDialContext(usage string, allowList, blockList *HostMatchList) func(ctx
2631
Timeout: 30 * time.Second,
2732
KeepAlive: 30 * time.Second,
2833

29-
Control: func(network, ipAddr string, c syscall.RawConn) (err error) {
30-
var host string
31-
if host, _, err = net.SplitHostPort(addrOrHost); err != nil {
34+
Control: func(network, ipAddr string, c syscall.RawConn) error {
35+
host, port, err := net.SplitHostPort(addrOrHost)
36+
if err != nil {
3237
return err
3338
}
39+
if proxy != nil {
40+
// Always allow the host of the proxy, but only on the specified port.
41+
if host == proxy.Hostname() && port == proxy.Port() {
42+
return nil
43+
}
44+
}
45+
3446
// in Control func, the addr was already resolved to IP:PORT format, there is no cost to do ResolveTCPAddr here
3547
tcpAddr, err := net.ResolveTCPAddr(network, ipAddr)
3648
if err != nil {

options/locale/locale_es-ES.ini

Lines changed: 376 additions & 3 deletions
Large diffs are not rendered by default.

options/locale/locale_fr-FR.ini

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -897,7 +897,7 @@ remove_account_link=Supprimer un compte lié
897897
remove_account_link_desc=La suppression d'un compte lié révoquera son accès à votre compte Gitea. Continuer ?
898898
remove_account_link_success=Le compte lié a été supprimé.
899899

900-
hooks.desc=Ajouter des déclencheurs Web qui seront amorçés pour <strong>tous les dépôts</strong> que vous possédez.
900+
hooks.desc=Ajouter des webhooks qui seront déclenchés pour <strong>tous les dépôts</strong> que vous possédez.
901901

902902
orgs_none=Vous n'êtes membre d'aucune organisation.
903903
repos_none=Vous ne possédez aucun dépôt.
@@ -1039,7 +1039,7 @@ template.items=Élément du modèle
10391039
template.git_content=Contenu Git (branche par défaut)
10401040
template.git_hooks=Déclencheurs Git
10411041
template.git_hooks_tooltip=Vous ne pouvez actuellement pas modifier ou supprimer les déclencheurs Git ajoutés. Sélectionnez cette option uniquement si vous faites confiance au modèle de dépôt.
1042-
template.webhooks=Déclencheurs Web
1042+
template.webhooks=Webhooks
10431043
template.topics=Sujets
10441044
template.avatar=Avatar
10451045
template.issue_labels=Labels de ticket
@@ -1737,7 +1737,7 @@ pulls.is_empty=Les changements sur cette branche sont déjà sur la branche cibl
17371737
pulls.required_status_check_failed=Certains contrôles requis n'ont pas réussi.
17381738
pulls.required_status_check_missing=Certains contrôles requis sont manquants.
17391739
pulls.required_status_check_administrator=En tant qu'administrateur, vous pouvez toujours fusionner cette requête de pull.
1740-
pulls.blocked_by_approvals=Cette demande d'ajout n'a pas encore suffisamment été approuvée. %d approbations obtenues sur %d.
1740+
pulls.blocked_by_approvals=Cette demande d'ajout n’est pas suffisamment approuvée. %d approbations obtenues sur %d.
17411741
pulls.blocked_by_rejection=Cette demande d’ajout nécessite des corrections sollicitées par un évaluateur officiel.
17421742
pulls.blocked_by_official_review_requests=Cette demande d’ajout a des sollicitations officielles d’évaluation.
17431743
pulls.blocked_by_outdated_branch=Cette demande d’ajout est bloquée car elle est obsolète.
@@ -2158,7 +2158,7 @@ settings.githook_edit_desc=Si un Hook est inactif, un exemple de contenu vous se
21582158
settings.githook_name=Nom du Hook
21592159
settings.githook_content=Contenu du Hook
21602160
settings.update_githook=Mettre le Hook à jour
2161-
settings.add_webhook_desc=Gitea enverra à l'URL cible des requêtes <code>POST</code> avec un type de contenu spécifié. Lire la suite dans le <a target="_blank" rel="noopener noreferrer" href="%s">guide des Webhooks</a>.
2161+
settings.add_webhook_desc=Gitea enverra à l'URL cible des requêtes <code>POST</code> avec un type de contenu spécifié. Lire la suite dans le <a target="_blank" rel="noopener noreferrer" href="%s">guide des webhooks</a>.
21622162
settings.payload_url=URL cible
21632163
settings.http_method=Méthode HTTP
21642164
settings.content_type=Type de contenu POST
@@ -2590,7 +2590,7 @@ form.create_org_not_allowed=Vous n'êtes pas autorisé à créer une organisatio
25902590
25912591
settings=Paramètres
25922592
settings.options=Organisation
2593-
settings.full_name=Non Complet
2593+
settings.full_name=Nom Complet
25942594
settings.email=Courriel de contact
25952595
settings.website=Site Web
25962596
settings.location=Localisation
@@ -2791,7 +2791,7 @@ dashboard.rebuild_issue_indexer=Reconstruire l’indexeur des tickets
27912791
users.user_manage_panel=Gestion du compte utilisateur
27922792
users.new_account=Créer un compte
27932793
users.name=Nom d'utilisateur
2794-
users.full_name=Non Complet
2794+
users.full_name=Nom Complet
27952795
users.activated=Activé
27962796
users.admin=Administrateur
27972797
users.restricted=Restreint
@@ -2828,7 +2828,7 @@ users.cannot_delete_self=Vous ne pouvez pas vous supprimer vous-même
28282828
users.still_own_repo=Cet utilisateur possède un ou plusieurs dépôts. Veuillez les supprimer ou les transférer à un autre utilisateur.
28292829
users.still_has_org=Cet utilisateur est membre d'une organisation. Veuillez le retirer de toutes les organisations dont il est membre au préalable.
28302830
users.purge=Purger l'utilisateur
2831-
users.purge_help=Éradique l'utilisateur et tous ses dépôts, organisations, commentaires et paquets.
2831+
users.purge_help=Éradique lutilisateur et tous ses dépôts, organisations, commentaires et paquets.
28322832
users.still_own_packages=Cet utilisateur possède encore un ou plusieurs paquets. Supprimez d’abord ces paquets.
28332833
users.deletion_success=Le compte a été supprimé.
28342834
users.reset_2fa=Réinitialiser l'authentification à deux facteurs
@@ -2896,7 +2896,7 @@ defaulthooks.desc=Les webhooks font automatiquement des requêtes POST HTTP à u
28962896
defaulthooks.add_webhook=Ajouter un déclencheur web par défaut
28972897
defaulthooks.update_webhook=Mettre à jour le déclencheur web par défaut
28982898
2899-
systemhooks=Rappels système
2899+
systemhooks=Webhooks système
29002900
systemhooks.desc=Les webhooks font automatiquement des requêtes POST HTTP à un serveur spécifié lorsque certains événements Gitea se déclenchent. Ceux créé ici agiront sur tous les dépôts, ce qui peux impacter les performances du système. Pour plus d’information, consultez <a target="_blank" rel="noopener" href="https://docs.gitea.com/usage/webhooks">le guide des webhooks</a>.
29012901
systemhooks.add_webhook=Ajouter un rappel système
29022902
systemhooks.update_webhook=Mettre à jour un rappel système
@@ -3459,7 +3459,7 @@ secrets=Secrets
34593459
description=Les secrets seront transmis à certaines actions et ne pourront pas être lus autrement.
34603460
none=Il n'y a pas encore de secrets.
34613461
creation=Ajouter un secret
3462-
creation.name_placeholder=Caractères alphanumériques ou tirets bas uniquement, insensibles à la casse, ne peut commencer par GITEA_ ou GITHUB_
3462+
creation.name_placeholder=Caractères alphanumériques ou tirets bas uniquement, insensibles à la casse, ne peut commencer par GITEA_ ou GITHUB_.
34633463
creation.value_placeholder=Entrez n'importe quoi. Les blancs cernant seront taillés.
34643464
creation.success=Le secret "%s" a été ajouté.
34653465
creation.failed=Impossible d'ajouter le secret.

routers/api/v1/repo/migrate.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ func Migrate(ctx *context.APIContext) {
200200
}
201201

202202
if repo != nil {
203-
if errDelete := repo_service.DeleteRepositoryDirectly(ctx, ctx.Doer, repoOwner.ID, repo.ID); errDelete != nil {
203+
if errDelete := repo_service.DeleteRepositoryDirectly(ctx, ctx.Doer, repo.ID); errDelete != nil {
204204
log.Error("DeleteRepository: %v", errDelete)
205205
}
206206
}

routers/private/actions.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ func GenerateActionsRunnerToken(ctx *context.PrivateContext) {
4141
})
4242
}
4343

44-
token, err := actions_model.GetLastestRunnerToken(ctx, owner, repo)
44+
token, err := actions_model.GetLatestRunnerToken(ctx, owner, repo)
4545
if errors.Is(err, util.ErrNotExist) || (token != nil && !token.IsActive) {
4646
token, err = actions_model.NewRunnerToken(ctx, owner, repo)
4747
if err != nil {

routers/web/shared/actions/runners.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,15 @@ func RunnersList(ctx *context.Context, opts actions_model.FindRunnerOptions) {
3535

3636
// ownid=0,repo_id=0,means this token is used for global
3737
var token *actions_model.ActionRunnerToken
38-
token, err = actions_model.GetLastestRunnerToken(ctx, opts.OwnerID, opts.RepoID)
38+
token, err = actions_model.GetLatestRunnerToken(ctx, opts.OwnerID, opts.RepoID)
3939
if errors.Is(err, util.ErrNotExist) || (token != nil && !token.IsActive) {
4040
token, err = actions_model.NewRunnerToken(ctx, opts.OwnerID, opts.RepoID)
4141
if err != nil {
4242
ctx.ServerError("CreateRunnerToken", err)
4343
return
4444
}
4545
} else if err != nil {
46-
ctx.ServerError("GetLastestRunnerToken", err)
46+
ctx.ServerError("GetLatestRunnerToken", err)
4747
return
4848
}
4949

services/actions/notifier_helper.go

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -374,11 +374,6 @@ func handleSchedules(
374374
commit *git.Commit,
375375
input *notifyInput,
376376
) error {
377-
if len(detectedWorkflows) == 0 {
378-
log.Trace("repo %s with commit %s couldn't find schedules", input.Repo.RepoPath(), commit.ID)
379-
return nil
380-
}
381-
382377
branch, err := commit.GetBranchName()
383378
if err != nil {
384379
return err
@@ -388,18 +383,20 @@ func handleSchedules(
388383
return nil
389384
}
390385

391-
rows, _, err := actions_model.FindSchedules(ctx, actions_model.FindScheduleOptions{RepoID: input.Repo.ID})
392-
if err != nil {
393-
log.Error("FindCrons: %v", err)
386+
if count, err := actions_model.CountSchedules(ctx, actions_model.FindScheduleOptions{RepoID: input.Repo.ID}); err != nil {
387+
log.Error("CountSchedules: %v", err)
394388
return err
395-
}
396-
397-
if len(rows) > 0 {
389+
} else if count > 0 {
398390
if err := actions_model.DeleteScheduleTaskByRepo(ctx, input.Repo.ID); err != nil {
399391
log.Error("DeleteCronTaskByRepo: %v", err)
400392
}
401393
}
402394

395+
if len(detectedWorkflows) == 0 {
396+
log.Trace("repo %s with commit %s couldn't find schedules", input.Repo.RepoPath(), commit.ID)
397+
return nil
398+
}
399+
403400
p, err := json.Marshal(input.Payload)
404401
if err != nil {
405402
return fmt.Errorf("json.Marshal: %w", err)

services/repository/check.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ func DeleteMissingRepositories(ctx context.Context, doer *user_model.User) error
164164
default:
165165
}
166166
log.Trace("Deleting %d/%d...", repo.OwnerID, repo.ID)
167-
if err := DeleteRepositoryDirectly(ctx, doer, repo.OwnerID, repo.ID); err != nil {
167+
if err := DeleteRepositoryDirectly(ctx, doer, repo.ID); err != nil {
168168
log.Error("Failed to DeleteRepository %-v: Error: %v", repo, err)
169169
if err2 := system_model.CreateRepositoryNotice("Failed to DeleteRepository %s [%d]: Error: %v", repo.FullName(), repo.ID, err); err2 != nil {
170170
log.Error("CreateRepositoryNotice: %v", err)

services/repository/create.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@ func CreateRepositoryDirectly(ctx context.Context, doer, u *user_model.User, opt
302302
return nil
303303
}); err != nil {
304304
if rollbackRepo != nil {
305-
if errDelete := DeleteRepositoryDirectly(ctx, doer, rollbackRepo.OwnerID, rollbackRepo.ID); errDelete != nil {
305+
if errDelete := DeleteRepositoryDirectly(ctx, doer, rollbackRepo.ID); errDelete != nil {
306306
log.Error("Rollback deleteRepository: %v", errDelete)
307307
}
308308
}

0 commit comments

Comments
 (0)