Key Points
Aggregated resource
Key Points
This page is generated from episode key points.
17 episodes covered
29 takeaways
Best for recap and publish checks
- CI/CD is crucial for any reproducibility and testing
- Take advantage of automation to reduce your workload
- Exit codes are used to identify if a command or script executed with errors or not
- Not everyone respects exit codes
- You can do whatever you like in a test, as long as you return the right exit code
- Pytest, and other test utilities will propagate the exit codes correctly
- YAML is a plain-text format, similar to JSON, useful for configuration
- YAML is a superset of JSON, so it contains additional features like comments, while still supporting JSON.
- You should bookmark the GitHub Actions reference. You’ll visit that page often.
- Actions are standalone commands that are combined into steps to create a job.
- Workflows are made up of one or more jobs and can be scheduled or triggered.
- You’ll be back.
- They’re the Jedi of the sea.
-
Creating
.github/workflows/main.ymlis the first step to salvation. - Pipelines are made of jobs with steps.
- Setting up CI/CD shouldn’t be mind-numbing
- All defined jobs run in parallel by default
-
Using
matrixallows you to test the code against a combination of versions.
- Stupid mistakes happen, but telling a computer to do what you mean versus what you say is hard
- We can specify dependencies between jobs running in a series using the needs value.
- Making jobs aware of each other is pretty easy.
- Artifacts are files created by the CI that are offered for download and inspection.
- Secrets in GitHub Actions allow you to hide protected information from others who can see your code
- Another action, another job, another artifact.
- This kind of test is a regression test, as we’re testing assuming the code up to this point was correct.
- This is not a unit test. Unit tests would be testing individual pieces of the Framework code-base, or specific functionality you wrote into your algorithms.
- Use everything you’ve learned to write your own CI/CD!
Episode 17
Bonus Episode: Building and deploying a Docker container to Github Packages
2 takeaways collected from this episode.
- Python packages can be installed in Docker images along with Ubuntu packages.
- It is possible to publish and share Docker images over GitHub Packages.