-
Notifications
You must be signed in to change notification settings - Fork 9
Integration detail history table, no context to know what revision to deploy #41
Comments
Having the success/error states would help, when you say commit messages, what do they look like? Are they like JIRA activities or the GitHub events? My concern is how are we defining "versions", and what do we count as "revisions"...I can see we easily have dozens of revisions...then we need to introduce pagination and perhaps search/filter? |
So every save operation is effectively a revision I believe, i.e. when you click 'save as draft' or 'publish'. Not sure on what the generated commit messages look like, we should definitely work to make them usable if they're not. With the data shown in the table, filtering isn't going to be very useful, like how would filtering on 'times used' help? :-) We could consider having a prompt for a commit message as part of saving perhaps that could then be used as part of the revision history, or perhaps better still, doing a 'publish' vs a 'save' is what bumps the revision history, and maybe we should require a message on a publish. |
Hmm..do you mean the backend would generate some kind of commit messages for every save operation? Having a prompt commit message is not a bad idea consider that's a common concept of version control. I'm not sure how 'save' and 'publish' should affect the revision history...I can see value in having a version for the 'save as draft' operation - e.g. an expert users create a draft integration and hand off to a citizen developer. The draft version would be something useful to have in this case. |
Yeah, it's almost like we want a 'tag' operation to tag the current deployed version, or something along those lines. @iocanel or @jimmidyson or @rhuss any thoughts? |
@gashcrumb @dongniwang The initial idea as described in https://github.com/syndesisio/syndesis-project/blob/master/proposals/044-integration-model.md#versioning and https://github.com/syndesisio/syndesis-project/blob/master/proposals/044-integration-model.md#deployment-of-an-integration-revision was that:
Does this makes sense ? |
My understanding is that what we see in the list is the result of a bug, that kept spawning clones of the draft revision. The fix for was merged yesterday, so I am wondering if this is still an issue. |
I think we should still maybe consider if the current design of the table helps the user understand what actions can be performed from it and what the result of those actions will be. Even with Roland's description as a user I have no indication when selecting another revision to deploy exactly what state that revision was in, I'd have to remember that revision Wonder if deploying a previous revision needs to be a 2-click process, i.e. you click deploy, the page prompts you with a visualization of the integration from that revision as an 'are you sure?' prompt. |
@gashcrumb good point. I think there're two things we can do:
|
Yeah, each revision includes the steps so either approach could be used. I think showing a visualization per line could get a bit visually noisy? But I can give it a try and we can see what we think, as I think it's really the only indicator why a line in the revision table is there. If it's too much then I think the modal approach would be a good approach as well. |
And actually when users perform a re-deploy action, there should be some kind of confirmation message. So having a modal may not be a bad idea. |
If users only have a few steps for that integration, it's probably fine. But I'm worried that once they have more than 2 or 3 steps...the table row is going to be very crowded. |
Exactly, and that's a hard view to figure out how to truncate properly while still showing useful information. Modal is sounding better :-) |
Copying @rhuss comment from another document to keep all the integration history/version/life cycle handling discussion in one place.
|
So @sjcox-rh @amysueg and I had a discussion about this and came up with a few solutions to address this problem, but we're not super happy about what we have so far. Given the time we have right now, the complexity of this problem, as well as having other priorities, we all agree it's best for us to spend more time investigating this issue and fully explore potential design solutions. In addition, we're hoping to get user feedback on this and incorporate that into our solution. That said, we will keep investigating and exploring and hopefully have a more clear idea on which direction to go next week. |
+1 sounds good to me! |
Reference: #35 |
Reference: syndesisio/syndesis-ui#1000 |
Just including a note here based on @rhuss comment about Integration Name and Description. Need to think about:
|
Reference: syndesisio/syndesis-ui#1001 |
I have a few questions as I start re-working the integration details page: Can different versions have different names?
cc: @rhuss @gashcrumb @chirino @amysueg @seanforyou23 @sjcox-rh |
Well shoot that's a good question :-) We don't currently prevent the user from changing the name, but what would be the runtime side-effect if the user does this? Do we rename the deployment config etc.? |
Ok, here comes another question: |
It's possible to change the start or finish connection currently yes, so yes there's no guarantee currently that the integration history will have the same start/finish connections throughout. |
@gashcrumb thanks! That's what I thought too.... @rhuss Can we talk about this tomorrow? |
@dongniwang Actually, I'd like to revive the idea of an IntegrationRevision (which actually is a concrete version of an integration definition (i.e. the connections + steps). They don't have individual names. An IntegrationRevision belongs to an Integration and somewhat inherits its name from it. So when you change the integration name, then its changed for all revisions implicitly. |
Now that I've implemented the buttons that basically let you roll back an integration I noticed that the history table is kinda hard to use :-)
For example, here's 9 revisions, what did I do in them:
The trouble is with no context there's no way to know what revision I want to pick.
Granted, we're currently lacking some data to show real numbers for 'uses' and for the 'success'/'error' column there which will help, but I wonder if we should show perhaps the commit message? Ideally if we generate intelligent commit messages that kinda indicate what changes were made to the integration then we could show them in this table.
@iocanel @dongniwang FYI...
The text was updated successfully, but these errors were encountered: