-
Notifications
You must be signed in to change notification settings - Fork 54
Write user stories #28
Comments
These are notes from a conversation with @michelleN and @jeremyrickard Dev Looptight dev loop against the current directory
Should not have to push to docker, the local store or any other commands than what's above. Signing should magically work, and not require Signed Bundles in Local DevelopmentHow does a user get started with signing? Maybe this works already out of the box, and just needs to be documented? CI StepsWhat would a typical CI look like?
Managing a company's keys and key distributionHow are public keys for a company distributed so that when people isntall their bundle, that the bundle can be verified? Install a third-pary bundleAs an end user, how do I add bundle repo and install bundles from it, working off of the local store only |
First time bundle authorAs someone who looks at duffle/CNAB for the first time, I want to be able to get started with it by making something useful for myself. I have an application that I already know how to deploy in the cloud but I want to package that install script inside of a bundle and make it available to my peers (teammates or other folks in my company). User is just getting their feet wet here# download duffle binary and put it in path
$ duffle init # get my local env ready / prep my keys for signing
$ duffle create mybundle # scaffold mybundle directory with all the bits that make up a bundle
$ duffle build && duffle install someName . # builds invocation image, install, see some magic User wants to customize install a little bitJump right on in; the water is warm$ duffle uninstall someName # delete the claim
# ... iterate on bundle by changing the run script install instructions, etc.
$ duffle build && install someName . # re-install to see your custom install logic work
# ... iterate until you have an install step that works the way you want User is thinking this might actually be useful for me. 🤔$ vi duffle.toml # edit the duffle.toml to include your registry info/name/version/descr
$ duffle build --push-artifacts User is like... wait this is actually useful and I want to show it off! 🎉The following steps would be in line with whatever the scenario for distributing bundles looks like but at this point, this user can take the bundle file they created and distribute that any way they choose and their teams can try it out. Might be as simple as committing the bundle.json file to a github repo |
(Note: I totally agree that this is what basic user example ought to be. This workflow (which is just about identical) is what I had in mind:
I do think, though, that we also want to cover the case where a developer grabs an existing bundle and works on that:
|
Also, in my mind this is how a project goes if the user is writing application code and not just building bundles:
In other words, duffle does not care about the user's application, and makes only one assumption: that their configuration can be expressed in the CNAB. |
On 432, I ask whether if we use local storage, we can just eliminate the
So there's no real room for confusion like there was before. So in that case, the user story for editing a description or a version field goes like this:
|
Also, yesterday I had brain-dumped on user stories on this issue: #424 (comment) |
|
original reasoning for the: don't want people to be hand editing the bundle.json. we've never handled the docker manifest before. |
relevant issue comment around user stories: #424 (comment) |
When I have used duffle to develop a new bundle, I used the following workflow:
Because we're creating/editing the bundle.json by hand and are already familiar with creating docker images using docker directly, we only involve duffle when we want to execute the bundle. Because we started by implementing only install & making it work completely (on a bundle where install and upgrade will eventually be identical), it is not obvious that you should run uninstall (/make uninstall work on your bundle just to get rid of old claims). Adding the indexing variable is to get around not being able to re-run install. Using a variable makes it as easy as possible to get new, predictable claim names; sometimes we started the line with Due to #866, when we wanted to add a custom action, we had to get our bundle into |
No description provided.
The text was updated successfully, but these errors were encountered: