- Go to your project repository on
GitHub → Settings → Environments → New environmentCreate an environment namedfeatureand click Configure Environment. - Under Environment secrets, add the following:
DO_DROPLET_IP(will be provided on request)APP_ENV_FILE(your app’s full.envcontent) - In your project, checkout to a feature branch (preferably feature/deploy).
- Copy the
infrafolder from any project that already has feature deployment configured. - Copy the feature.yaml workflow file from
.github/workflowsin the same project and update theAPP_NAMEvariable inside the file to match your app’s name. - Commit and push your changes — the pipeline will start automatically.
- Check the pipeline under Actions in GitHub and fix any errors reported by the workflow.
- If everything runs successfully, a sandbox feature URL will be generated during the deploy step.
This means your app hasn’t been exposed through the gateway yet. Do the following:
- Locate and clone the devops repository.
- Navigate to
gateway/routes/feature.route.yaml. - Add a service record under services:
yourappname:
loadBalancer:
servers:
- url: http://yourappname:3000(You can confirm the correct internal URL from the CD pipeline — check the last 3 runs.)
- Add a route record under routers:
yourappname-feature:
rule: "HostRegexp(`yourappname-.+.feature.check-dc.com`)"
service: yourappname- Commit and push your changes.
- Restart the gateway pipeline:
Go to the
devops repo → Actions → Application Gateway → Run workflowSelect feature from the dropdown.