Deployment of a Web Application to automate talent onboarding using HTML / CSS / JS / BS (Front-end) + Python Flask (Back-end) with Cloud Storage and Cloud Functions 100% Serverless — Part 2
In this project based on a real-world scenario, I acted as a Cloud Expert in the deployment of a Web Application to automate the HR onboarding process. By filling out a form, the user is created in the Training Portal in a fully automated way.
To deploy this solution, I used a Moodle image available on GCP Marketplace, where the REST API had been enabled, running on Compute Engine, front-end on Cloud Storage, and the back-end on Cloud Run.
I deployed the back-end using Python Flask using Cloud Functions, 100% Serverless. Then, I deployed the front-end using HTML/CSS/JS/BS on Cloud Storage to store the static files of the Web Application.
This project built upon the previous Moodle deployment where I needed to enable the ablity to add users to the deployment without requiring a user to directly login. This was done by enabling the required REST API support in Moodle directly. I also needed to create an access token for the targeted user that was granted access to the enabled API.
I now needed to create a new Cloud Run service to host the Backend code for this support. This required me to set two variable in the configuration so that the code could utilize the access token and knew where the Moodle site was. I also needed to insert the Python code and the runtime requirements. I was able to test that the service was functioning by using curl to call the service URL with the required parameters.
At this point, I then needed to create a new bucket to hold the admin web site frontend and upload the web site file. I first had to update the index.html file with the newly create Cloud Run service URL. Once the files were uploaded I was able to copy the bucket URL and see if the admin web page loaded.
I could now test the web page by adding test users and verifying they were added to Moodle by checking the Users page.
This is the end of my Google Cloud Platform Bootcamp adventure, but only the start of my exploration of all that this serivce provides.