Skip to content

[Bug]: workflow test fails due to import in .proto file #223

@nico-i

Description

@nico-i

What happened?

Workflows fail due to unresolved imports.

What did you expect to happen?

To have a documentation guide on how to handle imports or for imports to be automatically resolved.

Version

2.8.1

Environment

Node v20.11.0

How can we reproduce this bug?

Example proto file:

syntax = "proto3";

package caption_service.v1;

import "google/api/annotations.proto";
import "messages/image_dto/v1/image_dto.proto";

// Request to get caption for an image
message GetCaptionRequest {
	shared.messages.image_dto.v1.ImageDto image = 1;
}

// Response containing caption for an image
message GetCaptionResponse {
    string caption = 1;
}

// Service to handle all image captioning operations
service CaptionService {
    // Get caption for an image
	rpc get_caption(GetCaptionRequest) returns (GetCaptionResponse) {
		option (google.api.http) = {
			post: "/v1/caption"
			body: "*"
		};
	}
}

Example workflow file:

version: "1.1"
name: Caption workflow
env:
  host: localhost:9091
tests:
  caption:
    name: Get caption of test image
    steps:
      - name: Get caption
        grpc:
          proto:
            - ../../shared/proto/services/caption_service/v1/caption_service.proto
          host: ${{env.host}}
          service: caption_service.v1.CaptionService
          method: get_caption
          data:
            image:
              path: "test/img.jpg"

I use buf for code gen and dep management. This is my buf.yaml, which also specifies the base path for all proto files:

version: v2
modules:
  - path: shared/proto
lint:
  use:
    - DEFAULT
breaking:
  use:
    - FILE
deps:
  - buf.build/googleapis/googleapis

Relevant log output

Error message when running stepci run workflow.yaml

 FAIL  Get caption of test image ⏲ 0.003s ⬆ 0 bytes ⬇ 0 bytes

Summary

  ✕ Get caption of test image failed after 0.003s

⚠︎ caption › Get caption of test image

ENOENT: no such file or directory, open 'shared/proto/services/caption_service/v1/google/api/annotations.proto'

Would you be interested in working on a bugfix for this issue?

  • Yes! Assign me

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions