Skip to content

Instantly share code, notes, and snippets.

View cardil's full-sized avatar
🌴
Spring break (I'll be back May 6)

Chris Suszynski cardil

🌴
Spring break (I'll be back May 6)
View GitHub Profile
@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
@cardil
cardil / aws-vpc-limits.groovy
Last active April 14, 2021 11:25
A littple script that fetches VPC releated AWS quotas
import groovy.json.JsonSlurper
def regions = ["us-west-1", "us-west-2", "us-east-1", "us-east-2", "eu-west-1"]
def vpcService = 'vpc'
def vpcCode = 'L-F678F1CE'
def natCode = 'L-FE5A380F'
def elasticIpService = 'ec2'
def elasticIpCode = 'L-0263D0A3'
println "Current AWS limits"
@cardil
cardil / remote-sleep.go
Created January 29, 2021 12:51
Reporduction for Wathola sender is affected by Coordinated Omission Problem
package main
import (
"fmt"
"html"
"log"
"net/http"
"time"
)
@cardil
cardil / cumbersome.sh
Last active October 21, 2020 17:27
Invalid & convoluted Bash scripting fixed
#!/usr/bin/env bash
set -Eeuo pipefail
function testing.of() {
local what
what="${1:?Pass what as arg[1]}"
echo "Testing of ${what}..."
eval "non-existing-showcase-command ${what}"
@cardil
cardil / stress-revisions.sh
Last active May 5, 2020 17:02
Test that stress large number of Serverless revisions
#!/bin/bash
set -Eeuo pipefail
readonly START="${START:-1}"
readonly LIMIT="${LIMIT:-1200}"
for NUM in $(seq "${START}" "$LIMIT"); do
oc apply -f - <<EOF
apiVersion: serving.knative.dev/v1
@cardil
cardil / README.md
Last active January 17, 2020 17:51
Eventing #2388 manual reproduction

Eventing knative/eventing#2388 manual reproduction

I've manage to reproduce errors on a GCP Kubernetes cluster identical to the one used in Prow.

Below are test results. There ware 10 lost events, 505 total.

In other files are errors that I've noticed, and fetched with Stackdriver Log Viewer UI.

020-01-17T17:47:26.585+0100	INFO	prober/verify.go:35	Fetched receiver report. Events propagated: 495. State: failed
2020/01/03 14:36:38 Registering 5 clients
2020/01/03 14:36:38 Registering 2 informer factories
2020/01/03 14:36:38 Registering 3 informers
{"level":"info","ts":"2020-01-03T14:36:38.541Z","caller":"logging/config.go:108","msg":"Successfully created the logger.","knative.dev/jsonconfig":"{\n \"level\": \"info\",\n \"development\": false,\n \"outputPaths\": [\"stdout\"],\n \"errorOutputPaths\": [\"stderr\"],\n \"encoding\": \"json\",\n \"encoderConfig\": {\n \"timeKey\": \"ts\",\n \"levelKey\": \"level\",\n \"nameKey\": \"logger\",\n \"callerKey\": \"caller\",\n \"messageKey\": \"msg\",\n \"stacktraceKey\": \"stacktrace\",\n \"lineEnding\": \"\",\n \"levelEncoder\": \"\",\n \"timeEncoder\": \"iso8601\",\n \"durationEncoder\": \"\",\n \"callerEncoder\": \"\"\n }\n}"}
{"level":"info","ts":"2020-01-03T14:36:38.541Z","caller":"logging/config.go:109","msg":"Logging level set to info"}
{"level":"info","ts":"2020-01-03T14:36:38.541Z","caller":"logging/config.go:76","msg":"Fetch