Skip to content

Display when environments will auto-stop

Andrew Fontaine requested to merge afontaine/environment-auto-stop-at into master

What does this MR do and why?

Show a relative time for when the environment is set to auto stop as well as a tooltip with the absolute time.

Only displays future stop dates (Auto stop in ) as opposed to past dates (Auto stopped ago)

Screenshots or screen recordings

image

How to set up and validate locally

  1. Make sure to turn on the new_environments_table feature flag. On the GitLab repository, run:
cd ./bin 
./rails console
Feature.enable(:new_environments_table) //turns on the feature flag
Feature.disable(:new_environments_table) //turns off the feature flag, takes some time to kick in
  1. Enable runners in your GDK/Gitpod -- see instructions
  2. Then add the following .gitlab-ci.yml to a project for some deployments:
stages:
    - deploy
    - stop
image: alpine:latest

deploy-prod:
    stage: deploy
    script:
        - sleep 6000
        - echo "deploying prod"
    environment:
        name: production

deploy-staging:
    stage: deploy
    script:
        - echo "deploying staging"
    environment:
        name: staging
        url: https://example.com
    when: manual

deploy-review:
    stage: deploy
    script:
        - echo "Deploying review/$CI_COMMIT_REF_NAME"
    environment:
        name: review/$CI_COMMIT_REF_NAME
        auto_stop_in: 1 week
    only:
        - branches
    except:
        - main


stop_review_app:
  script: stop-review-app
  stage: stop
  environment:
    name: review/$CI_COMMIT_REF_SLUG
    action: stop
  rules:
    - if: $CI_MERGE_REQUEST_ID
      when: manual

Make an MR, run a pipeline for it, and check out the environments page!

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 Andrew Fontaine

Merge request reports

Loading