From e41a8532fc3787c8d547ed3f495e3805c25f8ed9 Mon Sep 17 00:00:00 2001 From: ngovinh2k2 Date: Fri, 23 Jan 2026 10:36:32 +0700 Subject: [PATCH 1/2] feat: build multi-arch --- .github/workflows/cd-build-image.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/cd-build-image.yml b/.github/workflows/cd-build-image.yml index f29764a..b28b882 100644 --- a/.github/workflows/cd-build-image.yml +++ b/.github/workflows/cd-build-image.yml @@ -19,6 +19,14 @@ jobs: uses: actions/checkout@v4 with: ref: ${{ github.event.release.tag_name }} + + # Enable multi-arch + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + # Enable buildx + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 # Login to GHCR - name: Login to GHCR @@ -46,6 +54,7 @@ jobs: context: . file: ./Dockerfile push: true + platforms: linux/amd64,linux/arm64 tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} secrets: | From 3b3a1cd1dbb88bbbad7bf2579df892ed24191601 Mon Sep 17 00:00:00 2001 From: ngovinh2k2 Date: Tue, 27 Jan 2026 13:57:57 +0700 Subject: [PATCH 2/2] fix: can not change variable from env --- internal/config/config.go | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/internal/config/config.go b/internal/config/config.go index 4850eda..44a3fc6 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -58,21 +58,20 @@ type Db struct { // LoadConfig loads configuration from file and environment variables func LoadConfig() (*Config, error) { - _ = godotenv.Load(".env") - var cfg Config vp := viper.New() vp.SetConfigFile("configs/config.yaml") - vp.SetEnvKeyReplacer(strings.NewReplacer(".", "_")) - vp.AutomaticEnv() - if err := vp.ReadInConfig(); err != nil { var configFileNotFoundError viper.ConfigFileNotFoundError if !errors.As(err, &configFileNotFoundError) { return nil, fmt.Errorf("error reading config file: %w", err) } } + _ = godotenv.Load(".env") + + vp.AutomaticEnv() + vp.SetEnvKeyReplacer(strings.NewReplacer(".", "_")) if err := vp.Unmarshal(&cfg); err != nil { return nil, fmt.Errorf("unmarshal error: %w", err)