From e0f8c52706a0f32965bc6b848a92d1efa0e98494 Mon Sep 17 00:00:00 2001 From: shreyasbhat0 Date: Thu, 19 Dec 2024 11:04:45 +0530 Subject: [PATCH] fix: release ci --- .github/workflows/release-tesnet.yml | 43 ++++++ .github/workflows/release.yml | 2 +- CHANGELOG.md | 1 + releaser/.goreleaser-cross.yaml | 107 ++++++++------- releaser/.goreleaser-directory-cross.yaml | 152 ++++++++++++++-------- releaser/.goreleaser-directory.yaml | 72 +++++----- releaser/.goreleaser-sentinel-cross.yaml | 89 ++++++++----- releaser/.goreleaser-sentinel.yaml | 54 ++++---- releaser/.goreleaser.yaml | 67 ++++++---- 9 files changed, 372 insertions(+), 215 deletions(-) create mode 100644 .github/workflows/release-tesnet.yml diff --git a/.github/workflows/release-tesnet.yml b/.github/workflows/release-tesnet.yml new file mode 100644 index 00000000..9447fb9f --- /dev/null +++ b/.github/workflows/release-tesnet.yml @@ -0,0 +1,43 @@ +name: Release + +on: + release: + types: [published] + +jobs: + release: + name: ${{ matrix.release }} + runs-on: ubuntu-latest + strategy: + matrix: + release: ["release-testnet","release-testnet-cross","sentinel-testnet-release","sentinel-testnet-cross","directory-testnet","directory-testnet-cross"] + + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version-file: go.mod + + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GH_TOKEN }} + + - name: ${{ matrix.release }} + env: + RELEASE: true + GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} + run: make ${{ matrix.release }} \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 78723dc5..320b95e7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - release: ["release", "release-cross","release-testnet","release-testnet-cross","sentinel-release","sentinel-release-cross","sentinel-testnet-release","sentinel-testnet-cross","directory-release","directory-release-cross","directory-testnet","directory-testnet-cross"] + release: ["release", "release-cross","sentinel-release","sentinel-release-cross","directory-release","directory-release-cross"] steps: - name: Checkout diff --git a/CHANGELOG.md b/CHANGELOG.md index 38fdbf20..5c0ab0ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -44,6 +44,7 @@ Contains all the PRs that improved the code without changing the behaviors. - Fixed ws client issue with event stream - Fixed swagger issue - Docker files and scripts +- Go releaser for binary and docker # v1.0.2-Prerelease diff --git a/releaser/.goreleaser-cross.yaml b/releaser/.goreleaser-cross.yaml index 90325b75..ffb5a18d 100644 --- a/releaser/.goreleaser-cross.yaml +++ b/releaser/.goreleaser-cross.yaml @@ -88,53 +88,49 @@ builds: - '{{ .Env.BUILD_TAG }}' universal_binaries: - - id: arkeod-darwin-all + - id: arkeod-darwin-universal ids: - arkeod-darwin-amd64 - arkeod-darwin-arm64 replace: false - name_template: "{{ .ProjectName }}d{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" - -release: - skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' + name_template: >- + {{ .ProjectName }}d_{{ .Version }}_darwin_universal + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} archives: - - id: w/version - builds: - - arkeod-linux-arm64 - - arkeod-darwin-amd64 - - arkeod-darwin-arm64 - - arkeod-darwin-all - name_template: "{{ .ProjectName }}d_v{{ .Version }}_{{ .Os }}{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" - wrap_in_directory: false - format: zip - files: - - none* - - id: wo/version + - id: archive-versioned builds: - arkeod-linux-arm64 - arkeod-darwin-amd64 - arkeod-darwin-arm64 - - arkeod-darwin-all - name_template: "{{ .ProjectName }}d_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" + - arkeod-darwin-universal + name_template: >- + {{ .ProjectName }}d_{{ .Version }}_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: zip files: - none* - - id: binary + + - id: archive-binary builds: - arkeod-linux-arm64 - arkeod-darwin-amd64 - arkeod-darwin-arm64 - - arkeod-darwin-all - name_template: "{{ .ProjectName }}d_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" + - arkeod-darwin-universal + name_template: >- + {{ .ProjectName }}d_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: binary files: - none* checksum: - name_template: '{{ .ProjectName }}d_v{{ .Version }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}_cross_checksums.txt' + name_template: >- + {{ .ProjectName }}d_{{ .Version }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} + {{- "_cross_checksums.txt" }} dockers: - use: buildx @@ -142,50 +138,71 @@ dockers: goarch: arm64 dockerfile: docker/Dockerfile image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true"}}v{{ .Version }}-arm64{{else}}{{ .ShortCommit }}-arm64{{end}}{{end}}' + # Latest tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:latest-arm64' + # Version tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{ .Version }}-arm64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}:testnet-latest-arm64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}:testnet-{{ .Version }}-arm64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title={{.ProjectName}}d" - - "--label=org.opencontainers.image.description={{.ProjectName}}d" + - "--label=org.opencontainers.image.title=arkeod" + - "--label=org.opencontainers.image.description=Arkeo Daemon" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{.Version}}" + - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" + - use: buildx goos: linux goarch: arm64 dockerfile: docker/Dockerfile.dev image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true"}}v{{ .Version }}{{else}}{{ .ShortCommit }}{{end}}-arm64{{end}}' + # Latest dev tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:latest-arm64' + # Version dev tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{ .Version }}-arm64' + # Testnet dev tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:testnet-latest-arm64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:testnet-{{ .Version }}-arm64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title={{.ProjectName}}d" - - "--label=org.opencontainers.image.description={{.ProjectName}}d" + - "--label=org.opencontainers.image.title=arkeod-dev" + - "--label=org.opencontainers.image.description=Arkeo Daemon Development Build" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{.Version}}" + - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" docker_manifests: - - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true" }}v{{ .Version }}{{else}}{{ .ShortCommit }}{{end}}{{end}}' - create_flags: - - --insecure - push_flags: - - --insecure + # Production manifests + - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}:latest{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{if eq .Env.RELEASE "true"}}v{{ .Version }}-amd64{{else}}{{ .ShortCommit }}-amd64{{end}}' - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{if eq .Env.RELEASE "true"}}v{{ .Version }}-arm64{{else}}{{ .ShortCommit }}-arm64{{end}}' - - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true" }}v{{ .Version }}{{else}}{{ .ShortCommit }}{{end}}{{end}}' - create_flags: - - --insecure - push_flags: - - --insecure + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:latest-amd64{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:latest-arm64{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + + - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{ .Version }}{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + image_templates: + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{ .Version }}-amd64{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{ .Version }}-arm64{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + + # Development manifests + - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:latest{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{if eq .Env.RELEASE "true"}}v{{ .Version }}-amd64{{else}}{{ .ShortCommit }}-amd64{{end}}' - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{if eq .Env.RELEASE "true"}}v{{ .Version }}-arm64{{else}}{{ .ShortCommit }}-arm64{{end}}' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:latest-amd64{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:latest-arm64{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + + - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{ .Version }}{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + image_templates: + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{ .Version }}-amd64{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{ .Version }}-arm64{{ if eq .Env.BUILD_TAG "testnet" }}-testnet{{ end }}' + +release: + skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' \ No newline at end of file diff --git a/releaser/.goreleaser-directory-cross.yaml b/releaser/.goreleaser-directory-cross.yaml index 8b200f0c..abb27fae 100644 --- a/releaser/.goreleaser-directory-cross.yaml +++ b/releaser/.goreleaser-directory-cross.yaml @@ -6,7 +6,7 @@ env: - CGO_ENABLED=1 builds: - - id: directory_api_darwin + - id: api-darwin binary: api env: - CC=o64-clang @@ -35,7 +35,7 @@ builds: tags: - '{{ .Env.BUILD_TAG }}' - - id: directory_indexer_darwin + - id: indexer-darwin binary: indexer env: - CC=o64-clang @@ -64,7 +64,7 @@ builds: tags: - '{{ .Env.BUILD_TAG }}' - - id: directory_api_linux_arm64 + - id: api-linux-arm64 binary: api env: - CC=aarch64-linux-gnu-gcc @@ -89,7 +89,7 @@ builds: tags: - '{{ .Env.BUILD_TAG }}' - - id: directory_indexer_linux_arm64 + - id: indexer-linux-arm64 binary: indexer env: - CC=aarch64-linux-gnu-gcc @@ -115,60 +115,53 @@ builds: - '{{ .Env.BUILD_TAG }}' universal_binaries: - - id: directory_darwin_all + - id: directory-darwin-universal ids: - - directory_api_darwin - - directory_indexer_darwin + - api-darwin + - indexer-darwin replace: false - name_template: "directory{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" - -release: - skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' + name_template: >- + directory_{{ .Version }}_darwin_universal + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} archives: - - id: w/version - allow_different_binary_count: true - builds: - - directory_api_darwin - - directory_indexer_darwin - - directory_darwin_all - - directory_api_linux_arm64 - - directory_indexer_linux_arm64 - name_template: "directory_v{{ .Version }}_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}-testnet{{ end }}" - wrap_in_directory: false - format: zip - files: - - none* - - id: wo/version + - id: archive-versioned allow_different_binary_count: true builds: - - directory_api_darwin - - directory_indexer_darwin - - directory_darwin_all - - directory_api_linux_arm64 - - directory_indexer_linux_arm64 - name_template: "directory_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" + - api-darwin + - indexer-darwin + - directory-darwin-universal + - api-linux-arm64 + - indexer-linux-arm64 + name_template: >- + directory_{{ .Version }}_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: zip files: - none* - - id: binary + + - id: archive-binary allow_different_binary_count: true builds: - - directory_api_darwin - - directory_indexer_darwin - - directory_api_linux_arm64 - - directory_indexer_linux_arm64 - - directory_darwin_all - name_template: "directory_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" + - api-darwin + - indexer-darwin + - api-linux-arm64 + - indexer-linux-arm64 + - directory-darwin-universal + name_template: >- + directory_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: binary files: - none* checksum: - name_template: 'directory_v{{ .Version }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}_cross_checksums.txt' - + name_template: >- + directory_{{ .Version }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} + {{- "_cross_checksums.txt" }} dockers: - use: buildx @@ -176,15 +169,21 @@ dockers: goarch: arm64 dockerfile: docker/Dockerfile.api image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/api:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true"}}v{{ .Version }}-arm64{{else}}{{ .ShortCommit }}-arm64{{end}}{{end}}' + # Latest API tag + - 'ghcr.io/arkeonetwork/directory/api:latest-arm64' + # Version API tag + - 'ghcr.io/arkeonetwork/directory/api:{{ .Version }}-arm64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/directory/api:testnet-latest-arm64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/directory/api:testnet-{{ .Version }}-arm64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title=sentinel" - - "--label=org.opencontainers.image.description=sentinel" + - "--label=org.opencontainers.image.title=directory-api" + - "--label=org.opencontainers.image.description=Arkeo Directory API Service" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{.Version}}" + - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" @@ -194,25 +193,68 @@ dockers: goarch: arm64 dockerfile: docker/Dockerfile.indexer image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true"}}v{{ .Version }}-arm64{{else}}{{ .ShortCommit }}-arm64{{end}}{{end}}' + # Latest indexer tag + - 'ghcr.io/arkeonetwork/directory/indexer:latest-arm64' + # Version indexer tag + - 'ghcr.io/arkeonetwork/directory/indexer:{{ .Version }}-arm64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/directory/indexer:testnet-latest-arm64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/directory/indexer:testnet-{{ .Version }}-arm64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title=sentinel" - - "--label=org.opencontainers.image.description=sentinel" + - "--label=org.opencontainers.image.title=directory-indexer" + - "--label=org.opencontainers.image.description=Arkeo Directory Indexer Service" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{.Version}}" + - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" docker_manifests: - - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true" }}v{{ .Version }}{{else}}{{ .ShortCommit }}{{end}}{{end}}' - create_flags: - - --insecure - push_flags: - - --insecure + # API manifests + - name_template: 'ghcr.io/arkeonetwork/directory/api:latest' + image_templates: + - 'ghcr.io/arkeonetwork/directory/api:latest-amd64' + - 'ghcr.io/arkeonetwork/directory/api:latest-arm64' + + - name_template: 'ghcr.io/arkeonetwork/directory/api:{{ .Version }}' + image_templates: + - 'ghcr.io/arkeonetwork/directory/api:{{ .Version }}-amd64' + - 'ghcr.io/arkeonetwork/directory/api:{{ .Version }}-arm64' + + - name_template: 'ghcr.io/arkeonetwork/directory/api:testnet-latest' + skip_push: '{{ ne .Env.BUILD_TAG "testnet" }}' + image_templates: + - 'ghcr.io/arkeonetwork/directory/api:testnet-latest-amd64' + - 'ghcr.io/arkeonetwork/directory/api:testnet-latest-arm64' + + - name_template: 'ghcr.io/arkeonetwork/directory/api:testnet-{{ .Version }}' + skip_push: '{{ ne .Env.BUILD_TAG "testnet" }}' + image_templates: + - 'ghcr.io/arkeonetwork/directory/api:testnet-{{ .Version }}-amd64' + - 'ghcr.io/arkeonetwork/directory/api:testnet-{{ .Version }}-arm64' + + # Indexer manifests + - name_template: 'ghcr.io/arkeonetwork/directory/indexer:latest' + image_templates: + - 'ghcr.io/arkeonetwork/directory/indexer:latest-amd64' + - 'ghcr.io/arkeonetwork/directory/indexer:latest-arm64' + + - name_template: 'ghcr.io/arkeonetwork/directory/indexer:{{ .Version }}' + image_templates: + - 'ghcr.io/arkeonetwork/directory/indexer:{{ .Version }}-amd64' + - 'ghcr.io/arkeonetwork/directory/indexer:{{ .Version }}-arm64' + + - name_template: 'ghcr.io/arkeonetwork/directory/indexer:testnet-latest' + skip_push: '{{ ne .Env.BUILD_TAG "testnet" }}' + image_templates: + - 'ghcr.io/arkeonetwork/directory/indexer:testnet-latest-amd64' + - 'ghcr.io/arkeonetwork/directory/indexer:testnet-latest-arm64' + + - name_template: 'ghcr.io/arkeonetwork/directory/indexer:testnet-{{ .Version }}' + skip_push: '{{ ne .Env.BUILD_TAG "testnet" }}' image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:{{if eq .Env.RELEASE "true"}}v{{ .Version }}-amd64{{else}}{{ .ShortCommit }}-amd64{{end}}' - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:{{if eq .Env.RELEASE "true"}}v{{ .Version }}-arm64{{else}}{{ .ShortCommit }}-arm64{{end}}' \ No newline at end of file + - 'ghcr.io/arkeonetwork/directory/indexer:testnet-{{ .Version }}-amd64' + - 'ghcr.io/arkeonetwork/directory/indexer:testnet-{{ .Version }}-arm64' \ No newline at end of file diff --git a/releaser/.goreleaser-directory.yaml b/releaser/.goreleaser-directory.yaml index 391a348a..149d35b6 100644 --- a/releaser/.goreleaser-directory.yaml +++ b/releaser/.goreleaser-directory.yaml @@ -6,7 +6,7 @@ env: - CGO_ENABLED=1 builds: - - id: directory_api_linux_amd64 + - id: api-linux-amd64 binary: api main: ./cmd/directory/api goos: @@ -32,7 +32,7 @@ builds: tags: - '{{ .Env.BUILD_TAG }}' - - id: directory_indexer_linux_amd64 + - id: indexer-linux-amd64 binary: indexer main: ./cmd/directory/indexer goos: @@ -58,38 +58,36 @@ builds: tags: - '{{ .Env.BUILD_TAG }}' -release: - skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' archives: - - id: w/version + - id: archive-versioned builds: - - directory_api_linux_amd64 - - directory_indexer_linux_amd64 - name_template: 'directory_v{{.Version }}_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' + - api-linux-amd64 + - indexer-linux-amd64 + name_template: >- + directory_{{ .Version }}_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: zip files: - none* - - id: wo/version - builds: - - directory_api_linux_amd64 - - directory_indexer_linux_amd64 - name_template: 'directory_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' - wrap_in_directory: false - format: zip - files: - - none* - - id: binary + + - id: archive-binary builds: - - directory_api_linux_amd64 - - directory_indexer_linux_amd64 - name_template: 'directory_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' + - api-linux-amd64 + - indexer-linux-amd64 + name_template: >- + directory_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: binary files: - none* + checksum: - name_template: 'directory_v{{.Version }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}_checksums.txt' + name_template: >- + directory_{{ .Version }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} + {{- "_checksums.txt" }} dockers: - use: buildx @@ -97,15 +95,21 @@ dockers: goarch: amd64 dockerfile: docker/Dockerfile.api image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/api:{{ if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{ else }}{{ if eq .Env.RELEASE "true" }}v{{ .Version }}-amd64{{ else }}{{ .ShortCommit }}-amd64{{ end }}{{ end }}' + # Latest API tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/api:latest-amd64' + # Version API tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/api:{{ .Version }}-amd64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}/api:testnet-latest-amd64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}/api:testnet-{{ .Version }}-amd64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title={{.ProjectName}}d" - - "--label=org.opencontainers.image.description={{.ProjectName}}d" + - "--label=org.opencontainers.image.title=directory-api" + - "--label=org.opencontainers.image.description=Arkeo Directory API Service" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{ .Version }}" + - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" @@ -115,16 +119,24 @@ dockers: goarch: amd64 dockerfile: docker/Dockerfile.indexer image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:{{ if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{ else }}{{ if eq .Env.RELEASE "true" }}v{{ .Version }}-amd64{{ else }}{{ .ShortCommit }}-amd64{{ end }}{{ end }}' + # Latest indexer tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:latest-amd64' + # Version indexer tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:{{ .Version }}-amd64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:testnet-latest-amd64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}/indexer:testnet-{{ .Version }}-amd64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title={{.ProjectName}}d" - - "--label=org.opencontainers.image.description={{.ProjectName}}d" + - "--label=org.opencontainers.image.title=directory-indexer" + - "--label=org.opencontainers.image.description=Arkeo Directory Indexer Service" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{ .Version }}" + - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" +release: + skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' \ No newline at end of file diff --git a/releaser/.goreleaser-sentinel-cross.yaml b/releaser/.goreleaser-sentinel-cross.yaml index 37c03fc6..41579b0c 100644 --- a/releaser/.goreleaser-sentinel-cross.yaml +++ b/releaser/.goreleaser-sentinel-cross.yaml @@ -6,7 +6,7 @@ env: - CGO_ENABLED=1 builds: - - id: sentinel_darwin + - id: sentinel-darwin binary: sentinel env: - CC=o64-clang @@ -36,7 +36,7 @@ builds: tags: - '{{ .Env.BUILD_TAG }}' - - id: sentinel_linux_arm64 + - id: sentinel-linux-arm64 binary: sentinel env: - CC=aarch64-linux-gnu-gcc @@ -63,49 +63,46 @@ builds: - '{{ .Env.BUILD_TAG }}' universal_binaries: - - id: sentinel_darwin_all + - id: sentinel-darwin-universal ids: - - sentinel_darwin + - sentinel-darwin replace: false - name_template: "sentinel{{ if eq .Env.BUILD_TAG \"testnet\" }}-testnet{{ end }}" - -release: - skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' + name_template: >- + sentinel_{{ .Version }}_darwin_universal + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} archives: - - id: w/version - builds: - - sentinel_darwin - - sentinel_linux_arm64 - - sentinel_darwin_all - name_template: "sentinel_v{{ .Env.SENTINEL_VERSION }}_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}-testnet{{ end }}" - wrap_in_directory: false - format: zip - files: - - none* - - id: wo/version + - id: archive-versioned builds: - sentinel-darwin - sentinel-linux-arm64 - - sentinel-darwin-all - name_template: "sentinel_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" + - sentinel-darwin-universal + name_template: >- + sentinel_{{ .Env.SENTINEL_VERSION }}_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: zip files: - none* - - id: binary + + - id: archive-binary builds: - sentinel-darwin - sentinel-linux-arm64 - - sentinel-darwin-all - name_template: "sentinel_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG \"testnet\" }}_testnet{{ end }}" + - sentinel-darwin-universal + name_template: >- + sentinel_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: binary files: - none* checksum: - name_template: 'sentinel_v{{ .Env.SENTINEL_VERSION }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}_cross_checksums.txt' + name_template: >- + sentinel_{{ .Env.SENTINEL_VERSION }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} + {{- "_cross_checksums.txt" }} dockers: - use: buildx @@ -113,25 +110,47 @@ dockers: goarch: arm64 dockerfile: docker/Dockerfile.sentinel image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true"}}v{{ .Env.SENTINEL_VERSION }}-arm64{{else}}{{ .ShortCommit }}-arm64{{end}}{{end}}' + # Latest tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:latest-arm64' + # Version tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{ .Env.SENTINEL_VERSION }}-arm64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-latest-arm64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-{{ .Env.SENTINEL_VERSION }}-arm64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.title=sentinel" - - "--label=org.opencontainers.image.description=sentinel" + - "--label=org.opencontainers.image.description=Arkeo Sentinel Service" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{.Env.SENTINEL_VERSION}}" + - "--label=org.opencontainers.image.version={{.Env.SENTINEL_VERSION}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" docker_manifests: - - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{else}}{{if eq .Env.RELEASE "true" }}v{{ .Env.SENTINEL_VERSION }}{{else}}{{ .ShortCommit }}{{end}}{{end}}' - create_flags: - - --insecure - push_flags: - - --insecure + - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:latest' image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{if eq .Env.RELEASE "true"}}v{{ .Env.SENTINEL_VERSION }}-amd64{{else}}{{ .ShortCommit }}-amd64{{end}}' - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{if eq .Env.RELEASE "true"}}v{{ .Env.SENTINEL_VERSION }}-arm64{{else}}{{ .ShortCommit }}-arm64{{end}}' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:latest-amd64' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:latest-arm64' + + - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{ .Env.SENTINEL_VERSION }}' + image_templates: + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{ .Env.SENTINEL_VERSION }}-amd64' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{ .Env.SENTINEL_VERSION }}-arm64' + + - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-latest' + skip_push: '{{ ne .Env.BUILD_TAG "testnet" }}' + image_templates: + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-latest-amd64' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-latest-arm64' + + - name_template: 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-{{ .Env.SENTINEL_VERSION }}' + skip_push: '{{ ne .Env.BUILD_TAG "testnet" }}' + image_templates: + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-{{ .Env.SENTINEL_VERSION }}-amd64' + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-{{ .Env.SENTINEL_VERSION }}-arm64' + +release: + skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' \ No newline at end of file diff --git a/releaser/.goreleaser-sentinel.yaml b/releaser/.goreleaser-sentinel.yaml index e953e3de..48229b7d 100644 --- a/releaser/.goreleaser-sentinel.yaml +++ b/releaser/.goreleaser-sentinel.yaml @@ -6,7 +6,7 @@ env: - CGO_ENABLED=1 builds: - - id: sentinel_linux_amd64 + - id: sentinel-linux-amd64 binary: sentinel main: ./cmd/sentinel goos: @@ -33,35 +33,34 @@ builds: tags: - '{{ .Env.BUILD_TAG }}' -release: - skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' archives: - - id: w/version - builds: - - sentinel_linux_amd64 - name_template: 'sentinel_v{{ .Env.SENTINEL_VERSION }}_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' - wrap_in_directory: false - format: zip - files: - - none* - - id: wo/version + - id: archive-versioned builds: - - sentinel_linux_amd64 - name_template: 'sentinel_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' + - sentinel-linux-amd64 + name_template: >- + sentinel_{{ .Env.SENTINEL_VERSION }}_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: zip files: - none* - - id: binary + + - id: archive-binary builds: - - sentinel_linux_amd64 - name_template: 'sentinel_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' + - sentinel-linux-amd64 + name_template: >- + sentinel_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: binary files: - none* + checksum: - name_template: 'sentinel_v{{ .Env.SENTINEL_VERSION }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}_checksums.txt' + name_template: >- + sentinel_{{ .Env.SENTINEL_VERSION }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} + {{- "_checksums.txt" }} dockers: - use: buildx @@ -69,15 +68,24 @@ dockers: goarch: amd64 dockerfile: docker/Dockerfile.sentinel image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{ if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{ else }}{{ if eq .Env.RELEASE "true" }}v{{ .Env.SENTINEL_VERSION }}-amd64{{ else }}{{ .ShortCommit }}-amd64{{ end }}{{ end }}' + # Latest tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:latest-amd64' + # Version tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:{{ .Env.SENTINEL_VERSION }}-amd64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-latest-amd64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}/sentinel:testnet-{{ .Env.SENTINEL_VERSION }}-amd64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title={{.ProjectName}}d" - - "--label=org.opencontainers.image.description={{.ProjectName}}d" + - "--label=org.opencontainers.image.title=sentinel" + - "--label=org.opencontainers.image.description=Arkeo Sentinel Service" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{ .Env.SENTINEL_VERSION }}" + - "--label=org.opencontainers.image.version={{.Env.SENTINEL_VERSION}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - - "--label=org.opencontainers.image.licenses=Apache-2.0" \ No newline at end of file + - "--label=org.opencontainers.image.licenses=Apache-2.0" + +release: + skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' \ No newline at end of file diff --git a/releaser/.goreleaser.yaml b/releaser/.goreleaser.yaml index 9a9ee327..efb5d1ad 100644 --- a/releaser/.goreleaser.yaml +++ b/releaser/.goreleaser.yaml @@ -6,7 +6,7 @@ env: - CGO_ENABLED=1 builds: - - id: arkeod_linux_amd64 + - id: arkeod-linux-amd64 binary: arkeod main: ./cmd/arkeod goos: @@ -32,50 +32,56 @@ builds: tags: - '{{ .Env.BUILD_TAG }}' -release: - skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' archives: - - id: w/version - builds: - - arkeod_linux_amd64 - name_template: '{{ .ProjectName }}d_v{{ .Version }}_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' - wrap_in_directory: false - format: zip - files: - - none* - - id: wo/version + - id: archive-versioned builds: - - arkeod_linux_amd64 - name_template: '{{ .ProjectName }}d_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' + - arkeod-linux-amd64 + name_template: >- + {{ .ProjectName }}d_{{ .Version }}_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: zip files: - none* - - id: binary + + - id: archive-binary builds: - - arkeod_linux_amd64 - name_template: '{{ .ProjectName }}d_{{ .Os }}_{{ .Arch }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}' + - arkeod-linux-amd64 + name_template: >- + {{ .ProjectName }}d_{{ .Os }}_{{ .Arch }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} wrap_in_directory: false format: binary files: - none* + checksum: - name_template: '{{ .ProjectName }}d_v{{ .Version }}{{ if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }}_checksums.txt' + name_template: >- + {{ .ProjectName }}d_{{ .Version }} + {{- if eq .Env.BUILD_TAG "testnet" }}_testnet{{ end }} + {{- "_checksums.txt" }} + dockers: - use: buildx goos: linux goarch: amd64 dockerfile: docker/Dockerfile image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{ if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{ else }}{{ if eq .Env.RELEASE "true" }}v{{ .Version }}-amd64{{ else }}{{ .ShortCommit }}-amd64{{ end }}{{ end }}' + # Latest tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:latest-amd64' + # Version tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}:{{ .Version }}-amd64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}:testnet-latest-amd64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}:testnet-{{ .Version }}-amd64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title={{.ProjectName}}d" - - "--label=org.opencontainers.image.description={{.ProjectName}}d" + - "--label=org.opencontainers.image.title=arkeod" + - "--label=org.opencontainers.image.description=Arkeo Daemon" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{.Version}}" + - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" @@ -85,15 +91,24 @@ dockers: goarch: amd64 dockerfile: docker/Dockerfile.dev image_templates: - - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{ if eq .Env.BUILD_TAG "testnet" }}testnet-{{.ShortCommit}}{{ else }}{{ if eq .Env.RELEASE "true" }}v{{ .Version }}{{ else }}{{ .ShortCommit }}{{ end }}-amd64{{ end }}' + # Dev latest tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:latest-amd64' + # Dev version tag + - 'ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:{{ .Version }}-amd64' + # Testnet tags if applicable + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:testnet-latest-amd64{{ end }}' + - '{{ if eq .Env.BUILD_TAG "testnet" }}ghcr.io/arkeonetwork/{{ .ProjectName }}-dev:testnet-{{ .Version }}-amd64{{ end }}' build_flag_templates: - "--pull" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.title={{.ProjectName}}d" - - "--label=org.opencontainers.image.description={{.ProjectName}}d" + - "--label=org.opencontainers.image.title=arkeod-dev" + - "--label=org.opencontainers.image.description=Arkeo Daemon Development Build" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version=v{{.Version}}" + - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.url=https://arkeo.network/" - "--label=org.opencontainers.image.source=https://github.com/arkeonetwork/arkeo" - "--label=org.opencontainers.image.licenses=Apache-2.0" + +release: + skip_upload: '{{ if eq .Env.RELEASE "true" }}false{{else}}true{{end}}' \ No newline at end of file