Skip to content

Instantly share code, notes, and snippets.

View jgsqware's full-sized avatar

Julien Garcia Gonzalez jgsqware

View GitHub Profile
# A popeye configuration file to check a
# Giant Swarm tenant cluster before upgrading.
#
# This configuration suppresses many useful checks for best practices that are also relevant
# in general, with the one goal: to highlight any details that could cause problems
# during an upgrade.
#
# Tested with popeye 0.9.0
#
# More about popeye: https://github.com/derailed/popeye
#!/usr/bin/env bash
set -eu
# defaulting the context to a blank string just uses the currently configured context
context=${1:-""}
max_number_rev=10
declare -a namespaces=( "kube-system" )
@jgsqware
jgsqware / cleaner.sh
Created May 15, 2019 12:21
Clean Tiller configmap
#!/usr/bin/env bash
set -eu
max_number_rev=10
namespaces=( "kube-system" )
for namespace in $namespaces
do
releases=$(kubectl --namespace=$namespace get cm -l OWNER=TILLER -o go-template --template='{{range .items}}{{ .metadata.labels.NAME }}{{"\n"}}{{ end }}' | sort -u)
@jgsqware
jgsqware / askForConfirmation.go
Created September 18, 2018 07:52
askForConfirmation in go
func askForConfirmation(s string) bool {
reader := bufio.NewReader(os.Stdin)
for {
fmt.Printf("%s [y/n]: ", s)
response, err := reader.ReadString('\n')
if err != nil {
log.Fatal(err)
}
@jgsqware
jgsqware / docker-bench.yaml
Created June 27, 2018 15:46
Docker Bench Pod
apiVersion: v1
kind: Pod
metadata:
name: docker-bench
labels:
app: docker-bench
spec:
hostPID: true
nodeSelector:
role: master

Keybase proof

I hereby claim:

  • I am jgsqware on github.
  • I am jgsqware (https://keybase.io/jgsqware) on keybase.
  • I have a public key ASC56qEVeN46tjSG_kBAqkM3QUfj6N7FmpM3OIh6cHrTAAo

To claim this, I am signing this object:

@jgsqware
jgsqware / error.md
Created May 30, 2017 05:54
AWS ECR Download Layer
curl -vL -H "Authorization: Basic ***====" https://936991986338.dkr.ecr.us-east-1.amazonaws.com/v2/clairctl/blobs/sha256:ff3d52d8f55fb0b74ea0a24134f75efeff780c4e1f407073def2ae9c9b900868
> GET /v2/clairctl/blobs/sha256:ff3d52d8f55fb0b74ea0a24134f75efeff780c4e1f407073def2ae9c9b900868 HTTP/1.1
> Host: 936991986338.dkr.ecr.us-east-1.amazonaws.com
> Accept: */*
> Authorization: Basic ***====
> 
< HTTP/1.1 307 Temporary Redirect
< Docker-Distribution-Api-Version: registry/2.0
< Location: https://prod-us-east-1-starport-layer-bucket.s3.amazonaws.com/da26-936991986338-2cae2a0f-ebda-934c-8b81-2e0176d184ee/a9aba33a-151c-420c-ac2f-244bf81a6e8c?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20170530T054857Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=AKIAI7KZ4NTCV2EWBNUQ%2F20170530%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=8d9aa58dc857a942ac09b3e9f4e35ffabfbdaff23d89fbe7b6227200fde0e138
@jgsqware
jgsqware / print_maven_version.sh
Created April 20, 2017 14:00
Print Maven version
mvn7 org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\[INFO\]'
@jgsqware
jgsqware / ansible-bootstrap.sh
Created January 13, 2017 14:34
Bootstrap the ansible structure
siteBootstrap() {
echo "Create site.yml"
touch site.yml
echo "---\n# main plays\n- include: all_roles.yml" > site.yml
echo "Create all_roles.yml"
touch all_roles.yml
echo "---\n- hosts: default\n any_errors_fatal: true\n roles:\n - dummy" > all_roles.yml
}
@jgsqware
jgsqware / kubeadm-install-offline.md
Last active March 7, 2024 05:48
Offline Kubeadm install

On master and nodes

Pull images form internet access laptop

docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.5.0
docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.5.0
docker pull gcr.io/google_containers/kube-proxy-amd64:v1.5.0
docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.5.0
docker pull weaveworks/weave-npc:1.8.2
docker pull weaveworks/weave-kube:1.8.2