conan-io / conan-io/docs

[question] deploy vs deployer

Open
#3,958 6 comments 0 reactions 1 assignee Claimed by @memsharded View on GitHub
Dominant language
C++
Stars
125
Forks
382
Avg merge
22h 39m
Merged PRs (30d)
21

Description

### What is your question?

I'm trying to understand deployment from the conan cache to final systems and I'm confused on the interaction of the `deploy` function in a conanfile and `deployer`s. I have a conanfile with a custom deploy function that updates some of the files and I want to run a deployer such as `runtime_deploy`.

First off, why is calling the conanfile `deploy` function optional? I have to specify which packages I want via the `deployer-package` argument. I might be missing something but in my case, the function is required for the package to work post deployment. So it is an unpleasant surprise to the user that it is required.

Second, it looks like the `deploy` function and the `runtime_deploy` run independently. If I run `conan install --requires mypkg/1.0.0 --deployer-package=mypkg --deployer=runtime_deploy`. It looks like it calls my `deploy` function and then later calls the `runtime_deployer` which overwrites the files from my deploy function.

I am confused as to how these should (or shouldn't) interact. Is there a better way to accomplish what I am trying to do?

### Have you read the CONTRIBUTING guide?

- [X] I've read the CONTRIBUTING guide

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.