Manifest plugin - tags setting/.tags file have no effect

The docs for the manifest plugin list tags as an optional setting for manifest (not spec) mode. And if I’m reading the code correctly, it seems that a tags setting and/or a .tags file would be read by the plugin.

My expectation would be that either of these would add onto the list of tags specified by the target setting. However, it seems both tags setting and .tags file are ignored.

Example sanitized .drone.yml:

---
kind: pipeline
type: docker
name: publish amd64 image

# default autoscaler node is arm64

steps:
  - name: publish app image
    image: plugins/docker
    settings:
      dockerfile: Dockerfile
      registry: our.private.registry
      repo: our.private.registry/this-thing
      tags:
        - build-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}-${DRONE_BUILD_NUMBER}

depends_on: []

---
kind: pipeline
type: docker
name: publish arm64 image

node:
  arch: arm64
platform:
  os: linux
  arch: arm64

steps:
steps:
  - name: publish app image
    image: plugins/docker
    settings:
      dockerfile: Dockerfile
      registry: our.private.registry
      repo: our.private.registry/this-thing
      tags:
        - build-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}-${DRONE_BUILD_NUMBER}

depends_on: []

---
kind: pipeline
type: docker
name: publish manifest

# default autoscaler node is arm64

steps:
  - name: publish
    image: plugins/manifest
    settings:
      target: our.private.registry/this-thing:build-${DRONE_BUILD_NUMBER}
      template: our.private.registry/this-thing:build-OS-ARCH-${DRONE_BUILD_NUMBER}
      tags:
        - latest-${DRONE_BRANCH//\//-}
        - ${DRONE_COMMIT_SHA:0:8}
      platforms:
        - linux/arm64
        - linux/amd64

depends_on:
  - publish amd64 image
  - publish arm64 image

I’ve also tried generating a .tags file for the publish manifest.publish step. The results are the same either way:

latest: Pulling from plugins/manifest
Digest: sha256:...
Status: Image is up to date for plugins/manifest:latest
2022/06/22 16:47:14 pushing our.private.registry/this-thing:build-OS-ARCH-33 to our.private.registry/this-thing:build-33 linux/arm64, linux/amd64
Digest: sha256:... ...

The additional tags are not pushed to our docker registry.

1 Like

Hey @ttamkwallpe let me see what I can find out. In the meantime, could you file a issue here? To let the maintainers of this repo know there is an issue as I believe this is a community maintained plugin. Thanks for raising this issue.

1 Like

Thanks, @Marie_Antons. Posted tags setting/.tags file ignored in manifest mode · Issue #32 · drone-plugins/drone-manifest · GitHub.

Hey @ttamkwallpe from looking at the logic of the plugin, if autotag is true, then user set tags are ignored. drone-manifest/main.go at 92722b712a4a378262ca8f3e39e34248646c8a7b · drone-plugins/drone-manifest · GitHub Can you confirm