We will discuss using a variety of tools in our CI/CD pipeline to make sure our product works, works well, and is written well. I hope you will find one new you aren’t using yet, learn how to use it, and integrate it into your CI/CD pipelines. A general understanding of software development and CI/CD pipelines is required.
Our presentation covers an overview of how a partnership between CS and CAE has been providing instances of Jupyterhub notebooks for instruction over the past several years. We will discuss how we have implemented the notebooks using AWS, structured load balancing and integrated with Canvas courses. There will be some demos of the tools we’ve used including terraform, helm and an alternating pair of A-B AWS instances for production and testing environments. We will conclude with a brief chat about future work items we are still figuring out and look for discussion with the community about best practices.
Familiarity with the concepts of cloud services, AWS especially, would be very helpful. Some familiarity with the concepts of containers and CI/CD pipelines will also help.
Attendees will become (more) familiar with cloud resources, learn about innovation in instructional support, discuss when projects take off at the university and stop being “pilots”. They will also learn about ways that people can work across various units in the university and facilitate inter-departmental cooperation.
When specialized IT fields – Development, Security and Operations – work together, they can solve problems that separate departments many not be able to handle. The process looks different from each perspective. Yet it is teamwork and respect for people with different skill sets that strengthens the UW IT community and keeps technology growing to meet the needs of the University and beyond.
*Captions have been auto-generated via YouTube. We are actively working to edit these. Please check back if you need captions.
A walk-through of a tested, GitHub-Action workflow for publishing Python code to PyPI. Topics covered include: setup.cfg vs setup.py, using a published open source setup.cfg-builder, rethinking the requirements.txt file, and automated semantic versioning.
PyPI-publishing doesn’t have to be tedious. Semantic versioning is your friend. Pip-installing packages by GitHub-commit URLs will cause errors.
My audience needs to know how to use GitHub and a basic understanding of Python packaging and PyPI (pip).