Staging Environment

Deploying Contributions to Staging

If you are an approved contributor on Diffgram, or part of the Diffgram Core Team. Any of the PR's and branches can be deployed to our Staging Environment Using Github Actions. We will describe below the 2 main ways to deploy your code to staging for manual QA processes.

1. Using A Workflow Dispatch Action on Github Actions

🚧

Pre-requistes

You can only deploy this workflow if you are a Diffgram core member or contributor with appropriate permissions.

To deploy a branch or tag go to Diffgram's Github Repository and click the "Actions" section. Then Select the "Kubernetes Deploy" Action:

13481348

Once selected, Click the "Run Workflow" dropdown and select the tag or branch you want to deploy. Make sure to leave the "staging" environment option set.

776776

❗️

Changing the Environment Option

If you change the environment option to production or any other value, this staging environment deploy will not work. Production deploys need to be approved by the core team and most likely will be rejected if not made by one of the core team members.

# 2. Commenting Your PR

If you open a new pull request and want to showcase a feature for manual QA. You can use the /deploy command by commenting: /deploy on the PR. This will initiate a deployment and share the staging env URL on a new comment in the PR comments thread:

11341134

If the deployment failed, you will also be notified by our deployer bot:

10111011

Staging Environment Lifecycle Notes

  • All staging environments created on a PR will be destroyed once the PR is closed.
  • Every Staging environment is deployed on an independent DB so no data can be shared between staging environments.
  • Staging Environments deployed manually (From Github Actions Section), need to be destroyed manually too.