Just wanted to find out what is the recommended process to integrate Tealium in a common release cycle? Say a Developer D is working on a feature F that needs a change in Tealium. QE Q is testing feature G of the site which may not need feature F changes. And production file should not have either of features F and G. How does Tealium recommend doing this and probably doing a patch to test and production environments while development is making changes for the next release ?
Does the community have any recommendations on allowing Tealium changes with and within the release process ?
My two cents is that this process ends up varying between clients and their release cycles or development philosophy. It's tough to give a guideline other than the features that have been built into Tealium.
I think the most useful feature is Publish Targets available in the Advanced Settings of the Tag Configuration. The tag can be restricted or allowed based on an environment. That way, for example, if you are waiting on something to be released while it is going through testing you can switch "Publish to Prod" to "No". Any extension scoped to the tag will inherit the Publish Target settings.
I'm not sure if anyone else will have insight but hopefully this helps spark a conversation.
The comment, "And production file should not have either of features F and G", makes me think that this is exactly what our publish environments are for.
If your development site is coded with the "dev" version of the utag.js and your staging site is coded with the "qa" version of the utag.js then you can simple push feature F to dev and/or qa to join feature G and where it can be tested.
Once both features F and G have been tested then you can do a production push when these features need to go to production.
The problem I am trying to solve is that, before you do a push-G-and-F-to-production, we need a change in production which is say a patch to already deployed file. Will this patch-push deploy features F and G as well ? If yes, how can I avoid that ?
You have the ability to disable features F and G by switching them off in the UI, see attached image.
This will not publish those features when you publish to any of the environments. Then when you're ready to push features F and G, simply re-enable them and publish again.