Lambda SPM Resources

Posted Tuesday, February 6, 2024.

How to add resources to your SPM based lambda

Macro Feature Flag System

Posted Wednesday, November 15, 2023.

Using macros to make a feature flag system that supports overrides with minimal upkeep

Using Package Plugins to Generate Localization Files

Posted Monday, September 11, 2023.

Keeping the content of Localized.strings files and swift accessors to those strings in sync can be an error prone process. What if we could generate the swift code based on all our string keys, and have the Localized.strings files for each language be automatically generated at the same time? We can use a Swift Package Manager build plugin to achieve this goal.

Creating an SPM build plugin

Posted Friday, September 8, 2023.

Once you have an executable to perform the functionality of your build plugin, here is how you can integrate it as a binary target and have it generate code and resources.

Creating a CLI executable in an artifact bundle

Posted Tuesday, September 5, 2023.

When creating a build plugin for SPM, you need an executable to perform whatever actions your plugin handles. If your executable itself has dependencies you might find yourself needing that executable in an artifact bundle to be consumed as a binary target in the build plugin.

SSH with Docker and BuildKit (with SPM)

Posted Saturday, April 3, 2021.

Here is how to use ssh forwarding in Docker BuildKit for an SPM project with private dependencies

GitHub Actions with Private SPM Dependencies

Posted Thursday, February 4, 2021.

Docker with private SPM dependenencies has been solved. GitHub actions to build Docker images has been solved. How can we combine these techniques to build Docker images with private SPM dependencies?

Docker with Private SPM Dependencies

Posted Tuesday, January 12, 2021.

Building an SPM application with private dependencies is easy locally, but it gets a bit harder when you are building inside of Docker. This is how I accomplished it.