0
0
Firebasecloud~10 mins

Preview channels in Firebase - Step-by-Step Execution

Choose your learning style9 modes available
Process Flow - Preview channels
Create Preview Channel
Deploy Preview Build
Generate Preview URL
Share URL for Testing
Receive Feedback
Decide to Promote or Discard
Promote to Live
This flow shows how a preview channel is created, deployed, shared for testing, and then either promoted to live or deleted.
Execution Sample
Firebase
firebase hosting:channel:create preview-123
firebase deploy --only hosting:preview-123
firebase hosting:channel:open preview-123
Commands to create a preview channel, deploy to it, and open the preview URL.
Process Table
StepActionInput/CommandResultNotes
1Create preview channelfirebase hosting:channel:create preview-123Preview channel 'preview-123' createdChannel ready to receive deploys
2Deploy to preview channelfirebase deploy --only hosting:preview-123Build deployed to 'preview-123'Preview site updated with new build
3Open preview URLfirebase hosting:channel:open preview-123URL generated: https://preview-123--project.web.appURL can be shared for testing
4Share URLShare URL with testersTesters access preview siteFeedback collected
5Decide promotionPromote or delete previewIf promote: promote to live If delete: remove preview channelFinal step based on feedback
6ExitN/AProcess endsPreview channel either promoted or deleted
💡 Process ends after promotion or deletion of preview channel
Status Tracker
VariableStartAfter Step 1After Step 2After Step 3After Step 5Final
previewChannelNamenullpreview-123preview-123preview-123preview-123null or live
previewURLnullnullhttps://preview-123--project.web.apphttps://preview-123--project.web.appnull or live URLnull or live URL
deploymentStatusnonecreateddeployeddeployedpromoted or deletedpromoted or deleted
Key Moments - 3 Insights
Why do we need to create a preview channel before deploying?
Creating a preview channel sets up an isolated environment for your build. As shown in step 1 of the execution_table, without this, you cannot deploy a preview build separately from live.
What happens if I delete a preview channel after deployment?
Deleting a preview channel removes the preview site and URL, as indicated in step 5. This means testers can no longer access that preview.
Can I promote a preview channel directly to live?
Yes, after collecting feedback, you can promote the preview build to live, replacing the live site. This is shown in step 5 where promotion is a decision point.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what is the previewURL after step 3?
Anull
Bhttps://preview-123--project.web.app
Chttps://live-project.web.app
Dpreview-123
💡 Hint
Check the 'Result' column in row for step 3 in execution_table
At which step does the deploymentStatus change to 'deployed'?
AStep 3
BStep 1
CStep 2
DStep 5
💡 Hint
Look at deploymentStatus changes in variable_tracker after Step 2
If you skip creating a preview channel, what will happen when deploying?
ADeployment fails because no preview channel exists
BPreview URL is generated automatically
CDeployment succeeds to live site
DPreview channel is created automatically
💡 Hint
Refer to key_moments about the importance of creating preview channel before deploy
Concept Snapshot
Preview channels let you deploy a test version of your site.
Create a channel with 'firebase hosting:channel:create <name>'.
Deploy to it with 'firebase deploy --only hosting:<name>'.
Open the preview URL to share and test.
After feedback, promote to live or delete the preview.
This keeps live site safe while testing changes.
Full Transcript
Preview channels in Firebase Hosting allow you to create isolated environments to test your site before making changes live. The process starts by creating a preview channel with a unique name. Then you deploy your build to this channel. Firebase generates a special URL for this preview, which you can share with testers. They can access the preview site and provide feedback. Based on this feedback, you decide to either promote the preview build to your live site or delete the preview channel to discard changes. This workflow helps keep your live site stable while safely testing updates.