fabric8-ui / fabric8-runtime-console

DEPRECATED - the angular 2 runtime console for Builds, Pipelines, Environments and Runtime resources
https://github.com/fabric8-ui/fabric8-ui
5 stars 18 forks source link

Update the Pipelines UI #254

Open joshuawilson opened 7 years ago

joshuawilson commented 7 years ago

Please update the UI to match the wireframes.

https://redhat.invisionapp.com/share/3UAZNL1JQ#/screens/224946838

rawlingsj commented 7 years ago

@pmuir @catrobson @jstrachan do these designs cater for CI verses CD pipelines or are both on the same screen? I think that may get busy and it would be a nicer experience if you can just view the pull request or release pipelines.

FWIW on the next jenkins release builds will have an annotation on them to identify if the build is CI or CD.

apiVersion: v1
kind: Build
metadata:
  annotations:
    fabric8.io/pipeline.type: cd
catrobson commented 7 years ago

Right now I think these are only the CD pipelines. What is the difference from a user flow perspective for a CI pipeline - does the CI pipeline provide a "Pull request" action at the end of it at which point that would then create a CD pipeline once the pull request is accepted?

So - User clicks "Build" in Che, a CI pipeline is created and the code is deployed to environments based on definition in pipeline (usually integration I would guess). User clicks "pull request" in Che. Once pull request is approved, a CD pipeline is created and the code is deployed to Stage/Production based on definition of pipeline.

rawlingsj commented 7 years ago

The CI pipeline is run automatically when a user opens a pull request and on subsequent pushes to the PR branch. This will typically run unit tests, bayesian analysis, code quality steps etc. Further down the line we can perform a snapshot deployment so that folks can see the app running the Pull Request before merging to master.

Right now I'd say the main action on a pull request is Merge but we might want to support rebase and other github style features in the future.

BTW I can't remember if it was decided that users would use the github merge for the short term deliverables or be able to perform that action from the fabric8 ui.

catrobson commented 7 years ago

Ok, so for any deployment, would you be in either a CI flow or a CD flow, but not both? Trying to understand if they layout as we have it - DeploymentConfig --> Pipeline works for both CI and CD, and if in fact it would show a CI pipeline until there was a CD pipeline that would overwrite it? Maybe a short call would be better since I'm clearly not exactly sure how this works and what I need to reflect :)

rawlingsj commented 7 years ago

Yeah - right now the CI pipeline isn't doing a deployment, it will do in the future though.

So a CI pipeline is automatically triggered on a new or changed Pull Request, it will build a snapshot, run unit tests and bayesian analysis.

Once the PR is merged the CD pipeline will be automatically triggered. This will include doing a release, bayesian analysis, integration testing, deployment to stage, approve, deploy to run.

Maybe a short call would be better since I'm clearly not exactly sure how this works and what I need to reflect :)

sure thing :)