Symfony Flex PUBLIC recipe repository.
Use this endpoint in consumer composer.json:
https://api.github.com/repos/artack/suissetec_recipes/contents/index.json?ref=main
{
"extra": {
"symfony": {
"endpoint": [
"https://api.github.com/repos/artack/suissetec_recipes/contents/index.json?ref=main",
"flex://defaults"
]
}
}
}Recipes are authored as source files in:
vendor/package/version/manifest.jsonvendor/package/version/config/...(or any other files copied by the recipe)
Example:
suissetec/sso-auth-bundle/0.1/manifest.json
Yes, a compile step is required.
Run:
./compile-recipes.shWhat it does:
- Scans all
vendor/package/versiondirectories containingmanifest.json. - Writes compiled artifacts to
build/vendor.package.version.json. - Base64-encodes file payloads for Flex (
files.*.contents). - Rebuilds
index.jsonrecipesmap from discovered source recipes. - Regenerates
aliases.jsonwith one deterministic alias per package (vendor-package) and preserves valid existing custom aliases. - Keeps
index.jsonat repo root and sets_links.recipe_templateto GitHub APIcontents/build/{package_dotted}.{version}.json?ref=main.
This works for any number of vendors, packages and versions added to this repo.
- Edit source recipe files.
- Run
./compile-recipes.sh. - Commit source changes plus generated
build/*.jsonartifacts andindex.json. - Push to
main.
If an older compiled artifact had non-Base64 file payloads, recover in consumer project:
rm config/packages/suissetec_sso_auth.yaml config/routes/suissetec_sso_auth.yaml
composer clear-cache
composer recipes:install suissetec/sso-auth-bundle --force -v