Wrapping up
Let's try to summarize the typical software robot project development workflow:
The beginning
- Set up local and remote repositories for version control.
- Set up development and production workspaces in the cloud.
The middle
This cycle repeats over and over again for the duration of the project:
- Complete work in "feature branches" branched off from the
master
branch. Hmm. Need more "branch". ๐ - Use
git add
andgit commit
to commit changes to your local feature branch. - Keep your feature branch up-to-date by periodically doing
git pull
in themaster
branch and thenmerge master
in your feature branch. - Use
git push
to push your local feature branch to the remote repository. - When you are "done", create a pull request for review. Provide enough context and details in the pull request title and description. Provide setup instructions if needed.
- Review the pull request. Use your eyes, read the code, try it out on your computer (
git checkout
). Push the robot to the development workspace in the cloud and try it out. - Fix minor things while reviewing to keep things progressing. No need to wait for a typo fix when you can fix it!
- After approving the pull request, merge it into the
master
branch. - Deploy the new robot to production when the time is right.
- Monitor the robot.
- Repeat until there is nothing more to do!
- Do not commit secrets.
The end?
When is a software robot done? Good question. That depends! As long as it is running in production, someone needs to monitor it at least. If changes are needed, someone needs to be able to implement those changes.
If the whole process becomes obsolete, it is time to pull the plug and let the robot shut down. ๐ข