πšƒπš‘πš˜πš–πšŠπšœ πš†πš’πš•πš”πš’πš—πšœπš˜πš— 🌻

20 Followers
30 Following
94 Posts
Kubernetes and NodeJS for IoT and enterprise middleware. Canadian-American, Taiwan supporter, and connoisseur of dumb-ass jokes. Opinions my own, he/him/his.
Bloghttps://rocketcode.dev
I eliminated 59 package dependencies with almost no code changes by replacing MochaJS with the new-ish nodejs.org
Why is Postman so popular? Is there any workflow that is easier and faster in Postman than in cURL?

I first created this package to sweep my code for TODOs and FIXMEs then later added a few "pet peeve" style checks and now made it into a nice generalized package with plugin support. Install it and call it from your build scripts.

https://www.npmjs.com/package/blinkers

blinkers

Blinkers is a quick sweep through the code to find debug code, TODOs and pet-peeve type issues.. Latest version: 0.3.1, last published: 2 hours ago. Start using blinkers in your project by running `npm i blinkers`. There are no other projects in the npm registry using blinkers.

npm
Another bug in my code

Caveats:

1. It's not advisable to run any container engine inside a container. Instead, mount `/var/run/docker.sock` to use the hosts's docker daemon. I'm not comfortable doing this on a host with production workloads, but this is a build machine.

2. The ephemeral nature of a pod means it has to rebuild everything every time you restart the pod. Container versions of Linux tend to be bare-bones, so you'll need a lot of setup which takes time. You may either bake your setup into your container image, add startup scripts or some combination of the two. I hope you're good at scripting.

3. The host name is the name of the pod, which may change every time you restart. That can mess with scripts.

4. SSH keys will change every time you restart, which blows up scripts. Manage SSH keys in a secret so they remain consistent.

5. Get used to using rsync to upload your code and be sure to exclude `.git` and everything in `.gitignore` from your upload.

Benefits:

1. It has simplified handling of multiple architectures. I develop on an `arm64` machine but deploy to `amd64`. Some container engines like Docker can handle cross-platform builds but it's trouble to manage and slower.

2. The ephemeral nature of a pod means that all I need to do to reset my environment to zero is restart the deployment.

3. It gets Docker Desktop off my computer.

4. It simplifies the path to CI/CD

5. Sometimes it puts your builds closer to your registry, speeding docker pushes

I started using a Linux pod on a Kubernetes machine for builds. This has significant benefits but also a few caveats. 🧡
When your CLI app/script has a long-running process on an interactive terminal, there must always be movement on the screen, e.g. spinners, progress bars, info logging, gratuitous telemetry. It’s not just an anxiety-killer. It prevents non-keepalived SSH sessions from dropping.
Don’t do this. Use CSS to make vertical spacing.
Go to one of your repos in GitHub and hit the `.` (dot or period) key. Something amazing happens.