-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Staged Deployments #1653
Staged Deployments #1653
Conversation
…age" functionality
Co-authored-by: Zeger-Jan van de Weg <ZJvandeWeg@users.noreply.github.com>
…eudo-stages # Conflicts: # frontend/src/pages/project/index.vue
It is quite hard to hold a discussion about the basic naming of these concept when it is split across so many individual comments. We need all of the terms to hang together as a whole. There is a fundament design choice to be made around the terminology we choose to use. We have been calling this work 'staged deployments' for a long time now. The concept being you have a pipeline of stages to get from your development stage to the production stage. That is not unusual terminology and has been what we've been discussed in the design work through out. It is consistent with various existing platforms. We currently say you 'push' things between 'stages'. For the audit logging, we needed a verb for what happens to the target project. We went with import as we couldn't think of a suitable alternative that covered the cases it gets used for. If we want different terminology, then rather than change the odd word, we need to make sure it all works together.
|
Currently, we have "Push", no objections to "Promote" |
@joepavitt To practise Disagree and commit, let's move forward with Stages instead of environments. |
<FormHeading>Pipeline Stages</FormHeading> | ||
<FormRow> | ||
<template #description> | ||
<p class="mb-3">Here, you can configure a "Stage". This will enable you to deploy the updates to this project, directly onto the next "Stage" in your development Pipeline.</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
<p class="mb-3">Here, you can configure a "Stage". This will enable you to deploy the updates to this project, directly onto the next "Stage" in your development Pipeline.</p> | |
<p class="mb-3">Here, you can configure an "Environment". This will enable you to deploy the updates to another project, directly onto the next stage in your development pipeline.</p> |
const options = { | ||
sourceProject: parts.sourceProject | ||
} | ||
projectApi.updateProject(parts.target, options) | ||
.then(() => { | ||
alerts.emit(`Project export to '${parts.target}' has successfully started`, 'confirmation') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Help me a sec, what's the difference between export and copy to project?
Agreed that's not clear in the UI either. "Copy Project" I think should be renamed to "Duplicate Project". As it creates a new project in the process. "Export to Existing Project" - that allows the user to define a subset of properties/content from your project and export that to another - essentially what we are using in Staged Deployments |
Agreed. |
…uplicate/export functions
@ZJvandeWeg just an fyi - I have steered away from the "Stages" terminology, and gone with a more general "DevOps" approach, having come back to it, the "Stages" option in the settings wasn't clear enough, hopefully this makes it better. Have also made all of the changes requested re: labelling of buttons & feedback alerts |
In FlowForge it is possible to configure a DevOps pipeline for your Projects, | ||
these are done by configuring "Stages" in the Settings of a given Project. | ||
|
||
1. Navigate to your Project and click on the "Settings" option. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should add a screenshot would be nice, if you can?
Co-authored-by: Zeger-Jan van de Weg <ZJvandeWeg@users.noreply.github.com>
Description
Screen.Recording.2023-02-03.at.12.47.04.mov
This introduces a new section into the Project Settings labelled "DevOps". Similar to how the "Copy/Export" functionality works, a user can select a "Target" project, and push the latest version across. This is slightly less friction than the copy/export functionality as it defaults all of the options about which content to export from a Project (See linked issue for details on which features are exported).
Related Issue(s)
Closes #1580
Checklist
flowforge.yml
?flowforge/helm
to update ConfigMap Templateflowforge/CloudProject
to update values for Staging/ProductionLabels
backport
labelarea:migration
label