Skip to content

🚀 Feature: Gated Scaffolder Workflows #16622

Open
@taras

Description

🔖 Feature description

We need a way to created Scaffolder workflows that includes actions that may span days.

There are a bunch of use cases that need this, for example:

  1. Wait for pull request to be merged - when a scaffolder workflow creates a pull request, we might want to wait for the pull request to be merged before continuing. Since merging pull requests requires human intervention, it may take days if not weeks for that action to complete.
  2. Wait for another user to provide additional input - when creating workflows that require approval from someone within the organization, we might need to wait for the user to press a button before the workflow continues.
  3. Wait for a resource to be created - when creating services, you might want to wait until a resource like a database is created before proceeding.

There is no way to do this currently.

🎤 Context

At the last Adoption SIG, I demoed using the Embedded Scaffolder Workflow to onboard an entity to use TechDocs by creating a pull request with everything necessary to onboard the entity. This demo is missing a few details that are required to create a complete user experience.

We need to handle the following states,

  1. The workflow ran and created a pull request that needs to be merged. We need to show to the user that the PR is waiting.
  2. After the PR is merged, but before the YAML document is ingested, we need to show to the user that onboarding is pending ingestion.

Handing these states consistently is best handled by the framework because there are many ways to mess this up. The Gated Scaffolder Workflows will make handling these use cases very easy.

✌️ Possible Implementation

We need to create an RFC to flash out how this will work.

👀 Have you spent some time to check if this feature request has been raised before?

  • I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

Are you willing to submit PR?

Yes I am willing to submit a PR!

Metadata

Assignees

No one assigned

    Labels

    area:scaffolderEverything and all things related to the scaffolder project areaenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions