From 087b2f3c0807f08fbf250046dd791f8e83051500 Mon Sep 17 00:00:00 2001 From: Nikolay Petrov Date: Thu, 9 Jan 2025 09:47:47 -0500 Subject: [PATCH] use manifest-tool to create multi-arch image --- .github/workflows/tip.yaml | 21 +++++++++++++++++++++ flake.nix | 3 ++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/.github/workflows/tip.yaml b/.github/workflows/tip.yaml index 08e469d..3c75790 100644 --- a/.github/workflows/tip.yaml +++ b/.github/workflows/tip.yaml @@ -49,3 +49,24 @@ jobs: password: ${{ secrets.GITHUB_TOKEN }} - name: Docker push run: nix develop --command skopeo copy "docker-archive:result" "docker://ghcr.io/connet-dev/connet:latest-arm64" + + docker-multiarch: + name: Tag multi-arch + runs-on: ubuntu-latest + needs: [docker-build-x86, docker-build-arm] + steps: + - uses: actions/checkout@v4 + - uses: cachix/install-nix-action@v27 + with: + nix_path: nixpkgs=channel:nixos-unstable + github_access_token: ${{ secrets.GITHUB_TOKEN }} + - uses: DeterminateSystems/magic-nix-cache-action@main + - name: Docker login + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Docker tag + run: nix develop --command manifest-tool push from-args --platforms linux/amd64,linux/arm64 --template connet-dev/connet:latest-ARCHVARIANT --target connet-dev/connet:latest + diff --git a/flake.nix b/flake.nix index e306d25..b5c1de0 100644 --- a/flake.nix +++ b/flake.nix @@ -6,7 +6,7 @@ flake-utils.url = "github:numtide/flake-utils"; }; - outputs = { self, nixpkgs, flake-utils }: + outputs = { nixpkgs, flake-utils, ... }: { nixosModules.default = ./nix/client-module.nix; nixosModules.server = ./nix/server-module.nix; @@ -30,6 +30,7 @@ gopls golangci-lint fd + manifest-tool protobuf protoc-gen-go process-compose