-
Notifications
You must be signed in to change notification settings - Fork 12
LAB4_Set environment variables in your application
Objectives
In this step, we will:
- Configure a
.env
file with database environment variables
We will cover:
In the "hello world" section, we pushed a simple helloWorld "test" function to get a feel for how things work. Now, we are going to start working with the "real" code to get our game working. To do this, we need to set a group of environment variables referring to the database we just created with DataStax Astra, not only in our code, but across GitHub and Netlify as well.
Why are we doing this, you might ask? Because as part of our CI/CD pipeline our tests will attempt to connect to our data layer to ensure everything is hooked up and working. Not only that, but once you deploy your application to Netlify it will use these variables to hook up your production app and power your serverless functions.
We set these all ONE time and that's it, you are ready to go. With that, let's do it.
First things first, we need to create the .env
file in our application to store our database information.
The following instructions are the same whether using GitPod or a local IDE.
The .env
file allows us to customize our own environmental variables. We set our Astra credentials to env variables, which are outside of our program.
📘 Command to execute
cat .env.example > .env
✅ Step 1c: Go back to the Astra UI and click the CONNECT
button above the display of the database you just created.
This will bring you to the Connect
page.
✅ Step 1d: Click the clipboard button to the far right to copy all of your environment variables to the copy buffer.
The Document API
option should already be chosen by default. Notice the copy widget on the right of the UI.
You can simply double click the .env file to open and edit it in the GitPod IDE.
✅ Step 1f: When you open the .env file notice the GAMES_COLLECTION=games
variable. Don't overwrite this. We'll need it here in a moment.
✅ Step 1i: Ensure to delete the word "export" from each line as we don't need those inside our .env file.
It should look something like this
After deleting "export" from each line, then this
✅ Step 1j: Finally, update the ASTRA_DB_PASSWORD
value <database_password>
with the password you used for your database.
When completed, your .env file should look something like this:
🏠 Home
Introduction to the JAMStack Why this is cool ? Introduction to Netlify Want to learn more ? 🛠️ II - Setup and deploy your first app
Create your BattleStax repository Setup Netlify account Summary 🛠️ III - Create your Astra instance
Register and Sign In to Astra Configure and create your database Activate Cassandra awesome 📚 IV - What can Netlify do for you
Build, Package, deploy, host Advanced features Netlify Functions Want to learn more 🛠️ V - Expose your "hello world" API
Setup your environment Make a serverless endpoint using Netlify functions Merge back to master Check your deployment in Netlify Summary 📚 VI - What are DataStax Astra and Stargate
Introduction to Astra Introduction to Stargate Want to know More 🛠️ VII - Set environment variables in your application
Creating the .env file Explore the API with HTTPie 🛠️ VIII - Set secrets in GitHub for CI/CD
Configure secrets in GitHub Verify your secrets How is this all working ? 🛠️ IX - Set environment variables in Netlify
Set environment variables in Netlify Verify your environment variables Summary 🛠️ X - Implement a CRUD Api in Astra
Creating the insertGame Netlify endpoint Connect to Astra Hook it all together Running TDD tests 🛠️ XI - Verify and Deploy in Netlify
Merge back to master Verify your deployment in Netlify Feel the enormity of your accomplishment Super secret full game option 📚 XII - Resources