express-app-teachback
v1.0.0
Published
Basic web app for apac teach back
Downloads
4
Readme
CircleCI Teachback
This repo will be used for TSM's to practice implementing CircleCI features on a basic Node application. We will meet as a group and have the TSMs explain how they implemented these features.
Objectives
The objective of this activity is to have TSMs practice implementing the following:
- Test splitting
- Contexts
- Uploading test results
How this Repo Works
This repo is broken down by branches.
- 0: This is the starter branch with a basic build, test, deploy, workflow. The task is to take this branch and add test splitting, upload the test results, and add contexts for the deployment secrets.
Prerequisites
- Fork this repository to your personal GitHub account.
- Setup the CircleCI project in your account
- Point to the branch titled
0
for the config file
- Point to the branch titled
- Setup a Google App Engine app.
Instructions
The premise of this activity is that you have created a basic Node.js application and have a workflow on CircleCI that builds, tests, and deploys that application. The platform team you are a part of wants to implement a few CircleCI features to improve the CI/CD pipeline. Your job is to add contexts to the project to keep the organizations secrets safe, add test splitting to improve workflow run time, and store test results to detect any flaky tests and make improvements over time.
Inside this repo are several directories and files. Below is a quick explaination of what they are. You will only make edits to the .circleci/config.yml
file, however.
test : this directory contains the test files. You will need to point CircleCI to this directory when test splitting.
node_modules: contains all node modules needed to run this application
public: this directory contains the website page files
app.js: this JavaScript contains the code to navigate the website
package.json: contains required packages for the app
server.js: this JavaScript runs the application