Compare commits
4 Commits
ci-codeql
...
d1d4c5f062
| Author | SHA1 | Date | |
|---|---|---|---|
| d1d4c5f062 | |||
| cc01b5bb96 | |||
| 39c6664a78 | |||
| 75e527737c |
@@ -1,23 +0,0 @@
|
||||
name: CodeQL Analysis
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
codeql-analysis:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v3
|
||||
with:
|
||||
languages: "go"
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v3
|
||||
@@ -38,7 +38,6 @@ domains:
|
||||
- www
|
||||
check_interval: 0 0 0/6 * * * *
|
||||
mode: Scheduled
|
||||
log_level: info
|
||||
```
|
||||
|
||||
The config file is expected to be in the same directory as the binary and called `config.yaml`. For the OCR image, the root directory is `/app`.
|
||||
|
||||
@@ -21,4 +21,3 @@ domains:
|
||||
- www
|
||||
check_interval: 0 0 0/6 * * * *
|
||||
mode: Scheduled
|
||||
log_level: info
|
||||
|
||||
@@ -3,7 +3,6 @@ package realDynDns
|
||||
import (
|
||||
"fmt"
|
||||
"log/slog"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"realdnydns/pkg/config"
|
||||
@@ -71,17 +70,10 @@ func (c *ChangeDetector) detectAndApplyChanges() (int, error) {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
var wg sync.WaitGroup
|
||||
|
||||
numberUpdatedChannel := make(chan int)
|
||||
var numberUpdated int
|
||||
|
||||
for _, domain := range c.domains {
|
||||
for _, subdomain := range domain.Subdomains {
|
||||
wg.Add(1)
|
||||
|
||||
go func(domain config.DomainConfig, subdomain string) {
|
||||
defer wg.Done()
|
||||
|
||||
c.logger.Info("Checking record",
|
||||
slog.String("tld", domain.TLD),
|
||||
slog.String("subdomain", subdomain),
|
||||
@@ -93,7 +85,7 @@ func (c *ChangeDetector) detectAndApplyChanges() (int, error) {
|
||||
slog.String("tld", domain.TLD),
|
||||
slog.String("subdomain", subdomain),
|
||||
)
|
||||
return
|
||||
return numberUpdated, err
|
||||
}
|
||||
|
||||
if currentRecord.IP != externalIp.String() {
|
||||
@@ -112,7 +104,7 @@ func (c *ChangeDetector) detectAndApplyChanges() (int, error) {
|
||||
c.logger.Warn("Failed to send notification",
|
||||
slog.String("error", err.Error()),
|
||||
)
|
||||
return
|
||||
return numberUpdated, err
|
||||
}
|
||||
|
||||
c.logger.Info("Updating record",
|
||||
@@ -128,23 +120,11 @@ func (c *ChangeDetector) detectAndApplyChanges() (int, error) {
|
||||
slog.String("tld", domain.TLD),
|
||||
slog.String("subdomain", subdomain),
|
||||
)
|
||||
return
|
||||
return numberUpdated, err
|
||||
}
|
||||
|
||||
numberUpdatedChannel <- 1
|
||||
}
|
||||
}(domain, subdomain)
|
||||
numberUpdated++
|
||||
}
|
||||
}
|
||||
|
||||
go func() {
|
||||
wg.Wait()
|
||||
close(numberUpdatedChannel)
|
||||
}()
|
||||
|
||||
numberUpdated := 0
|
||||
for v := range numberUpdatedChannel {
|
||||
numberUpdated += v
|
||||
}
|
||||
|
||||
c.logger.Info("Run completed", slog.Int("number_of_changes", numberUpdated))
|
||||
|
||||
Reference in New Issue
Block a user