some linting

This commit is contained in:
6543 2023-02-10 03:43:33 +01:00
parent 7ce46167ff
commit bfe054f734
8 changed files with 25 additions and 9 deletions

1
.gitignore vendored
View File

@ -1,4 +1,5 @@
.idea/ .idea/
.cache/
*.iml *.iml
key-database.pogreb/ key-database.pogreb/
acme-account.json acme-account.json

View File

@ -12,9 +12,23 @@ linters-settings:
- hugeParam - hugeParam
linters: linters:
disable-all: true
enable: enable:
- unconvert - unconvert
- gocritic - gocritic
- gofumpt
- bidichk
- errcheck
- gofmt
- goimports
- gosimple
- govet
- ineffassign
- misspell
- staticcheck
- typecheck
- unused
- whitespace
run: run:
timeout: 5m timeout: 5m

View File

@ -19,7 +19,6 @@ build-tag VERSION:
CGO_ENABLED=1 go build -tags '{{TAGS}}' -ldflags '-s -w -X "codeberg.org/codeberg/pages/server/version.Version={{VERSION}}" {{CGO_FLAGS}}' -v -o build/codeberg-pages-server ./ CGO_ENABLED=1 go build -tags '{{TAGS}}' -ldflags '-s -w -X "codeberg.org/codeberg/pages/server/version.Version={{VERSION}}" {{CGO_FLAGS}}' -v -o build/codeberg-pages-server ./
lint: tool-golangci tool-gofumpt lint: tool-golangci tool-gofumpt
[ $(gofumpt -extra -l . | wc -l) != 0 ] && { echo 'code not formated'; exit 1; }; \
golangci-lint run --timeout 5m --build-tags integration golangci-lint run --timeout 5m --build-tags integration
# TODO: run editorconfig-checker # TODO: run editorconfig-checker
@ -41,7 +40,7 @@ tool-gofumpt:
fi fi
test: test:
go test -race -tags '{{TAGS}}' codeberg.org/codeberg/pages/server/... codeberg.org/codeberg/pages/html/ go test -race -cover -tags '{{TAGS}}' codeberg.org/codeberg/pages/server/... codeberg.org/codeberg/pages/html/
test-run TEST: test-run TEST:
go test -race -tags '{{TAGS}}' -run "^{{TEST}}$" codeberg.org/codeberg/pages/server/... codeberg.org/codeberg/pages/html/ go test -race -tags '{{TAGS}}' -run "^{{TEST}}$" codeberg.org/codeberg/pages/server/... codeberg.org/codeberg/pages/html/

View File

@ -37,7 +37,7 @@ var BlacklistedPaths = []string{
// Serve sets up and starts the web server. // Serve sets up and starts the web server.
func Serve(ctx *cli.Context) error { func Serve(ctx *cli.Context) error {
// Initalize the logger. // Initialize the logger.
logLevel, err := zerolog.ParseLevel(ctx.String("log-level")) logLevel, err := zerolog.ParseLevel(ctx.String("log-level"))
if err != nil { if err != nil {
return err return err

View File

@ -350,6 +350,7 @@ func obtainCert(acmeClient *lego.Client, domains []string, renew *certificate.Re
} }
func SetupAcmeConfig(acmeAPI, acmeMail, acmeEabHmac, acmeEabKID string, acmeAcceptTerms bool) (*lego.Config, error) { func SetupAcmeConfig(acmeAPI, acmeMail, acmeEabHmac, acmeEabKID string, acmeAcceptTerms bool) (*lego.Config, error) {
// TODO: make it a config flag
const configFile = "acme-account.json" const configFile = "acme-account.json"
var myAcmeAccount AcmeAccount var myAcmeAccount AcmeAccount
var myAcmeConfig *lego.Config var myAcmeConfig *lego.Config

View File

@ -13,6 +13,7 @@ import (
"github.com/go-acme/lego/v4/certcrypto" "github.com/go-acme/lego/v4/certcrypto"
"github.com/go-acme/lego/v4/certificate" "github.com/go-acme/lego/v4/certificate"
"github.com/rs/zerolog/log"
"codeberg.org/codeberg/pages/server/database" "codeberg.org/codeberg/pages/server/database"
) )
@ -75,7 +76,7 @@ func mockCert(domain, msg, mainDomainSuffix string, keyDatabase database.CertDB)
databaseName = mainDomainSuffix databaseName = mainDomainSuffix
} }
if err := keyDatabase.Put(databaseName, res); err != nil { if err := keyDatabase.Put(databaseName, res); err != nil {
panic(err) log.Error().Err(err)
} }
tlsCertificate, err := tls.X509KeyPair(res.Certificate, res.PrivateKey) tlsCertificate, err := tls.X509KeyPair(res.Certificate, res.PrivateKey)

View File

@ -43,7 +43,7 @@ func (p tmpDB) Compact() (string, error) {
} }
func (p tmpDB) Items(page, pageSize int) ([]*Cert, error) { func (p tmpDB) Items(page, pageSize int) ([]*Cert, error) {
panic("Items not implemented for tmpDB") return nil, fmt.Errorf("items not implemented for tmpDB")
} }
func NewTmpDB() (CertDB, error) { func NewTmpDB() (CertDB, error) {

View File

@ -17,17 +17,17 @@ func (o *Options) GetBranchTimestamp(giteaClient *gitea.Client) (bool, error) {
// Get default branch // Get default branch
defaultBranch, err := giteaClient.GiteaGetRepoDefaultBranch(o.TargetOwner, o.TargetRepo) defaultBranch, err := giteaClient.GiteaGetRepoDefaultBranch(o.TargetOwner, o.TargetRepo)
if err != nil { if err != nil {
log.Err(err).Msg("Could't fetch default branch from repository") log.Err(err).Msg("Couldn't fetch default branch from repository")
return false, err return false, err
} }
log.Debug().Msgf("Succesfully fetched default branch %q from Gitea", defaultBranch) log.Debug().Msgf("Successfully fetched default branch %q from Gitea", defaultBranch)
o.TargetBranch = defaultBranch o.TargetBranch = defaultBranch
} }
timestamp, err := giteaClient.GiteaGetRepoBranchTimestamp(o.TargetOwner, o.TargetRepo, o.TargetBranch) timestamp, err := giteaClient.GiteaGetRepoBranchTimestamp(o.TargetOwner, o.TargetRepo, o.TargetBranch)
if err != nil { if err != nil {
if !errors.Is(err, gitea.ErrorNotFound) { if !errors.Is(err, gitea.ErrorNotFound) {
log.Error().Err(err).Msg("Could not get latest commit's timestamp from branch") log.Error().Err(err).Msg("Could not get latest commit timestamp from branch")
} }
return false, err return false, err
} }
@ -36,7 +36,7 @@ func (o *Options) GetBranchTimestamp(giteaClient *gitea.Client) (bool, error) {
return false, fmt.Errorf("empty response") return false, fmt.Errorf("empty response")
} }
log.Debug().Msgf("Succesfully fetched latest commit's timestamp from branch: %#v", timestamp) log.Debug().Msgf("Successfully fetched latest commit timestamp from branch: %#v", timestamp)
o.BranchTimestamp = timestamp.Timestamp o.BranchTimestamp = timestamp.Timestamp
o.TargetBranch = timestamp.Branch o.TargetBranch = timestamp.Branch
return true, nil return true, nil