Skip to content

Instantly share code, notes, and snippets.

View greyhoundforty's full-sized avatar
🏠
Working from home

Ryan Tiffany greyhoundforty

🏠
Working from home
View GitHub Profile
@greyhoundforty
greyhoundforty / Makefile
Created June 2, 2024 09:18
Python Makefile example
SHELL:=/bin/zsh
.SHELLFLAGS := -eu -o pipefail -c
.ONESHELL:
PY_VERSION = 3.11.0
VENV = .venv
PY = $$(if [ -f $(VENV)/bin/python ]; then echo $(VENV)/bin/python; else echo python; fi)
PIP = $(PY) -m pip
PWD = $(shell pwd)
@greyhoundforty
greyhoundforty / code-engine.md
Last active May 28, 2024 17:08
Code Engine and Github CLI

Overview

Terminal commands for setting up a Code Engine webhook and example application repository

Overview of workflow

Pre-reqs:

@greyhoundforty
greyhoundforty / main.py
Created May 9, 2024 20:36
IBM Cloud Code Engine python webhook function
import hmac
import os
import json
import hashlib
import httpx
def main(params):
"""Main parameter for function."""
ibmcloud_api_key = os.environ.get('IBMCLOUD_API_KEY')
@greyhoundforty
greyhoundforty / scan_ibmcloud.py
Last active May 2, 2024 16:10
Python based port scanner for IBM Cloud Account
#!/usr/bin/env python3
# Author: Ryan Tiffany
# Copyright (c) 2024
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
@greyhoundforty
greyhoundforty / functions.zsh
Created April 19, 2024 14:39
Random-functions
# usage: get_ubuntu_images VPC_REGION
function get_ubuntu_images() {
ibmcloud login -r "$@" -q >/dev/null 2>&1
vpc_region=$(ibmcloud target --output json | jq -r '.region.name')
printf "%b" "\e[1;34mGetting Ubuntu images in ${vpc_region}:.\e[0m"
printf '\n'
ibmcloud is images --visibility public --output json | jq -r '.[] | select(.status=="available") | select(.operating_system.architecture=="amd64") | select(.name | startswith("ibm-ubuntu")) | .name,.id'
}
# usage: get_windows_images VPC_REGION
@greyhoundforty
greyhoundforty / list-classic-vsis.py
Created January 30, 2024 19:34
List Classic Virtual Guests with option datacenter filter
import SoftLayer
from prettytable import PrettyTable
import click
from datetime import datetime
from rich.console import Console
from rich.table import Column, Table
class VSIExample():
def __init__(self):
client = SoftLayer.Client()
@greyhoundforty
greyhoundforty / classicLBs.py
Last active January 30, 2024 20:37
List Classic Load Balancers with Python
import SoftLayer
from prettytable import PrettyTable
import click
class LBaasExample():
def __init__(self):
client = SoftLayer.Client()
self.lbaas_service = client['Network_LBaaS_LoadBalancer']
def get_list(self, dc=None):
┌─[ryan@europa] - [~/Desktop/ibmcloud-icd-mysql] - [Tue Jul 18, 10:10]
└─[$] <> export TF_LOG=DEBUG
┌─[ryan@europa] - [~/Desktop/ibmcloud-icd-mysql] - [Tue Jul 18, 10:11]
└─[$] <> terraform apply
2023-07-18T10:11:18.531-0500 [INFO] Terraform version: 1.5.3
2023-07-18T10:11:18.531-0500 [DEBUG] using github.com/hashicorp/go-tfe v1.26.0
2023-07-18T10:11:18.531-0500 [DEBUG] using github.com/hashicorp/hcl/v2 v2.16.2
2023-07-18T10:11:18.531-0500 [DEBUG] using github.com/hashicorp/terraform-svchost v0.1.0
2023-07-18T10:11:18.531-0500 [DEBUG] using github.com/zclconf/go-cty v1.12.2
2023-07-18T10:11:18.531-0500 [INFO] Go runtime version: go1.20
@greyhoundforty
greyhoundforty / partial.log
Created July 18, 2023 15:04
Partial debug log
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0: Strict-Transport-Security: max-age=63072000; includeSubDomains
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0: X-Content-Type-Options: nosniff
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0: X-Download-Options: noopen
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0: X-Envoy-Upstream-Service-Time: 1038
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0: X-Permitted-Cross-Domain-Policies: none
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0: X-Request-Id: d1b0443a-82fd-4a11-ba59-afa650267ba5
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0: X-Runtime: 1.034365
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0: X-Xss-Protection: 1; mode=block
2023-07-18T10:01:06.313-0500 [DEBUG] provider.terraform-provider-ibm_v1.55.0:
2023-07-18T10:01:06.
@greyhoundforty
greyhoundforty / main.md
Created July 18, 2023 14:33
IBM Cloud DB Connection Info

Tf code

locals {
  prefix = random_string.prefix.result
  tags = [
    "provider:ibm",
    "workspace:${terraform.workspace}",
    "owner:${var.owner}"
  ]