The Grinnell College Digital Library Application Developer's Blog
Call it The GCDLADB if you like.
Another Sync to Rootstalk Production (DigitalOcean) with Dev 20 min read Nov 7, 2022
My goal for this afternoon, November 7, 2022, was to find repeat a process last performed almost a year ago on December 22, 2021, to synchronize changes in the development copy of Rootstalk (the main branch https://github.com/Digital-Grinnell/rootstalk) with our production deployment (the main branch of https://github.com/Digital-Grinnell/rootstalk-DO) to DigitalOcean. This should be a simple repeat of the process documented in Sync Rootstalk Production (DigitalOcean) with Dev. As before, I used guidance found in How To Merge Between Two Local Repositories to accomplish this. ...
Creating a `git` Hook 6 min read Oct 27, 2022 | Updated: Jan 20, 2023 20:20
I recently created Hugo Front Matter Tools which is described as… A collection of Python scripts desinged to help manage Hugo .md content front matter. I already have mechanisms in many projects, like this blog, that help me report the last time ANY content was pushed to GitHub, or the last time a Hugo site was compiled. But it would be nice, especially in the case of Rootstalk, if I could save the last git add date/time into an individual file’s front matter. ...
Managing Azure 6 min read Oct 19, 2022
For the past couple years I/we have been experimenting with moving digital content to Azure, both for storage and as a web app host. The most prominent case is with regard to Rootstalk where Azure currently supports two (recently down from three) static development apps as well as a storage account. All such services are part of a personal* Azure subscription opened under the digital@grinnell.edu email address. *I call this a “personal” account because charges for it are currently billed to my own credit card, a situation that will need to be changed sometime relatively soon. ...
Creating a Migration Collection 22 min read Oct 12, 2022
As we continue to look at potential migration paths for our Digital.Grinnell (DG) content, it’s become apparent that it would be nice to have a small “test” or “migration” collection of objects to play with. The collection should have a small, but diverse, set of objects covering all of the popular content, or CModel, types that we currently have in DG. Since Slack now imposes a 90-day lifespan for posts (we are using only free-tier Slack services at this time) I thought I had better create this blog post to capture key parts of a relevant Slack conversation… ...
VSCode Find and Replace Using `regex` 1 min read Oct 8, 2022
This morning I needed to do some bulk “find and replace” operations in most of my Rootstalk content. My first thought was to write and run a little Python script, but then I wondered what VSCode might bring to the table. Plenty, it brought plenty! To keep this post as brief as possible, I’m simply going to reference an instructional video that I created earlier: VSCode-Find-and-Replace.mp4. A list of some links mentioned in the video is provided here: https://linuxpip.org/vscode-regex-replace/ https://itnext.io/vscode-find-and-replace-regex-super-powers-c7f8be0fa80f https://www. ...
Pushing GitHub Notifications to Slack 2 min read Oct 5, 2022
Lately I’ve lamented that all incoming emails to @grinnell.edu addresses pass through a URLDefense / Proofpoint agent that sanitizes all clickable links as a safety/security precaution. In the case of emails automatically dispatched by GitHub the “butchering” of such messages leaves me with an almost useles notification, one that’s so badly bloated that I typically choose to ignore it. Clearly, that’s not how notifications are suppsoed to be handled. Example of a Butchered Email To help make my point I’ll share a small portion of a relatively small email notification below. ...
Creating a WARC from a Wordpress Clone 11 min read Sep 6, 2022
This blog post chronicles portions of a process used to restore and subsequently WARC (the creation of a web archive) a Communication Department website that had been retired. The website content of interest included material describing plans for the recently-completed HSSC and Administration Building projects. During the restoration and WARC process a .md document named WARC-from-comm.sites.grinnell.edu-clone.md was created and it’s contents are presented here. Creating a WARC from a Clone of comm.sites.grinnell.edu In July 2022 a new “clone” of the original comm. ...
Rebuilding ISLE for Digital.Grinnell 2 min read Jun 23, 2022 | Updated: Jan 20, 2023 22:26 Superseded by posts/137-updating-digital.grinnell-one-more-time.md
This blog post will be used to chronicle a process I’m using to rebuild Digital.Grinnell in Legacy Islandora using ISLE. This process was triggered by ITS’ intent to move DG’s FEDORA repository to a new server. That new server is currently mounted on node DGDockerX, my staging server, as /mnt/datastage and it contains a copy of DG’s production FEDORA repository made on or about June 15, 2020. PORTABLE-DG For starters I’m going be doing lots of “local” ISLE work up-front so I’m creating a USB drive backup/copy of /mnt/datastage. ...
Using the Library Virtual Desktop 2 min read Jun 16, 2022
A couple of months ago the Screen Sharing connection to the iMac in my campus office stopped working, presumably because ITS no longer allowed that connection. No matter, rather than working to get that restored I thought I’d dry using a Virtual Desktop connection to a Windows VM. I also had some need to work with Windows in other capacities so this seemed like a nice dual-purpose solution. It worked! Now I’m trying to remember and document how it works. ...
Migrating Workflows from Atom to VSCode 3 min read Jun 9, 2022
This might just be my shortest post ever in this blog, at least for now. At this early date it’s just a link to the Atom No More? blog post in my personal blog. The note above indicates that this post superseeds 085-remote-atom, but there are other Atom-related posts that are also impacted. Some of these include: posts/033-adding-lastmod-date/ As time passes I’ll document here any work-specific changes I make to my new VSCode environments. Replacing atom . with code . The personal blog post mentioned above, Atom No More? ...