bisnow/Deploy PR Stack with Helm
Deploys a Laravel PR stack to Kubernetes using Helm
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Jul 2, 2026
- License
- None
Pinned Snippet
uses: bisnow/github-actions-k8s-open-pr@f40f2a6862200ee4c34fd45ea817b0f20e85680c # v2.5.0tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| pr-number | Pull request number. Used to post the deployment comment on the PR and, unless stack-id is set, as the stack identity. Omit for PR-independent dev stacks (pass stack-id instead). | no | "" |
| stack-id | Stable stack identity used in the release name, hostname, and pr-number label (e.g. a PR number like "123", or a dev-stack slug like "dev-authfix"). Defaults to pr-number when omitted, so existing PR-stack callers are unaffected. | no | "" |
| image-tag | Docker image tag to deploy. If omitted, uses the tag already set in the values file. | no | "" |
| app-name | Application name (e.g., leads, dashboard) | yes | — |
| cloudformation-stack-name | CloudFormation stack name to query for IAM role ARN | yes | — |
| aws-account | AWS account name | no | bisnow |
| eks-cluster | EKS cluster name | no | bisnow-non-prod-eks |
| namespace | Kubernetes namespace | yes | — |
| helm-chart-version | Helm chart version | no | 1 |
| values-file-path | Path to Helm values file | no | .k8s/pr/values.yaml |
| ecr-registry | ECR registry URL | no | 560285300220.dkr.ecr.us-east-1.amazonaws.com |
| kustomization-path | Path to kustomization directory containing sealed secrets | no | .k8s/pr |
| helm-set-values | Additional Helm --set overrides to apply at deploy time (space-separated key=value pairs). | no | "" |
| external-database-host | External database host (e.g., pr-123-mysql.biscred-db.svc.cluster.local). If set, DB_HOST values will be configured. | no | "" |
| atomic | Run `helm upgrade --install` with `--atomic --cleanup-on-fail`. When true (default), a failed deploy rolls back automatically instead of leaving the release in a `pending-upgrade` state that blocks subsequent runs. Set to 'false' per-run if you need the crashed pods to remain in-cluster for kubectl inspection. | no | true |
| sealed-secrets-timeout | Seconds to wait for the sealed-secrets controller to materialize each target Secret after kubectl apply. | no | 60 |
| skip-connection-tests | Skip database and Redis connection tests | no | false |
| skip-redis-test | Skip Redis connection test (for apps using file-based cache) | no | false |
| app-id | GitHub App ID for posting a PR comment with the deployed URL. If omitted, no comment is posted. | no | "" |
| private-key | GitHub App private key for posting a PR comment with the deployed URL. | no | "" |
Outputs
| name | description |
|---|---|
| app-url | The deployed application URL |