Manual deployment promotion + long lived preview deployments
Hello! I am working on a deployment pipeline and have a few questions:
1. Is there a way to promote preview deployments to production from a github actions?
- I would like to deploy a preview deployment, run my own smoke tests and then promote to production
2. How long do preview deployments last?
- Is there a scenario where one project needs to reference an older version of a different project?
- This is in an effort to combat api drift. I would like one projects to target a specific version of a different project
Thanks!
2 Replies
Hello! Let's address your questions one by one:
1. Promoting preview deployments to production from GitHub Actions:
The documentation does not explicitly mention the ability to promote a preview deployment to production directly from GitHub Actions. However, it does describe a manual process for promoting preview deployments to production through the Deno Deploy UI. Here's the process as outlined in the documentation:
- Navigate to the project page.
- Click on the Deployments tab.
- Click on the three dots next to the deployment you want to promote to production and select "Promote to Production".
If you need to automate this process, you might consider using the Deno Deploy API if it provides such functionality, but this is not covered in the documentation provided.
2. Lifetime of preview deployments:
The documentation does not specify an expiration time for preview deployments. It states that all deployments have a preview URL that can be used to view that specific deployment, and these deployments are immutable once created. This suggests that preview deployments could potentially last indefinitely as long as they are not manually deleted or replaced by new deployments. However, without explicit information on any time limits or retention policies, it's best to assume that they should remain accessible unless stated otherwise by Deno Deploy's policies or updates.
Regarding referencing older versions of a different project to combat API drift, the immutability of deployments implies that you can reference a specific deployment indefinitely. This would allow one project to target a specific version of a different project, as long as you have the URL to that specific deployment.
🦕 If you have further questions or need more detailed
guidance on automating promotion with GitHub Actions or the retention policy of preview deployments, I would recommend checking the official Deno Deploy documentation or reaching out to the Deno Deploy support team for the most accurate and up-to-date information.