question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[frontend] Image reference specifying tag with digest should work

See original GitHub issue

Environment

  • How did you deploy Kubeflow Pipelines (KFP)? Google Vertex AI
  • KFP version: 1.8.6 (Python 3.10.6)

Steps to reproduce

Use image reference containing both tag and digest, e.g., gcr.io/some-project-id/some-product:0.0.1@sha256:0123456789abcedf0123456789abcedf0123456789abcedf0123456789abcedf

Expected result

Pipeline should run but receiving google.api_core.exceptions.InvalidArgument: 400 Invalid image URI gcr.io/some-project-id/some-product@sha256:0123456789abcedf0123456789abcedf0123456789abcedf0123456789abcedf instead.

Materials and Reference

Using either tag (e.g., gcr.io/some-project-id/some-product:0.0.1) or digest (e.g., gcr.io/some-project-id/some-product@sha256:0123456789abcedf0123456789abcedf0123456789abcedf0123456789abcedf) works.

Expected image reference including both tag and digest is very useful for identifying correct images which is complex with just using digest.

Example stack trace:

Traceback (most recent call last):
  File "/home/user/product/venv/lib/python3.10/site-packages/google/api_core/grpc_helpers.py", line 72, in error_remapped_callable
    return callable_(*args, **kwargs)
  File "/home/user/product/venv/lib/python3.10/site-packages/grpc/_channel.py", line 946, in __call__
    return _end_unary_response_blocking(state, call, False, None)
  File "/home/user/product/venv/lib/python3.10/site-packages/grpc/_channel.py", line 849, in _end_unary_response_blocking
    raise _InactiveRpcError(state)
grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with:
	status = StatusCode.INVALID_ARGUMENT
	details = "Invalid image URI gcr.io/some-project-id/some-product@sha256:0123456789abcedf0123456789abcedf0123456789abcedf0123456789abcedf."
	debug_error_string = "UNKNOWN:Error received from peer ipv4:172.217.13.106:443 {grpc_message:"Invalid image URI gcr.io/some-project-id/some-product@sha256:0123456789abcedf0123456789abcedf0123456789abcedf0123456789abcedf.", grpc_status:3, created_time:"2022-11-22T00:00:00.000000000+00:00"}"
>

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/user/product/venv/lib/python3.10/site-packages/google/api_core/grpc_helpers.py", line 74, in error_remapped_callable
    raise exceptions.from_grpc_error(exc) from exc
google.api_core.exceptions.InvalidArgument: 400 Invalid image URI gcr.io/some-project-id/some-product@sha256:0123456789abcedf0123456789abcedf0123456789abcedf0123456789abcedf.

Thanks!


Impacted by this bug? Give it a 👍.

Issue Analytics

  • State:closed
  • Created 10 months ago
  • Comments:6 (2 by maintainers)

github_iconTop GitHub Comments

0reactions
connor-mccarthycommented, Dec 15, 2022

@doctapp, it looks like your error is surfacing from job submission via the Vertex SDK (google.cloud.aiplatform). Please consider opening an issue in that repository: https://github.com/googleapis/python-aiplatform.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Image reference specifying tag with digest should work
Expected image reference including both tag and digest is very useful for identifying correct images which is complex with just using digest.
Read more >
Docker Images: Name Vs. Tag Vs. Digest
When an image is pulled using a digest, a docker pull will download the same image every time on any os/arch. This is...
Read more >
Choosing image tags or digests
Knowing how image tags work helps you to decide whether to use tags or to use the digest instead. Image tags. Image tags...
Read more >
Using container image digests | Cloud Architecture Center
A container image digest uniquely and immutably identifies a container image. When you deploy images by digest, you avoid the downsides of ...
Read more >
Dockerfile reference
The name can be used in subsequent FROM and COPY --from=<name> instructions to refer to the image built in this stage. The tag...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found