BlogWikiAbout

Kyle Pericak

"It works in my environment"

IAM Auth for Lambda

IAM Auth for Lambda

Created: 2020-01-09, Modified: 2020-01-09

Restrict access to a specific AWS Lambda function using an IAM policy scoped to its ARN, then invoke it from Python with boto3 and access keys.

AWS Lambda - Basics

AWS Lambda - Basics

Created: 2020-01-08, Modified: 2020-01-08

Create your first AWS Lambda function in Python, define a test event, and understand pricing per request and per GB-second of execution duration.

Ubuntu: Blindly Trusting the Corporate CA

Ubuntu: Blindly Trusting the Corporate CA

Created: 2020-01-08, Modified: 2020-01-08

Extract a corporate CA certificate with openssl s_client and install it on Ubuntu via /usr/local/share/ca-certificates and update-ca-certificates.

Injecting KVM Drivers to Windows 10 for OpenStack

Injecting KVM Drivers to Windows 10 for OpenStack

Created: 2019-12-17, Modified: 2019-12-17

Inject VirtIO KVM drivers (viostor, Balloon, NetKVM) into a Windows 10 VHDX image with Dism so it can boot on OpenStack Glance after qcow2 conversion.

Fix shrunken USB drive after using as boot disk

Fix shrunken USB drive after using as boot disk

Created: 2019-12-16, Modified: 2019-12-16

Restoring a USB drive's full size on macOS after dd or Etcher shrank it for a boot disk, using diskutil eraseDisk and, if needed, zeroing the partition with dd.

Installing Node.js with Ansible

Installing Node.js with Ansible

Created: 2019-12-13, Modified: 2019-12-13

How to install a current Node.js version on Ubuntu with Ansible using the nodesource apt repository. Covers why NVM fails in Ansible and includes complete playbook tasks for the apt key, repo, nodejs, and npm packages.

Operating OpenStack from Ansible

Operating OpenStack from Ansible

Created: 2019-12-03, Modified: 2019-12-03

Automate OpenStack workloads with Ansible os_ modules. Covers auth, projects, users, quotas, networks, volumes, and launching VMs on an existing cloud.

CloudFlare HTTPS CDN

CloudFlare HTTPS CDN

Created: 2019-12-02, Modified: 2019-12-02

Put HTTPS in front of an HTTP-only static site like Google Cloud Storage using Cloudflare's Flexible SSL mode and the Always Use HTTPS redirect.

Project: GCP Deep Dive

Project: GCP Deep Dive

Created: 2019-11-28, Modified: 2019-11-28

An ongoing deep dive into Google Cloud Platform, with hands-on posts covering Cloud Build, Cloud Storage website hosting, Container Registry, and Firestore.

Project: AWS Deep Dive

Project: AWS Deep Dive

Created: 2019-11-27, Modified: 2019-11-27

An ongoing deep-dive project exploring AWS services hands-on, covering EC2, Lambda, S3, ECR, Fargate, API Gateway, and CodePipeline with working examples.

Project: OpenStack Deep Dive

Project: OpenStack Deep Dive

Created: 2019-11-25, Modified: 2019-11-25

A deep-dive index of OpenStack posts covering Kolla-Ansible installs on metal and VMs, custom Kolla images, Ansible automation, and why run a private cloud.

Vim Spell-Check

Vim Spell-Check

Created: 2019-10-25, Modified: 2019-10-25

Enable Vim's built-in spell checker with :set spell spelllang=en_ca, jump between misspellings with ]s and [s, and fix, add, or flag words using z=, zg, zw.

Google Cloud Firestore Basics - Python

Google Cloud Firestore Basics - Python

Created: 2019-10-14, Modified: 2019-10-14

Read and write Google Cloud Firestore documents from Python, with pricing comparisons against Datastore mode and a walk through collections and references.

Google Cloud Functions: Basics

Google Cloud Functions: Basics

Created: 2019-10-11, Modified: 2019-10-11

Deploy a Python 3.7 HTTP-triggered Google Cloud Function that returns the caller's IP, with notes on pricing, invocation costs, and testing from the console.

Using AWS S3 from Python

Using AWS S3 from Python

Created: 2019-09-26, Modified: 2019-09-26

Upload and download files to AWS S3 from Python using boto3, with IAM policies, user groups, and a dedicated service account for programmatic access.

1
2
3
4
5
6
Blog code last updated on 2026-04-16: 8579f34f0a3ec5b8043d5eade8e87124d41cf83b