Categories
Programming Systems Administration

A Userscript to click the “Recover Permissions” button for every space in Atlassian Confluence Cloud

When administering a Confluence Cloud instance, we encountered the issue where I needed to use the API to check every space’s permissions. However, in Confluence’s REST API, you need to have “Read” permissions on a space to be able to read the permissions. To get this access, you can (as an admin) go to the […]

Categories
Programming Uncategorized

Making a HTML Form with tags using Hyperscript

I’ve recently been playing with the Hyperscript (https://hyperscript.org/) tool, and I’ve been really liking it. I set myself the challenge of making a HTML form, and adding the ability to add tags to the form. So how might we achieve this? Lets start with a simple HTML form: Now how can we send the tags? […]

Categories
Linux Programming Systems Administration

“How I got a Feature Before I Even Asked for It” or “Open Source is Awesome”

To backup my server I uses a tool called restic (https://restic.net/) – It’s great. I’ve recently been testing out using MEGA (https://mega.io/) as the backend storage for my backups, and to integrate that with restic, you use rclone (https://rclone.org/) as a storage driver. Sounds complicated, but it’s really not:restic –talks-to–> rclone –talks-to–> mega However, during […]

Categories
Linux Networking Programming

Trio Tutorial – Simple TCP Chat Program – Part 4

Series Part 1: https://jaytuckey.name/2021/07/22/trio-tutorial-simple-tcp-chat-program-part-1/ Part 2: https://jaytuckey.name/2021/07/24/trio-tutorial-simple-tcp-chat-program-part-2/ Part 3: https://jaytuckey.name/2021/07/24/trio-tutorial-simple-tcp-chat-program-part-3/ In part 4 we look into making the server handle disconnections without crashing. We also look into how me can make messages quicker to distribute. For this code we use the trio functionality to wait for limited time for a task to complete, by using […]

Categories
Linux Networking Programming

Trio Tutorial – Simple TCP Chat Program – Part 3

Series Part 1: https://jaytuckey.name/2021/07/22/trio-tutorial-simple-tcp-chat-program-part-1/ Part 2: https://jaytuckey.name/2021/07/24/trio-tutorial-simple-tcp-chat-program-part-2/ In part 3 we build more of the server. We build out the functionality to receive messages, then distribute them to all connected users. For this part we use Trio’s nurseries to start up new running tasks: https://trio.readthedocs.io/en/stable/reference-core.html#nurseries-and-spawning We use the nursery.start_soon() function to kick off new tasks […]

Categories
Linux Networking Programming

Trio Tutorial – Simple TCP Chat Program – Part 2

Series Part 1: https://jaytuckey.name/2021/07/22/trio-tutorial-simple-tcp-chat-program-part-1/ In part 2 we look at making a tool to assist with testing the TCP server we are building: We use the built-in python socket library in the testclient: https://docs.python.org/3/library/socket.html Got any questions? Contact me: https://jaytuckey.name/about/

Categories
Linux Networking Programming

Trio Tutorial – Simple TCP Chat Program – Part 1

I’ve made a video about making a simple TCP-based program using Python and Trio. The video is here: https://www.youtube.com/watch?v=6JM1hgjLV-A The features I plan to build are: each user has a long running tcp connection user is asked for name on connection user sends message each other connected user receives the message In part 1 we […]

Categories
Programming

Saving query parameters into the browser history, using Flask + HTMX

I’ve recently been using the htmx (https://htmx.org/) javascript library to make some simple Flask web applications I have made a bit more dynamic. The page is very simple, but contains a big table of data in the center. It has a form at the top of the page that allows you to write simple queries […]

Categories
Linux Networking Programming Systems Administration

A Logwatcher Tool to Trigger Integrations After Changes in phpIPAM

We use phpIPAM to manage all our IP Addresses, and we have recently built integrations between phpIPAM and our Kea DHCP server for reservations, and also into our BIND DNS server. These have been running on a schedule, which has worked well, but doing it that way means that it can take a while after […]

Categories
Linux Networking Programming

Sending an email via Microsoft O365 SMTP Servers using Python

This is a simple script to send an email via MS’s O365 Service: Note how you need to set up an SSL context and perform .starttls() to properly create a secure connection.