Skip to content
GitLab Next
    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Menu
    Projects Groups Snippets
  • Get a free trial
  • Sign up
  • Login
  • Sign in / Register
  • GitLab FOSS GitLab FOSS
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 0
    • Merge requests 0
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar

GitLab 15.0 has launched! Please visit Breaking changes in 15.0 and 15.0 Removals to see which breaking changes may impact your workflow.

  • GitLab.org
  • GitLab FOSSGitLab FOSS
  • Issues
  • #17010
Closed
Open
Created Apr 28, 2016 by Mark Pundsack@markpundsackContributor

Manual actions to trigger pipeline jobs

Description including problem, use cases, benefits, and/or goals

Developers and Ops want to be able to manually trigger a action (which can be a deployment to a specific environment). For example, after a commit is made to master, a staging instance is automatically deployed, but production is triggered manually after user-acceptance or other testing happens.

Users want to be able to configure the deployments steps in .gitlab-ci.yml, but trigger it via API, CLI, and web UI. This provides benefits such as having configuration be version controlled and deploys be repeatable.

Users want to be able to look at the current status of the environments before triggering the deploys, therefore it makes sense to provide that action alongside a view of the environments.

Users want to be able to look at the status of a build/test run before triggering the deploys, therefore it makes sense to provide that action alongside builds/jobs in the new Stages view. I don't believe they need the action in the Jobs view.

Proposal

  1. Add manual as a possible option to when.
  2. Add an interface to trigger a manual action from the Pipelines page
  3. Add an interface to trigger a manual action from the Environments page

Example:

production:
  stage: deploy
  script: run-deployment $OMNIBUS_GITLAB_PACKAGE
  environment: production
  when: manual

Links / references

  • Mockups form https://gitlab.com/gitlab-org/gitlab-ce/issues/3743#note_5112792
  • Environments issue #17009 (closed)
Assignee
Assign to
Time tracking