Skip to content
Snippets Groups Projects

Add frontend files for GitLab Pages Pipeline Wizard

Merged Janis Altherr requested to merge prepare-pages-for-pipeline-wizard into master
All threads resolved!

What does this MR do and why?

This commit introduces two changes:

  1. the frontend files needed for an onboarding view for Pages that will enable the user to configure their .gitlab-ci.yml file directly in the UI.
  2. A GraphQL Mutation that enables the frontend to toggle the onboarding_complete setting in project_pages_metadata

Note: These interfaces are not yet visible to the user as Rails does not yet render the /new path. !78276 (merged) will subsequently introduce this. This MR is to reduce the MR size of !78276 (merged).

Screenshots or screen recordings

Note: These interfaces are not yet visible to the user as Rails does not yet render the /new path

Step 1

Screenshot_2022-06-23_at_15.19.43

Step 2

Screenshot_2022-06-23_at_15.19.59

Step 3

Screenshot_2022-06-23_at_15.18.29

Step 4 (Commit step)

Screenshot_2022-06-23_at_15.19.24

These are strongly recommended to assist reviewers and reduce the time to merge your change.

How to set up and validate locally

Note that this MR does not yet expose the new feature. To validate, I recommend checking out the follow-up MR !78276 (merged). See the detailed steps below:

  1. check out the use-pipeline-wizard-for-pages branch

  2. Enable the feature flag with echo "Feature.enable(:use_pipeline_wizard_for_pages)" | rails c

  3. Open a repository that you have owner access to.

  4. Go to Settings > Pages.

  5. Use the Pipeline wizard, click "commit" at the end

  6. See the page reloading to waiting state

  7. Confirm the waiting state is still there after a page reload

  8. If you

    • have your runner set up correctly
    • work in an actual static site app repo (e.g. an Astro app)
    • and have used actual, real settings during the wizard set up a page reload will show the pages settings after reload instead of the "waiting" view.

    alternatively, simulate a successful deploy with the console by running rails c, then:

    project = Project.find(<project-id>)
    project.pages_metadatum.update(deployed: true)

    (note that this will not actually deploy your pages site)

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Janis Altherr

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • assigned to @janis

  • Suggested Reviewers (beta)

    The individuals below may be good candidates to participate in the review based on various factors.

    You can use slash commands in comments to quickly assign /assign_reviewer @user1.

    Suggested Reviewers
    @rspeicher, @mayra-cabrera, @dbalexandre, @psimyn, @jivanvl

    If you do not believe these suggestions are useful, please apply the label Bad Suggested Reviewer. You can also provide feedback for this feature on this issue: https://gitlab.com/gitlab-org/gitlab/-/issues/357923.

    Automatically generated by Suggested Reviewers Bot - an experimental ML-based recommendation engine created by ~"group::applied ml".

    Edited by GitLab Reviewer-Recommender Bot
  • 1 Warning
    :warning: ef3430df: Commits that change 30 or more lines across at least 3 files should describe these changes in the commit body. For more information, take a look at our Commit message guidelines.
    2 Messages
    :book: CHANGELOG missing:

    If you want to create a changelog entry for GitLab FOSS, add the Changelog trailer to the commit message you want to add to the changelog.

    If you want to create a changelog entry for GitLab EE, also add the EE: true trailer to your commit message.

    If this merge request doesn't need a CHANGELOG entry, feel free to ignore this message.

    :book: This merge request adds or changes documentation files. A review from the Technical Writing team before you merge is recommended. Reviews can happen after you merge.

    Documentation review

    The following files require a review from a technical writer:

    • doc/api/graphql/reference/index.md

    The review does not need to block merging this merge request. See the:

    Reviewer roulette

    Changes that require review have been detected!

    Please refer to the table below for assigning reviewers and maintainers suggested by Danger in the specified category:

    Category Reviewer Maintainer
    backend Steve Abrams (@sabrams) (UTC-6, 8 hours behind @janis) Dylan Griffith (@DylanGriffith) (UTC+10, 8 hours ahead of @janis)
    frontend Miranda Fluharty (@mfluharty) (UTC-6, 8 hours behind @janis) Jannik Lehmann (@jannik_lehmann) (UTC+2, same timezone as @janis)

    To spread load more evenly across eligible reviewers, Danger has picked a candidate for each review slot, based on their timezone. Feel free to override these selections if you think someone else would be better-suited or use the GitLab Review Workload Dashboard to find other available reviewers.

    To read more on how to use the reviewer roulette, please take a look at the Engineering workflow and code review guidelines. Please consider assigning a reviewer or maintainer who is a domain expert in the area of the merge request.

    Once you've decided who will review this merge request, assign them as a reviewer! Danger does not automatically notify them for you.

    If needed, you can retry the :repeat: danger-review job that generated this comment.

    Generated by :no_entry_sign: Danger

    • Resolved by 🤖 GitLab Bot 🤖

      :wave: @janis - please add typebug typefeature, typemaintenance or a subtype label to this merge request.

      • typebug: Defects in shipped code and fixes for those defects. This includes all the bug types (availability, performance, security vulnerability, mobile, etc.)
      • typefeature: Effort to deliver new features, feature changes & improvements. This includes all changes as part of new product requirements like application limits.
      • typemaintenance: Up-keeping efforts & catch-up corrective improvements that are not Features nor Bugs. This includes restructuring for long-term maintainability, stability, reducing technical debt, improving the contributor experience, or upgrading dependencies.

      See the handbook for more guidance on classifying.


      This message was created with automation and Engineering Productivity is looking for feedback in this issue: https://gitlab.com/gitlab-org/quality/engineering-productivity/team/-/issues/43

  • Janis Altherr changed the description

    changed the description

  • 🤖 GitLab Bot 🤖 resolved all threads

    resolved all threads

  • Janis Altherr changed milestone to %15.2

    changed milestone to %15.2

  • Janis Altherr added 1 commit

    added 1 commit

    • 0c4b619b - Add mark_onboarding_complete mutation for Pages

    Compare with previous version

  • Bundle size analysis [beta]

    This compares changes in bundle size for entry points between the commits ba59ba47 and 391e551e

    :sparkles: Special assets

    Entrypoint / Name Size before Size after Diff Diff in percent
    average 3.45 MB 3.45 MB - 0.0 %
    mainChunk 1.88 MB 1.88 MB - 0.0 %

    :fearful: Significant Growth: 1

    Expand
    Entrypoint / Name Size before Size after Diff Diff in percent
    pages.groups.runners.show 970.43 KB 1013.89 KB +43.46 KB 4.5 %

    Your MR has at least one entrypoint growing significantly (more > 1 KB or 2%). If you write new or extend existing features, this is expected and there is nothing to worry about.

    Please consider pinging someone from the FE Foundations (@dmishunov, @justin_ho, @mikegreiling or @nmezzopera) for review, if you are unsure about the size increase.

    Note: We do not have exact data for ba59ba47. So we have used data from: 4dddb5ba.
    The target commit was too new, so we used the latest commit from master we have info on.
    It might help to rerun the bundle-size-review job
    This might mean that you have a few false positives in this report. If something unrelated to your code changes is reported, you can check this comparison in order to see if they caused this change.

    Please look at the full report for more details


    Read more about how this report works.

    Generated by :no_entry_sign: Danger

  • Janis Altherr added 2 commits

    added 2 commits

    • af8f1041 - Add translation file
    • ce991b42 - Use waitForPromises after flushPromises removal

    Compare with previous version

  • Janis Altherr changed the description

    changed the description

  • Janis Altherr changed the description

    changed the description

  • Janis Altherr requested review from @jagood and @justin_ho

    requested review from @jagood and @justin_ho

  • Allure report

    allure-report-publisher generated test report!

    review-qa-blocking: :x: test report for 76ed1462

    expand test summary
    +---------------------------------------------------------------------------+
    |                              suites summary                               |
    +----------------------+--------+--------+---------+-------+-------+--------+
    |                      | passed | failed | skipped | flaky | total | result |
    +----------------------+--------+--------+---------+-------+-------+--------+
    | Plan                 | 44     | 3      | 1       | 47    | 48    | ❌     |
    | Create               | 23     | 0      | 2       | 23    | 25    | ❗     |
    | Manage               | 34     | 3      | 2       | 39    | 39    | ❌     |
    | Configure            | 0      | 0      | 1       | 0     | 1     | ➖     |
    | Verify               | 12     | 0      | 1       | 12    | 13    | ❗     |
    | Secure               | 2      | 0      | 0       | 2     | 2     | ❗     |
    | Package              | 0      | 0      | 1       | 0     | 1     | ➖     |
    | Protect              | 2      | 0      | 0       | 2     | 2     | ❗     |
    | Version sanity check | 0      | 0      | 1       | 0     | 1     | ➖     |
    +----------------------+--------+--------+---------+-------+-------+--------+
    | Total                | 117    | 6      | 9       | 125   | 132   | ❌     |
    +----------------------+--------+--------+---------+-------+-------+--------+
  • Jason Goodman
  • Jason Goodman
  • Jason Goodman
  • Jason Goodman
  • Jason Goodman
  • Jason Goodman
  • Jason Goodman
  • Jason Goodman removed review request for @jagood

    removed review request for @jagood

  • Janis Altherr added 1 commit

    added 1 commit

    Compare with previous version

  • Janis Altherr requested review from @jagood

    requested review from @jagood

  • Jason Goodman removed review request for @jagood

    removed review request for @jagood

  • Janis Altherr added 1 commit

    added 1 commit

    Compare with previous version

  • Janis Altherr added 463 commits

    added 463 commits

    • b99877cb...5de54127 - 457 commits from branch master
    • e6400618 - Add frontend files for GitLab Pages Pipeline Wizard
    • 9f1a4e3a - Add mark_onboarding_complete mutation for Pages
    • 58a44760 - Add translation file
    • 065a52ca - Use waitForPromises after flushPromises removal
    • 062615ad - Apply Reviewer suggestions
    • 87c0bf7d - Apply Reviewer suggestions

    Compare with previous version

  • Justin Ho Tuan Duong
  • Justin Ho Tuan Duong removed review request for @justin_ho

    removed review request for @justin_ho

  • Janis Altherr added 1 commit

    added 1 commit

    Compare with previous version

  • Janis Altherr requested review from @justin_ho

    requested review from @justin_ho

  • Janis Altherr requested review from @jagood

    requested review from @jagood

  • Janis Altherr mentioned in issue #366528

    mentioned in issue #366528

  • Janis Altherr added 116 commits

    added 116 commits

    • 47b0f34a...52036352 - 109 commits from branch master
    • 88a53ee8 - Add frontend files for GitLab Pages Pipeline Wizard
    • b0726557 - Add mark_onboarding_complete mutation for Pages
    • 807f6080 - Add translation file
    • c069a8ed - Use waitForPromises after flushPromises removal
    • aa295a7c - Apply Reviewer suggestions
    • ca928a9f - Apply Reviewer suggestions
    • 448d4e0b - Add FE reviewer suggestions

    Compare with previous version

  • Justin Ho Tuan Duong approved this merge request

    approved this merge request

  • Justin Ho Tuan Duong removed review request for @justin_ho

    removed review request for @justin_ho

  • :wave: @justin_ho, thanks for approving this merge request.

    This is the first time the merge request is approved. To ensure full test coverage, a new pipeline has been started.

    For more info, please refer to the following links:

  • Janis Altherr added 1 commit

    added 1 commit

    • cd7bf951 - Remove loading label from GlLoadingIcon to use default

    Compare with previous version

  • Janis Altherr added 1 commit

    added 1 commit

    Compare with previous version

  • Janis Altherr added 1 commit

    added 1 commit

    Compare with previous version

  • Jason Goodman
  • Jason Goodman removed review request for @jagood

    removed review request for @jagood

  • Janis Altherr added 1 commit

    added 1 commit

    • e0fc99fa - Reformat description for better readbility

    Compare with previous version

  • A deleted user added backend documentation labels

    added backend documentation labels

  • Janis Altherr requested review from @jagood

    requested review from @jagood

  • Janis Altherr added 713 commits

    added 713 commits

    Compare with previous version

  • Jason Goodman approved this merge request

    approved this merge request

  • Jason Goodman removed review request for @jagood

    removed review request for @jagood

  • Janis Altherr resolved all threads

    resolved all threads

  • Author Maintainer

    Hey @stanhu for backend , @pslaughter for frontend - would you please maintainerize this?

  • Janis Altherr requested review from @stanhu and @pslaughter

    requested review from @stanhu and @pslaughter

  • Stan Hu approved this merge request

    approved this merge request

  • Stan Hu removed review request for @stanhu

    removed review request for @stanhu

  • Looking at this now! :eyes:

  • Paul Slaughter
  • Paul Slaughter
  • Paul Slaughter
  • Paul Slaughter
  • Paul Slaughter
  • Paul Slaughter
  • Paul Slaughter removed review request for @pslaughter

    removed review request for @pslaughter

  • Janis Altherr mentioned in issue #367234

    mentioned in issue #367234

  • Janis Altherr added 2 commits

    added 2 commits

    • 959b0e50 - add reviewer suggestions
    • aee37ff2 - Add tests for the pages pipeline wizard template

    Compare with previous version

  • Janis Altherr requested review from @pslaughter

    requested review from @pslaughter

  • Janis Altherr added 2 commits

    added 2 commits

    • 2282aa07 - Add maintainer suggestions
    • 79ce297a - Add tests for the pages pipeline wizard template

    Compare with previous version

  • Looking at this now! :eyes:

  • Paul Slaughter
  • Paul Slaughter
  • Paul Slaughter removed review request for @pslaughter

    removed review request for @pslaughter

  • Janis Altherr mentioned in issue #367514

    mentioned in issue #367514

  • Janis Altherr added 3 commits

    added 3 commits

    • e6e54ab6 - Hardcode all test variables
    • 676f8d6a - Fix the test for yaml parse errors
    • 28da3a13 - Remove files to add later

    Compare with previous version

  • Janis Altherr added 934 commits

    added 934 commits

    Compare with previous version

  • Paul Slaughter requested review from @pslaughter

    requested review from @pslaughter

  • Looking at this now! :eyes:

  • Paul Slaughter resolved all threads

    resolved all threads

  • Paul Slaughter mentioned in commit 391e551e

    mentioned in commit 391e551e

  • Paul Slaughter added 1 commit

    added 1 commit

    • 391e551e - Fix binding extra $props to pages_pipeline_wizard

    Compare with previous version

  • Paul Slaughter resolved all threads

    resolved all threads

  • Paul Slaughter approved this merge request

    approved this merge request

  • Thanks again @janis for all the work here! MR LGTM :thumbsup:

    lgtm

    Approving and MWPS'ing...

  • Paul Slaughter enabled an automatic merge when the pipeline for ad30a8d9 succeeds

    enabled an automatic merge when the pipeline for ad30a8d9 succeeds

  • Paul Slaughter mentioned in commit eaae724e

    mentioned in commit eaae724e

  • added workflowstaging label and removed workflowcanary label

  • Please register or sign in to reply
    Loading