Skip to content

Instantly share code, notes, and snippets.

View cardil's full-sized avatar

Chris Suszynski cardil

View GitHub Profile
@cardil
cardil / ubi8-k8s-shell.yml
Created July 5, 2023 17:57
Ubi8 shell for K8s
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: shell-cluster-admin
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: shell-cluster-admin
Building function image
Pulling image gcr.io/paketo-buildpacks/builder:base
29dc7596322b: Already exists
ed10c4dc1cb9: Already exists
baabd6616689: Already exists
70e0bea64ce8: Already exists
5128128e1ba9: Already exists
5e995c53af94: Already exists
c971d13c0b7c: Already exists
d9853c09e885: Already exists
@cardil
cardil / bash-error-pitfall.sh
Last active October 12, 2022 17:30
Bash scripting pitfall
#!/usr/bin/env bash
set -Eeuo pipefail
function error_handler() {
local code="${1:-${?}}"
abort "🚨 Error (code: ${code}) occurred at ${BASH_SOURCE[1]}:${BASH_LINENO[0]}, with command: ${BASH_COMMAND}"
}
function abort() {
@cardil
cardil / serverless-install.sh
Last active February 23, 2022 23:16
Installs Serverless on OpenShift (with Serving+Eventing)
kubectl apply -f https://raw.githubusercontent.com/cardil/openshift-serverless-pres-notes/master/serverless-subscription.yaml
while ! kubectl get csv -n openshift-serverless -l operators.coreos.com/serverless-operator.openshift-serverless= 1>/dev/null 2>&1; do sleep 1; done
kubectl wait --for=jsonpath='{.status.phase}'=Succeeded \
--timeout=5m csv -n openshift-serverless \
-l operators.coreos.com/serverless-operator.openshift-serverless=
kubectl apply -f https://raw.githubusercontent.com/cardil/openshift-serverless-pres-notes/master/serverless-bundle.yaml
while ! kubectl get knativeserving knative-serving -n knative-serving 1>/dev/null 2>&1; do sleep 1; done
kubectl wait --for=condition=Ready --timeout=5m \
knativeserving knative-serving -n knative-serving
@cardil
cardil / openssh-client.log
Created November 17, 2021 12:51
Calling `ssh -vvv git@github.com` having `ssh-rsa` type key in knownhosts file
OpenSSH_8.6p1, OpenSSL 1.1.1l FIPS 24 Aug 2021
debug1: Reading configuration data /home/ksuszyns/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug3: /etc/ssh/ssh_config line 55: Including file /etc/ssh/ssh_config.d/50-redhat.conf depth 0
debug1: Reading configuration data /etc/ssh/ssh_config.d/50-redhat.conf
debug2: checking match for 'final all' host github.com originally github.com
debug3: /etc/ssh/ssh_config.d/50-redhat.conf line 3: not matched 'final'
debug2: match not found
debug3: /etc/ssh/ssh_config.d/50-redhat.conf line 5: Including file /etc/crypto-policies/back-ends/openssh.config depth 1 (parse only)
debug1: Reading configuration data /etc/crypto-policies/back-ends/openssh.config
@cardil
cardil / kafka-channel-6.yaml
Created October 1, 2021 20:17
Channel with 6 replicas
apiVersion: messaging.knative.dev/v1beta1
kind: KafkaChannel
metadata:
name: kafka-channel-6
labels:
app: kafka-channel-6
app.kubernetes.io/component: kafka-channel-6
app.kubernetes.io/instance: kafka-channel-6
app.kubernetes.io/name: kafka-channel-6
spec:
@cardil
cardil / kernel-koji-install.sh
Created September 15, 2021 09:12
A script that can be used to quickly install specific version of Fedora kernel
#!/usr/bin/env bash
set -Eeuo pipefail
version="${1:?Pass a kernel version as arg[1]}"
build="${2:?Pass a kernel build as arg[2]}"
repo="${KOJI_REPO:-https://kojipkgs.fedoraproject.org//packages/kernel}"
arch="$(uname --hardware-platform)"
source /etc/os-release
rel="${VERSION_ID}"
@cardil
cardil / serverless-chaostest.sh
Last active September 10, 2021 09:18
This is a prototype of a Serverless Operator chaos test, suited directly to check for SRVKE-927, (looking for failures different then SRVKE-911)
#!/usr/bin/env bash
set -Eexuo pipefail
if ! [ -d serverless-operator ]; then
git clone https://github.com/cardil/serverless-operator.git --branch srvke-927
fi
cd serverless-operator
env SYSTEM_NAMESPACE=knative-serving \
@cardil
cardil / heartbeats-cronjob.yml
Created September 3, 2021 21:52
Example of cronjob that sends CloudEvents to K_SINK
apiVersion: batch/v1
kind: CronJob
metadata:
name: heartbeat-cron
spec:
# Run every minute
schedule: "*/1 * * * *"
jobTemplate:
metadata:
labels:
func waitForUser() pkgupgrade.BackgroundOperation {
file, err := homedir.Expand(
fmt.Sprintf("~/.cache/waitForUser-%s.sock", uuid.NewString()),
)
ensure.NoError(err)
var mod time.Time
check := func() (bool, error) {
res, err := os.Stat(file)
if err != nil {
return false, err