As of now, Google has yet to release an official backup/sync client for Linux, and as a frequent WSL2 user, I was after a solution that would allow automated backups to Google drive from the WSL2 Linux file system/distro.
I’m a big fan of both Windows & Linux, and the evolution of WSL2 (with an actual Linux kernel) is making it easier to work in an almost “real” Linux environment without the need for third-party virtualization software. …
The inspiration for writing this article came after reading the following on Airflow extensibility using
The latest documentation, published by the above developer/s, can be found at, https://cwl-airflow.readthedocs.io/en/latest.
With the documentation link above and concepts learned from https://github.com/puckel/docker-airflow, what follows is an outline of setting up a
cwl-airflow Docker Compose stack.
A git repo containing the stack components be found at this link.
This stack is not intended for use on a public network. Windows 10 WLS2 running Ubuntu 20.0 LTS from the MS Store was used as the host environment, with WSL2 integration enabled via Docker for Desktop. …
In the space of Data Science/Analytics, we rely heavily on automation to drive insights from several data sources. Docker, Python, node, JSON and YAML are a amongst a wide range of technologies used as part of the automation.
I recently came across Rabix and Common Workflow Language (CWL) in the space of biomedical research. As a developer, and not having come from a biomedical background, I wanted to explore opportunities for using Rabix/CWL.
After looking into Cancer Genomics Cloud and signing up, I started to get a feel for Rabix/CWL. I decided to setup a local Rabix/CWL playground on my Windows WSL2 environment. …
The main objective of this article is to demonstrate a procedure for building a local DevOps mock environment on a Windows 10 Pro (version 2004) host using WSL2 & Docker.
The local environment we aim to build comprises the following containers/images:
Docker-compose will be used to network the containers using static IP addresses within a docker network.
Before running the network, each image/container will be discussed and configured in isolation (where required). This will hopefully provide an insight of each component.
Once the environment is up and running, a Jenkins pipeline will be setup to achieve the…
This write-up outlines methods of working with the AWS Secure Token Service (STS) and Federated user accounts, where Google has been established as the Identity Provider. It is based on a recent experience where AWS programmatic access was only permitted via STS temp credentials.
A summary of the scenario and what we aim to achieve are as follows:
aws clifor the purposes of testing your Dev stack.
email@example.com) has been provisioned for access to AWS.
Going through my clutter of gadgets, I came across an old Android ZTE Axon 7 (A2017G) phone that was running Nougat. It’s been lying around for a while, and I was looking for (as usual) an excuse to kick off another one of my tech-discovery projects.
I could just download an existing Lineage build zip and flash it onto the Axon…but that’s no fun.
What was more of an appealing option, was building the OS from source using base LineageOS 15.1 repo and the official ZTE Axon 7 git device-specific source branch (LineageOS 15.1 Axon Tree). There’d more satisfaction from installing a build I’ve generated vs somebody else’. It would also be a stepping stone into the sphere of Custom ROMs and Android tweaking. …
Amongst the different types of virtual disk images, we occasionally bump into the
There are various methods that can be used when analyzing or working with these virtual disks, and/or their respective partitions.
This article describes some of these alternative options using a combination of
mount, losetup, kpartx and
kpartx for mapping partitions. Using
apt on Ubuntu,
kpartx can installed as follows:
sudo apt install kpartx
For examples used throughout the article, we’ll be using the
.img file, as listed below, consisting of 2 partitions. Our primary focus will be on manipulating/mounting the data partition (i.e. …
This article aims to:
subinaries vs AOSP's default
Atom x64 Image. …
The following article describes the process for using libguestfs-tools to shrink an existing pre-allocated secondary
VMDK, used by a VMWare Ubuntu guest OS.
The process will be performed from the host machine using a customised docker image. The image’s
libguestfs-tools as part of the build.
The Virtual Machine needs to be offline/shutdown before proceeding. It goes without saying, make backups of any VMDKs before attempting to manipulate them.
For the purposes of the demonstration, an existing 5GB pre-allocated VDMK will be used for the shrink operation. …
This article describes some methods for capturing long/scrolling screenshots on Android/Windows.
When it comes to capturing scrolling web pages, you’ll find most modern web browsers allow you to save a page for offline viewing. This method doesn’t always produce the expected output. Some of the rendered content is occasionally omitted from the offline copy. You may also find that the layout format is not preserved.
Then we cross the topic of scrolling apps. What if we needed to capture the first few pages of an app’s display output on an Android phone (for example, the first couple of screens from within Facebook or Twitter app)? …