Feature request: ovewrite_permissions for conan server
See original GitHub issueHi,
I would like to describe a feature that would be really interesting for the company I am working at.
Scenario
In our company we do not allow anybody to write directly on the master branch of the main repository and everyone must work on branches and create Pull Request to merge things into master. We have a branch in which we are integrating conan into our project (C++ code) and infrastructure (Jenkins and nodes running in different platforms: Mac OSX, Linux and Windows). Most of the work is done in that branch, but now we are trying to see the different situations we could have and how to deal with them before merging that branch into master.
One of our main concerns is the stability of the conan-server we have configured in our local network. Since we should be able to compile the project in any moment of its history if somebody overwrite accidentally a recipe in the server we would need to manually clean-up the mess in the conan-server.
Example case
Let us imagine that the branch I mentioned before is already merged in master and we have in our project the dependency:
OpenMesh/4.1.1@piponazo/stable
Somebody decides to create a branch in which he/she will try to update that dependency. That person starts to make changes in the recipe but he/she forgets about updating the version number. Once he/she is confident about the changes and uploads the recipe to the server, the damage is done in the conan-server. The moment in which other compilations are triggered by the CI system on the master branch, it will take the new recipe uploaded by the person that is working on the feature-branch.
Possible solution
I have been discussing about this with some colleagues and we think that a nice feature to make more difficult to reach that situation would be to have a new option in the conan server for avoiding to overwrite recipes that are already in the server.
[overwrite_permissions]
I would like to know if somebody has already thought about this case or if there are other approaches for avoiding those situations. I know that this is a corner case in which we are assuming human failures, but sadly the experience says that human errors are frequent 😭.
If you consider that this feature would be interesting I would like to help to implement it 😉
Issue Analytics
- State:
- Created 7 years ago
- Reactions:1
- Comments:7 (3 by maintainers)
Thx. I will check it out.
Yes, the thing about SNAPSHOT is that it’s explicitly not a version.
On Wed, Nov 23, 2016 at 11:34 AM James notifications@github.com wrote:
Now we have the Artifactory community edition for C/C++ totally free and it has fine control of the permissions. We are keeping the conan server as the open source MIT reference implementation of the conan server protocol, but we recommend to use Artifactory because it is much more advanced.