Compare commits

..

1 Commits

Author SHA1 Message Date
Stavros 57c573502d chore: bump go to 1.26.4 2026-06-09 11:44:03 +03:00
6 changed files with 12 additions and 19 deletions
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
- name: Setup go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
with:
go-version: "^1.26.0"
go-version: "^1.26.4"
- name: Go dependencies
run: go mod download
+2 -2
View File
@@ -67,7 +67,7 @@ jobs:
- name: Install go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
with:
go-version: "^1.26.0"
go-version: "^1.26.4"
- name: Install frontend dependencies
working-directory: ./frontend
@@ -112,7 +112,7 @@ jobs:
- name: Install go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
with:
go-version: "^1.26.0"
go-version: "^1.26.4"
- name: Install frontend dependencies
working-directory: ./frontend
+2 -2
View File
@@ -43,7 +43,7 @@ jobs:
- name: Install go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
with:
go-version: "^1.26.0"
go-version: "^1.26.4"
- name: Install frontend dependencies
working-directory: ./frontend
@@ -85,7 +85,7 @@ jobs:
- name: Install go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
with:
go-version: "^1.26.0"
go-version: "^1.26.4"
- name: Install frontend dependencies
working-directory: ./frontend
+1 -1
View File
@@ -8,7 +8,7 @@ Contributing to Tinyauth is straightforward. Follow the steps below to set up a
## Requirements
- pnpm
- Golang v1.24.0 or later
- Golang v1.26.4 or later
- Git
- Docker
- Make
+1 -1
View File
@@ -8,7 +8,7 @@ import (
)
func (app *BootstrapApp) setupServices() error {
ldapService, err := service.NewLdapService(app.log, app.config, app.ctx, app.ding)
ldapService, err := service.NewLdapService(app.log, app.config, app.ding)
if err != nil {
app.log.App.Warn().Err(err).Msg("Failed to initialize LDAP connection, will continue without it")
+5 -12
View File
@@ -17,7 +17,6 @@ import (
type LdapService struct {
log *logger.Logger
config model.Config
ctx context.Context
conn *ldapgo.Conn
mutex sync.RWMutex
@@ -27,7 +26,6 @@ type LdapService struct {
func NewLdapService(
log *logger.Logger,
config model.Config,
ctx context.Context,
dg *ding.Ding,
) (*LdapService, error) {
if config.LDAP.Address == "" {
@@ -37,7 +35,6 @@ func NewLdapService(
ldap := &LdapService{
log: log,
config: config,
ctx: ctx,
}
// Check whether authentication with client certificate is possible
@@ -66,9 +63,7 @@ func NewLdapService(
_, err := ldap.connect()
// Warn: This will hang the tinyauth startup for a good 45 seconds until it fails
if err != nil {
err = ldap.reconnect(10 * time.Second)
return nil, fmt.Errorf("failed to connect to ldap server: %w", err)
}
@@ -84,7 +79,7 @@ func NewLdapService(
err := ldap.heartbeat()
if err != nil {
ldap.log.App.Warn().Err(err).Msg("LDAP connection heartbeat failed, attempting to reconnect")
if reconnectErr := ldap.reconnect(5 * time.Second); reconnectErr != nil {
if reconnectErr := ldap.reconnect(); reconnectErr != nil {
ldap.log.App.Error().Err(reconnectErr).Msg("Failed to reconnect to LDAP server")
continue
}
@@ -252,19 +247,17 @@ func (ldap *LdapService) heartbeat() error {
return nil
}
func (ldap *LdapService) reconnect(interval time.Duration) error {
func (ldap *LdapService) reconnect() error {
ldap.log.App.Info().Msg("Attempting to reconnect to LDAP server")
exp := backoff.NewExponentialBackOff()
exp.InitialInterval = interval
exp.InitialInterval = 500 * time.Millisecond
exp.RandomizationFactor = 0.1
exp.Multiplier = 1.5
exp.Reset()
operation := func() (*ldapgo.Conn, error) {
if ldap.conn != nil {
ldap.conn.Close()
}
ldap.conn.Close()
conn, err := ldap.connect()
if err != nil {
return nil, err
@@ -272,7 +265,7 @@ func (ldap *LdapService) reconnect(interval time.Duration) error {
return conn, nil
}
_, err := backoff.Retry(ldap.ctx, operation, backoff.WithBackOff(exp), backoff.WithMaxTries(3))
_, err := backoff.Retry(context.TODO(), operation, backoff.WithBackOff(exp), backoff.WithMaxTries(3))
if err != nil {
return err