Add CI support
Closed this issue · 6 comments
It'd be beneficial to add the ability to integrate the cli into a CI workflow to automate the deployment of styles and components without the need to pull down and authenticate via login.
- Support authenticating using a campaign key as an environment variable
- Support selecting campaign automatically based on key
- Remove need for user intervention if key is passed (assume that we're in an automated environment)
@flynnham We already have this:
https://github.com/raisely/cli#cicd-usage
Main issue is that components have different UUIDs between staging and production accounts – so we don't have a good dev -> staging -> prod workflow.
As a user facing library though, I don't think that's an issue we should be tasked with solving?
CI support isn't super useful without it, since there's no support for branches. Staging -> Prod is one of the main holes in our developer experience right now.
In that case, we'd just need an additional check (for staging deploys) to remap uuids to their component name, which would be the same across staging. That's as easy as just requesting the component models for a given campaign.
So it'd take the staging component uuid instead
I think it needs a bit more thought, because the styles are mapped to the campaign path too which will be different between staging and production campaigns. We need a way to link campaigns together probably for their different states.