-
Notifications
You must be signed in to change notification settings - Fork 30
Description
Hi!
Thanks for this package, I'm using it for set up my own Flex server and it works great.
There is one thing that I'm missing (either it's a missing feature or I'm missing some configuration option): the ability to specify the branch in a private repository that should be used to build recipes.
My current setup:
A single repository (mnocon/recipes
) with a branch master
. Flex server set to use that repository to serve the recipes.
Issue
The issue I have right now is that I cannot easily test changes made to the recipes - I can only see if I specified them correctly if they are merged to master, but at that point they are already available to all users, which means reverting changes in case of an error. There is no "staging".
What I'd like to have
A single repository (mnocon/recipes
) with two branches:
- master (with a Flex server configured to serve recipes from it)
- staging (with another Flex server configured to serve recipes from it)
Then my workflow could look like:
- merge a change to
staging
branch - test the behaviour using the "staging" flex server
- if it's working correctly merge the staging branch to master (make it public for everyone).
I'm missing the option to set the branch staging
as the source of data for the second Flex server. If I understand correctly this part of the code: https://github.com/moay/server-for-symfony-flex/blob/master/src/RecipeRepo/RecipeRepo.php#L126
the default branch is always used.
My workaround
Two repositories: mnocon/recipes
and mnocon/recipes-staging
(mnocon/recipes-staging
is a fork of mnocon/recipes
). For each repository I have a Flex server configured to serve recipes from it.
Then I can achieve my goal with workflow like:
- merge a change to main branch of mnocon/recipes-staging
- test the behaviour using the "staging" flex server
- if it's working correctly perform a merge from recipes-staging to recipes (make it public for everyone).
But in an ideal world I'd like to avoid creating an additional repository.
Please let me know if something is unclear or if I have missed something, I'll be happy to answer any questions.