streamnative / function-mesh

The serverless framework purpose-built for event streaming applications.
https://functionmesh.io/
Apache License 2.0
210 stars 27 forks source link

Add pulsarctl to runner #630

Closed jiangpengcheng closed 1 year ago

jiangpengcheng commented 1 year ago

(If this PR fixes a github issue, please add Fixes #<xyz>.)

Fixes #

(or if this PR is one task of a github issue, please add Master Issue: #<xyz> to link to the master issue.)

Master Issue: #629

Motivation

Explain here the context, and why you're making that change. What is the problem you're trying to solve.

Modifications

Describe the modifications you've done.

Verifying this change

(Please pick either of the following options)

This change is a trivial rework / code cleanup without any test coverage.

(or)

This change is already covered by existing tests, such as (please describe tests).

(or)

This change added tests and can be verified as follows:

(example:)

Documentation

Check the box below.

Need to update docs?

jiangpengcheng commented 1 year ago

Any chance to use only one latest version of pulsarctl instead of the different versions for different pulsar branches?

I wonder whether there are compatibility issues if we use one version of pulsarctl for all pulsar branches, @zymap do you have any advice?

freeznet commented 1 year ago

Any chance to use only one latest version of pulsarctl instead of the different versions for different pulsar branches?

I wonder whether there are compatibility issues if we use one version of pulsarctl for all pulsar branches, @zymap do you have any advice?

The pulsarctl and pulsar-admin-go should have backward compatibility. For function-mesh, it only uses resource cleanup (like topics management and subscription management), package download etc., which should not have differences across the branches.

On the other hand, can we have two types of runner images published to docker hub, such as:

  1. runner image with pulsar-admin
  2. runner image with pulsarctl
zymap commented 1 year ago

it only uses resource cleanup (like topics management and subscription management), package download etc., which should not have differences across the branches.

Yes. You could use it for all pulsar versions. The different versions are similar. IIRC, the only difference may be the fields in some stats commands.

jiangpengcheng commented 1 year ago

On the other hand, can we have two types of runner images published to docker hub, such as:

  1. runner image with pulsar-admin
  2. runner image with pulsarctl

it sounds good, we can even reduce the image size by using the runner image with pulsarctl, and finally deprecate the runner-image with pulsar-admin, I will try it