Skip to content

6. prdeploy portal

The web portal for prdeploy allows you to view and manage settings and deployments. These are the installation instructions for Kubernetes.

prdeploy settings

1. Helm chart install

  1. Install the prerequists in Kubernetes:
  2. ingress-nginx
  3. cert-manager with letsencrypt
  4. external-secrets
  5. Create a new file prdeploy-values.yaml and add the following content:
global:
  ingress:
    host: prdeploy.myorg.com
  aws:
    region: us-west-2
  serviceAccounts:
    backend:
      annotations:
        eks.amazonaws.com/role-arn: '<Role ARN of prdeploy-backend from AWS Configuration>'

chart-prdeploy-app:
  github:
    oauth:
      clientId: '<GitHub App OAuth Client ID>'
  1. Run the following command with helm:
helm upgrade prdeploy oci://registry-1.docker.io/greggbjensen/prdeploy \
  --install --reset-values --force --create-namespace -n prdeploy \
  -f ./prdeploy-values.yaml
  1. Configure each of the following steps in the prdeploy portal.

2. Repositories

prdeploy repositories

NOTE: For each of the following sections, you can enter the settings either in Owner Defaults for all repositories or Repository Override for a specific repository. Any repository can override the Owner Defaults.

  1. Log into your prdeploy.myorg.com site with your GitHub account.
  2. You will be taken to the Repositories page.
  3. Click Add Repository.
  4. Fill in the fields as follows:
Field Value
Owner The GitHub company name or a company repository or your login for a personal one.
Repository The git repository you want to do deployments from.

NOTE: You must click Save in the top right before leaving the Settings area to save changes.

3. Environments

prdeploy settings Environments

  1. In the portal, click Settings on the left nav.
  2. Go to the Repository Override tab and click Add Environent.
  3. Type in the Name of the environment and click Add environment
  4. Repeat this for each environment you want to add (Dev, Stage, Prod, etc.).
  5. Populate at least the following fields for each environment:
Field Value
Queue The unique variable name, without spaces, to use for that environment (DEV_PR_QUEUE).
URL The full URL where the environment can be viewed.

4. Services

prdeploy settings Services

  1. Go to the Services link on the left panel.
  2. Click on Add Service.
  3. Type the Service Name of what you want deployed and click Add Service.
  4. Adjust the Path of the service as needed.
  5. This will be the path from the root of your repository to where the code for that service is.
  6. Do this for each service you want to deploy.

5. Slack

prdeploy settings Slack

  1. Check the Notifications enabled box.
  2. Fill in the fields as follows:
Field Value
Token The Bot User OAuth Token you kept from the 3. Slack App step.
Email domain The root domain of your email addresses you use in Slack (myorg.com).
Deploy URL The deploy webhook URL you kept from the 3. Slack App step.
Release URL The release webhook URL you kept from the 3. Slack App step.

NOTE: As necessary, you can fill in email aliases if prdeploy finds the incorrect match for the email used by a team member.

6. JIRA

prdeploy settings JIRA

  1. Check the Add issues enabled box.
  2. Fill in the fields as follows:
Field Value
Host The host name from the 4. Jira Integration step (https://myorg.atlassian.net).
Username The email address of the user you created the API token for in the 4. Jira Integration step.
Token The API token you created under that user in the 4. Jira Integration step.

7. Deployment

prdeploy settings Deployment

  1. The defaults here will generall be correct, verify the Release Environment and the Default Environment.
  2. Make sure the prdeploy portal URL reflects the current site (https://prdeploy.myorg.com).
    1. This is used in pull request comment links.
  3. Make sure to click Save in the top right before leaving the Settings page.

NOTES:

Builds workflow pattern is the regular expression used to extract the service name to match with Services from your GitHub Action build workflow.

Builds check pattern is the regular expression used to recognize the job within the matched Build workflow that produce a Docker image for your services.

Next step - 7. GitHub Actions