-
Notifications
You must be signed in to change notification settings - Fork 928
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
CF Plugins doesn't execute V2 commands when calling CliConnection.CliCommand #1445
Comments
We have created an issue in Pivotal Tracker to manage this: https://www.pivotaltracker.com/story/show/159999712 The labels on this github issue will be updated when the story is started. |
Here is a simpler plugin that shows the issue.
If run in a folder with two files,
We get the same error as reported above
|
Hi @simonjohansson what version of cc api are you on? |
We have a couple of installations, our latest on is at |
Hey @simonjohansson sorry v3 features (multiple buildpacks) do not currently work with our plugin architecture. Please see this verbose explanation as to why that is currently the case. I've updated the plugin documentation with this known issue. Please also note we are collecting information here if you are interested in providing feedback. Closing this issue but feel free to reopen/create a new issue if you have further questions, thanks. |
@abbyachau thanks for the update. Btw, Btw2, if you want to collect any use cases from us on how/why we use the plugin architecture just reach out. Would also be happy to help. |
@abbyachau we just ran into the same problem (we are trying to do Unfortunately, I can't add comment/feedback on https://www.pivotaltracker.com/n/projects/892938/stories/157201049 |
Hi @simonjohansson thanks, will do. @CAFxX thanks, I've added your comment to our tracker story. |
Hi @simonjohansson looking forward to speaking directly. I have a few preliminary questions: could you share your entire manifest with us? Are you actually using multiple buildpacks (the example above is only showing one)? If you change your manifest from:
to
does that work at all? Thanks in advance. |
Hi all, the CF CLI team are exploring how we would be able to help plugin authors with the issues described in this thread - specifically the issue that the plugin architecture was designed only to call the
If you can comment in the document, that would be helpful as well. Thanks very much for your time, and please do not hesitate to reach out if you have any questions. |
Hi @simonjohansson, was there a workaround for multiple buildpacks that you found that you could share here? |
Hi @abbyachau yeah, we worked around it. We use a command pattern in our plugin and instead of using I.e https://github.com/springernature/halfpipe-cf-plugin/blob/master/plan/executor.go#L21 used to be |
What are we trying to achieve
We are maintaining a cf plugin that does zero downtime deployment, today when we tried the new
buildpacks
feature that 6.38 gives us we got greeted byWhich is strange, since copy pasting
cf push multiple-buildpacks-test-CANDIDATE -f manifest.yml -p . --no-route --no-start
and executing it directly works like expected.What occurred
Since
halfpipe-push
is not a core command,handleFlagErrorAndCommandHelp
redirects us tocmd.Main
which in turn start a RPC server and runs my plugin. When my plugin calls out toCliConnection.CliCommand("push" ....)
theCliRpcCmd.CallCoreCommand
will iterate over the available commands incommandregistry.Commands
(who's commands have been populated via init() methods at startup) and then finally execute "legacy" push fromcf/commands/application/push.go
What you expected to occur
The RPC server calls out to
command/v2/push_command.go
instead ofcf/commands/application/push.go
so that I can push an app with a manifest containing thebuildpacks
keyCLI Version
cf version 6.38.0+7ddf0aadd.2018-08-07
Plugin built with
The text was updated successfully, but these errors were encountered: