Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refs with uppercase characters trigger an error in buildx (branch names with uppercase characters) #405

Open
3 tasks done
WarpedPixel opened this issue Apr 16, 2024 · 1 comment

Comments

@WarpedPixel
Copy link

WarpedPixel commented Apr 16, 2024

Contributing guidelines

I've found a bug, and:

  • The documentation does not mention anything about my problem
  • There are no open or closed issues that are related to my problem

Description

I have a mixed case user name. This means that a branch might be called WarpedPixel/issue200, which generates a ref WarpedPixel-issue200. This triggers an error in buildx:

ERROR: invalid tag "WarpedPixel-issue455": repository name must be lowercase

Expected behaviour

metadata action should generate sanitized, valid tags only. In this situation it should convert the branch name/ref to lower case.

Actual behaviour

Throws an error. I can't really use branch names with mixed case (which are created automatically by other tools like vscode). For such branches, I don't know what the workaround that would allow me to use the metadata action in a GitHub Actions build.

Repository URL

No response

Workflow run URL

No response

YAML workflow

- name: Docker metadata
  id: meta
  uses: docker/metadata-action@v5
  with:
    tags: |
      type=ref,event=branch
      type=ref,event=pr
      type=semver,pattern={{version}},enable={{is_default_branch}}
      type=sha
      type=sha,format=long

- name: Build Frontend
  id: build_frontend
  uses: docker/[email protected]
  with:
    context: ./frontend
    build-args: VERSION=${{ needs.versioning.outputs.version }}
    push: false
    cache-from: type=gha
    cache-to: type=gha,mode=max
    target: production
    outputs: type=image
    tags: |
      ${{ needs.versioning.outputs.tags }}
      frontend:production
    labels: ${{ needs.versioning.outputs.labels }}

Workflow logs

No response

BuildKit logs

No response

Additional info

No response

@jamesiarmes
Copy link

I just ran into this issue as well. It seems the tag should be put through the same sanitation as the name.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants