Skip to main content
Deployment: Getting started with Bubble (Lesson 8.9)
Updated over 2 weeks ago

Section 8 (Lesson 9/10): In this lesson, we’ll talk about deploying our app to live and the various checklist items that we should address before we do. You’ll also learn about the difference between test and live versions.

We’ll be covering:

  • Security: Logging in as different user types, plus making sure that the correct users have access to the correct data and that our page redirects are working.

  • Live vs Test - How to switch to our live app, and the differences between live and test from both a database and a design perspective.

  • Custom domains: How to add a custom domain and where to find the required documentation.

Transcript

In this lesson, we're going to cover deploying our app and what that entails and the steps we need to do before we actually deploy. So let's jump in!

So the first thing to do is just to check your app plan. Make sure that you're on a suitable plan for your particular app. We also need to make sure that of course we have set our domain. In the Bubble Academy, there are resources to help you through this process, but it is fairly straightforward. Whether you're using GoDaddy or Namecheap, there's documentation we have to help with that.

We, of course, need to make sure that all of our SEO settings have been updated and we have all of our data. Remember, we populated by default just some Bubble test data, and I've gone ahead and updated this data here with Workplace information. You don't want to be deploying with Bubble information here.

We need to make sure that all of our privacy rules are in place. Just make sure that every single data type has a privacy rule or multiple privacy rules. You need to actually also make sure that you log in as various types of Users and try look at the various pages. So all of our pages need page redirects, and also we need to make sure that privacy rules is securing our data. So Workplace has I'll say four different types of Users. One of them is just a User that isn't signed up and are viewing jobs, make sure that you load all of the pages in this application to make sure that those Users don't have access to any data and that the page redirects are working as they should. The same with the Candidates, log in as a Candidate and then try access the Admin Dashboard, try access the Company Dashboard, and do the same for the other Users.

Then we also need to make sure that our third-party integrations have been tested and are working as they should.

Then we also just want to do basic things like check our responsive design! So hit the Responsive design tab and just work your way down all of these breakpoints to make sure that the design is adjusting how it should. For this process, I actually usually pick up my phone and look at my application in version-test to make sure that it's working really nicely on my phone. I actually have two phones I use that for and then when I deploy to live, I do the same: I just quickly go through as a User, log in as Users, and just make sure that all of the designs are rendering correctly.

So once you're confident, we can go ahead and deploy! Now, don't forget that there are two versions of the database and when you deploy to live for the first time, your database will be empty. This is test data, test data. And we can switch between our live database and our test database here. If I switch to the live branch, I have not deployed yet, therefore I have no data types. And because I've not deployed yet, there is no design! This is the live version, and it's not actually live because we haven't deployed, these are just placeholders, but I wanted to just distinguish the difference between the test database and the live database.

I'm going to go back to the test database, which we call the dev database. You can also switch from this "Main" button up here. We can change from live to one of your development versions. Now, we're not going to cover version control on this course, but there are some great YouTube lessons we have on version control to help you understand what it is and how to work with in teams.

Okay, and the last thing is that the Issue Checker, we need to make sure that there are no issues. You cannot deploy your app when you have unfixed issues.

Now when we're ready to deploy, we click on the "Deploy to Live" button and then we type a description. Because we also have the ability, depending on what plan you're on and how far back your history goes, we have the option to roll back because we do make mistakes. Everyone makes mistakes and you will probably make some mistakes when you've deployed, and then you thought, I shouldn't have deployed I've not finished a piece of work, and then we revert back to an older version. So writing descriptions gives us the opportunity to make that we are documenting the work we've done, such as "Designed or created the search page," or "Updated SEO on the job page". We always need to make a description there.

After we've made the description, we can then click "Confirm," and we have deployed our app to Live! And if we had set our domain to workplace.com, we will then be able to access workplace.com in the browser to go to the live version of our site. Remember, you're not going to have any data until data is created in the live database. But we can always also view our test version of our site under workplace.com/version-test. You have your version-test, and then you have your main Live domain.

I just want to point you to one other area that we haven't really looked at, and that is the Logs section because this shows you your workload usage. Things like server logs, which is a granular way to see how people are using your app, workflow runs, that kind of thing, and also the Scheduler, which we're not going to cover. But in a nutshell, if you decide to schedule a workflow to run later on - which we can do in Bubble - we will see all of them queued up here and then we can cancel them if we like to.

Okay, folks! So that is deployment. Hope you enjoyed it and I'll see you in the next lesson!

Did this answer your question?