The workflow previously ran `go get auth-proxy/src` to download the sqlite driver
separately before downloading dependencies. This step has been removed and replaced
with `go mod tidy`, which is the idiomatic Go approach for managing dependencies.
It ensures go.mod is properly formatted and removes unused dependencies, eliminating
the need for manual driver installation steps.
Add explicit go get for the auth-proxy/src package to ensure the
SQLite driver is available before running go mod download, fixing
dependency resolution during CI builds.
- Add go vet and go test steps to CI workflow
- Update Dockerfile and CI build commands to target ./src
- Comment out build jobs for Linux and Windows
- Fix build paths across the workflow configuration
Use local caching for Docker builds in CI pipeline to simplify
configuration and improve build performance by storing cache
in /tmp/.buildx-cache instead of pushing to registry.
Enable registry-based caching for Docker builds by adding
--cache-from and --cache-to flags. This reuses cached layers
from previous builds to speed up build times and reduce network
usage.
- Add GET /api/whitelist/perm/list to list permanent whitelisted entries
- Implement permWhitelistListHandler with API key verification
- Rename permanent_whitelist table to perm_whitelist for consistency
- Update default DB path from ./data to /data
- Comment out build job in CI/CD workflow
Update the CI/CD workflow to reference the full path to Go binaries
(/usr/local/go/bin/go, gofmt) instead of relying on PATH resolution.
This ensures the correct Go version is used when running in the
Docker container where the binary location may differ from the
default PATH expectation.
Remove the explicit Go installation step in the CI pipeline since Go is already available in the container. The Go proxy mirror configuration remains in place to maintain dependency resolution behavior.
The install.sh script expects plain version numbers without the 'v' prefix, so using 'v1.64.8' causes the version string to be interpreted incorrectly. Updated the version format to match the expected format '1.64.8'.
Update GOPROXY to use go.iranserver.com instead of go.devneeds.ir for dependency downloads.
Disable GOSUMDB validation to speed up the build process and avoid potential checksum mismatches.
Rename GITEA_CLONE_URL to G_CLONE_URL in all checkout steps
and update GITEA_TOKEN and GITEA_USERNAME to G_TOKEN and
G_USERNAME for Docker registry authentication. This standardizes
secret naming across the CI/CD pipeline.
Add GitHub Actions workflow that performs linting with golangci-lint,
formats check, cross-compilation for linux/amd64, linux/arm64, and
windows/amd64, and multi-platform docker image publishing to Gitea
registry on pushes to main/master branches.