<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Continuous Integration on Caktus Group</title><link>https://www.caktusgroup.com/tags/continuous-integration/</link><description>Recent content in Continuous Integration on Caktus Group</description><generator>Hugo</generator><language>en</language><lastBuildDate>Thu, 11 Feb 2021 14:37:42 +0000</lastBuildDate><atom:link href="https://www.caktusgroup.com/tags/continuous-integration/index.xml" rel="self" type="application/rss+xml"/><item><title>Automating PyPI releases with Github Actions</title><link>https://www.caktusgroup.com/blog/2021/02/11/automating-pypi-releases/</link><pubDate>Thu, 11 Feb 2021 14:37:42 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2021/02/11/automating-pypi-releases/</guid><description>&lt;p>At Caktus, we maintain some &lt;a href="https://github.com/caktus" target="_blank" rel="noopener noreferrer">open source packages&lt;/a>, which are usually pieces of code that we&amp;rsquo;ve found useful when building an application, and we figure they might be useful to others. From time to time, those open source projects need a little maintenance: Maybe a bug fix has been provided from a community member, or we need to update to support a new version of Python or Django. I always hesitate to do this because I know there are multiple steps involved to ensure that any updates are properly tested, documented, versioned, and released. One of my silly blockers is that I always seem to forget how to upload a release to PyPI, which is the Python Package Index, a repository of software for Python. I call it silly because it shouldn’t really be a blocker, seeing how simple it actually is, but I still forget it each time and have to walk through the documentation step by step to make sure I do it properly. I recently found a tool that helps with this process.&lt;/p></description></item><item><title>Plan for mistakes as a developer</title><link>https://www.caktusgroup.com/blog/2017/01/30/plan-for-mistakes-as-a-developer/</link><pubDate>Mon, 30 Jan 2017 18:44:30 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/01/30/plan-for-mistakes-as-a-developer/</guid><description>&lt;p>&lt;em>I Am Not Perfect.&lt;/em>&lt;/p>
&lt;p>I've been programming professionally for 25 years, and the most
important thing I have learned is this:&lt;/p></description></item><item><title>Creating and Using Open Source: A Guide for ICT4D Managers</title><link>https://www.caktusgroup.com/blog/2015/05/29/creating-and-using-open-source-guide-ict4d-managers/</link><pubDate>Fri, 29 May 2015 18:25:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2015/05/29/creating-and-using-open-source-guide-ict4d-managers/</guid><description>&lt;p>Choosing an open source product or platform upon which to build an ICT4D service is hard. Creating a sustainable, volunteer-driven open source project is even harder. There is a proliferation of open source tools in the world, but the messaging used to describe a given project does not always line up with the underlying technology. For example, the project may make claims about modularity or pluggability that, upon further investigation, prove to be exaggerations at best. Similarly, managers of ICT4D projects may be attracted to Open Source because of the promise of a “free” product, but as we’ve learned through trial and error at Caktus, it’s not always less costly to adapt an existing open source project than it would be to engineer a quality system from the ground up.&lt;/p></description></item><item><title>Caktus Completes RapidSMS Community Coordinator Development for UNICEF</title><link>https://www.caktusgroup.com/blog/2014/02/05/caktus-completes-rapidsms-community-coordinator-development-unicef/</link><pubDate>Wed, 05 Feb 2014 14:12:35 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2014/02/05/caktus-completes-rapidsms-community-coordinator-development-unicef/</guid><description>&lt;p>Colin Copeland, Managing Member at Caktus, has wrapped up work,
supported by UNICEF, as the Community Coordinator for the open source
&lt;a href="http://rapidsms.org" target="_blank" rel="noopener noreferrer">RapidSMS&lt;/a> project. RapidSMS is a text messaging
application development library built on top of the Django web
framework. It creates a SMS provider agnostic way of sending and
receiving text messages. RapidSMS has been used widely in the mobile
health field, in particular in areas where internet access cannot be
taken for granted and cell phones are the best communication tool
available. This has included projects initiated by UNICEF country
offices in Ethiopia, Madagascar, Malawi, Rwanda, Uganda, Zambia, and
Zimbabwe.&lt;/p></description></item><item><title>Continuous Integration with Django and Hudson CI (Day 1)</title><link>https://www.caktusgroup.com/blog/2010/03/08/django-and-hudson-ci-day-1/</link><pubDate>Mon, 08 Mar 2010 15:58:48 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2010/03/08/django-and-hudson-ci-day-1/</guid><description>&lt;p>We're always looking for new tools to make our development environment
more robust here at Caktus. We write a lot of
&lt;a href="https://www.caktusgroup.com/blog/2009/05/26/testing-django-views-for-concurrency-issues/">tests&lt;/a>
to ensure proper functionality as new features land and bug fixes are
added to our projects. The next step is to integrate with a &lt;a href="http://en.wikipedia.org/wiki/Continuous_integration" target="_blank" rel="noopener noreferrer">continuous
integration&lt;/a> system
to automate the process and regularly check that status of the build.&lt;/p></description></item></channel></rss>