Commit 7e3202a8 authored by Jarek Ostrowski's avatar Jarek Ostrowski 👉 Committed by Fabio Busatto

Add DevOps stages icons to release posts

parent c1392423
......@@ -44,7 +44,7 @@ features:
documentation_link: 'https://docs.gitlab.com/ee/#amazing' # required
image_url: '/images/9_X/feature-a.png' # required
reporter: pm1 # required
stage: stagename # required
stage: stagename # required if the feature belongs to a DevOps stage.
issue_url: '' # required
description: | # supports markdown
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aliquid laudantium,
......@@ -77,7 +77,7 @@ features:
image_url: '/images/X_Y/feature-a.png' # required
video: 'https://www.youtube.com/embed/enMumwvLAug' # example - optional - overrides image_url
reporter: pm1 # required
stage: stagename # required
stage: stagename # required if the feature belongs to a DevOps stage.
issue_url: '' # required
description: | # supports markdown
Lorem ipsum [dolor sit amet](#link), consectetur adipisicing elit.
......@@ -90,7 +90,7 @@ features:
image_url: '/images/X_Y/feature-a.png' # required
video: 'https://www.youtube.com/embed/enMumwvLAug' # example - optional - overrides image_url
reporter: pm1 # required
stage: stagename # required
stage: stagename # required if the feature belongs to a DevOps stage.
issue_url: '' # required
description: | # supports markdown
Lorem ipsum [dolor sit amet](#link), consectetur adipisicing elit.
......@@ -105,7 +105,7 @@ features:
image_url: '/images/X_Y/feature-a.png' # optional - recommended
video: 'https://www.youtube.com/embed/enMumwvLAug' # example - optional - overrides image_url
reporter: pm1 # required
stage: stagename # required
stage: stagename # required if the feature belongs to a DevOps stage.
issue_url: '' # required
description: | # supports markdown
Lorem ipsum [dolor sit amet](#link), consectetur adipisicing elit.
......@@ -122,7 +122,7 @@ features:
image_url: '/images/X_Y/feature-a.png' # optional - recommended
video: 'https://www.youtube.com/embed/enMumwvLAug' # example - optional - overrides image_url
reporter: pm1 # required
stage: stagename # required
stage: stagename # required if the feature belongs to a DevOps stage.
issue_url: ''
description: | # supports markdown
Lorem ipsum [dolor sit amet](#link), consectetur adipisicing elit.
......@@ -139,7 +139,6 @@ features:
gitlab_com: false
documentation_link: 'https://docs.gitlab.com/omnibus/'
reporter: pm1 # required
stage: stagename # required
description: | # supports markdown
Lorem ipsum [dolor sit amet](#link), consectetur adipisicing elit.
Perferendis nisi vitae quod ipsum saepe cumque quia `veritatis`.
......@@ -148,7 +147,6 @@ features:
available_in: [core, starter, premium, ultimate]
performance_url: https://gitlab.com/groups/gitlab-org/merge_requests?scope=all&utf8=%E2%9C%93&state=merged&label_name%5B%5D=performance&milestone_title=X.X # Link to the merged MRs in the corresponding milestone
reporter: pm1 # required
stage: stagename # required
description: | # supports markdown
Lorem ipsum [dolor sit amet](#link), consectetur adipisicing elit.
Perferendis nisi vitae quod ipsum saepe cumque quia `veritatis`.
......
......@@ -448,12 +448,31 @@ This should be the PM responsible for the feature, so in the review
phase anyone knows who they have to ping in order to get clarifications.
It is a required field.
#### Team
- `team`: GitLab team that implemented the feature described in the item.
This should be one of the values allowed for [Team labels](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#team-labels).
With this field set, PMs can easily find anything that is related to their area, even if reported by other users.
It is a required field.
#### Stage
- `stage`: the [DevOps stage](/stages-devops-lifecycle/) the feature belongs to (lowercase):
[`manage`](/stages-devops-lifecycle/manage/),
[`plan`](/stages-devops-lifecycle/plan/),
[`create`](/stages-devops-lifecycle/create/),
[`verify`](/stages-devops-lifecycle/verify),
[`package`](/stages-devops-lifecycle/package),
[`release`](/stages-devops-lifecycle/release),
[`configure`](/stages-devops-lifecycle/configure),
and [`monitor`](/stages-devops-lifecycle/monitor).
The stages display as an icon next to the product tiers' badges.
`stage`'s fallback is not to output anything. Therefore, although
`stage` is a required field, if a feature doesn't belong to any of
the DevOps stages, delete the `stage` line.
Besides displaying the icon, with `stage` set, PMs can easily
find anything that is related to their area, even if reported by
other users.
**Note:** `team` was [deprecated](https://gitlab.com/gitlab-com/www-gitlab-com/merge_requests/17198)
in December 2018 for GitLab 11.6 in favor of `stage`, with a follow-up iteration
introducing their [respective icons](https://gitlab.com/gitlab-com/www-gitlab-com/merge_requests/17210).
{: .alert .alert-info}
#### Related issue, epic, merge request, or webpage
......
......@@ -34,7 +34,11 @@
%a.header-link{href: "##{feature_name_href}"}
%i.fas.fa-link
= top_feature.name
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(top_feature.available_in), gitlab_com: top_feature.gitlab_com, is_dark: true }
.badge-with-tiers
- if top_feature.stage
%a.stage-badge{ href: "/stages-devops-lifecycle/#{top_feature.stage}/", "data-toggle": "tooltip", "data-placement": "auto", title: "#{top_feature.stage.capitalize}" }
= partial "/includes/icons/sdlc-icons/#{top_feature.stage}.svg"
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(top_feature.available_in), gitlab_com: top_feature.gitlab_com, is_dark: true }
= kramdown(top_feature.description)
.column
- if top_feature.video
......@@ -84,7 +88,11 @@
%a.header-link{href: "##{feature_name_href}"}
%i.fas.fa-link
= primary_feature.name
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(primary_feature.available_in), gitlab_com: primary_feature.gitlab_com, is_dark: true }
.badge-with-tiers
- if primary_feature.stage
%a.stage-badge{ href: "/stages-devops-lifecycle/#{primary_feature.stage}/", "data-toggle": "tooltip", "data-placement": "auto", title: "#{primary_feature.stage.capitalize}" }
= partial "/includes/icons/sdlc-icons/#{primary_feature.stage}.svg"
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(primary_feature.available_in), gitlab_com: primary_feature.gitlab_com, is_dark: true }
= kramdown(primary_feature.description)
.row.reference-buttons
.col-md-12.col-sm-12
......@@ -131,7 +139,11 @@
%a.header-link{href: "##{feature_name_href}"}
%i.fas.fa-link
= primary_feature.name
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(primary_feature.available_in), gitlab_com: primary_feature.gitlab_com, is_dark: true }
.badge-with-tiers
- if primary_feature.stage
%a.stage-badge{ href: "/stages-devops-lifecycle/#{primary_feature.stage}/", "data-toggle": "tooltip", "data-placement": "auto", title: "#{primary_feature.stage.capitalize}" }
= partial "/includes/icons/sdlc-icons/#{primary_feature.stage}.svg"
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(primary_feature.available_in), gitlab_com: primary_feature.gitlab_com, is_dark: true }
= kramdown(primary_feature.description)
.row.reference-buttons
.col-md-12.col-sm-12
......@@ -173,10 +185,14 @@
/ secondary features
%section#secodary-features
.release-post-section.text-center.zero-bottom-margin
%h2{:id => "other-improvements-in-gitlab", :class => "features-released"}
%a.header-link{href: "#other-improvements-in-gitlab"}
%i.fas.fa-link
= "Other improvements in GitLab #{current_article.data.release_number}"
.title-with-stage
%h2{:id => "other-improvements-in-gitlab", :class => "features-released"}
%a.header-link{href: "#other-improvements-in-gitlab"}
%i.fas.fa-link
= "Other improvements in GitLab #{current_article.data.release_number}"
- if current_article.data.stage
%a.stage-badge{ href: "/stages-devops-lifecycle/#{current_article.data.stage}/", "data-toggle": "tooltip", "data-placement": "auto", title: "#{current_article.data.stage.capitalize}" }
= partial "/includes/icons/sdlc-icons/#{current_article.data.stage}.svg"
.release-row.align-top.divider
.secondary-release-column
- datafile.features.secondary.each_with_index do |secondary_feature, i|
......@@ -186,7 +202,11 @@
%a.header-link{href: "##{feature_name_href}"}
%i.fas.fa-link
= secondary_feature.name
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(secondary_feature.available_in), gitlab_com: secondary_feature.gitlab_com, is_dark: true }
.badge-with-tiers
- if secondary_feature.stage
%a.stage-badge{ href: "/stages-devops-lifecycle/#{secondary_feature.stage}/", "data-toggle": "tooltip", "data-placement": "auto", title: "#{secondary_feature.stage.capitalize}" }
= partial "/includes/icons/sdlc-icons/#{secondary_feature.stage}.svg"
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(secondary_feature.available_in), gitlab_com: secondary_feature.gitlab_com, is_dark: true }
= kramdown(secondary_feature.description)
- if secondary_feature.video
%figure.video_container
......@@ -238,7 +258,11 @@
%a.header-link{href: "##{feature_name_href}"}
%i.fas.fa-link
= secondary_feature.name
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(secondary_feature.available_in), gitlab_com: secondary_feature.gitlab_com, is_dark: true }
.badge-with-tiers
- if secondary_feature.stage
%a.stage-badge{ href: "/stages-devops-lifecycle/#{secondary_feature.stage}/", "data-toggle": "tooltip", "data-placement": "auto", title: "#{secondary_feature.stage.capitalize}" }
= partial "/includes/icons/sdlc-icons/#{secondary_feature.stage}.svg"
= partial "includes/features/badges", locals: { tier_hash: available_in_array_to_tier_hash(secondary_feature.available_in), gitlab_com: secondary_feature.gitlab_com, is_dark: true }
= kramdown(secondary_feature.description)
- if secondary_feature.video
%figure.video_container
......
......@@ -114,6 +114,24 @@ body {
}
}
.badge-with-tiers {
display: flex;
align-items: center;
.stage-badge {
height: 50px;
display: flex;
align-items: center;
justify-content: center;
margin-right: 16px;
svg {
height: 100%;
fill: $color-primary;
}
}
}
.content {
hr {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment