diff --git a/.bashrc b/.bashrc index f16fae6bb56659062785a272356e8ae07f0bf9d5..e68114d962864f32fa9ba13687d74d6efcd4bd42 100644 --- a/.bashrc +++ b/.bashrc @@ -66,18 +66,4 @@ gen-csr () { openssl req -new -newkey rsa:4096 -nodes -out $1.csr -keyout $1.key } -docker () { - local docker_exec="$(which docker)" - case "$1" in - clean) - $docker_exec rm $(docker ps --quiet --filter=status=exited) - $docker_exec rm $(docker ps --quiet --filter=status=created) - $docker_exec rmi $(docker images --quiet --filter=dangling=true) - ;; - *) - $docker_exec $@ - ;; - esac -} - . $HOME/Documents/Shore/bundle_certs/bundle_certs diff --git a/Documents/Shore/cleanup/docker-clean b/Documents/Shore/cleanup/docker-clean new file mode 100755 index 0000000000000000000000000000000000000000..5e209f1c1b1fdef52917ed5b6b6b753e85499229 --- /dev/null +++ b/Documents/Shore/cleanup/docker-clean @@ -0,0 +1,4 @@ +#!/bin/sh -e +docker rm $(docker ps --quiet --filter=status=exited) +docker rm $(docker ps --quiet --filter=status=created) +docker rmi $(docker images --quiet --filter=dangling=true) diff --git a/Documents/Shore/cleanup/docker-update b/Documents/Shore/cleanup/docker-update new file mode 100755 index 0000000000000000000000000000000000000000..935af389b66ec4ff6cb384d3083ff568f92b9da8 --- /dev/null +++ b/Documents/Shore/cleanup/docker-update @@ -0,0 +1,10 @@ +#!/usr/bin/env python + +from sh import docker +from parse import parse + +for line in docker.images(): + image = parse("{REPOSITORY:^} {TAG:^} {ID:^} {CREATED:^} {SIZE:^}", + line).named + if image.TAG == "latest": + docker.pull(image.REPOSITORY) diff --git a/Documents/Shore/cleanup/vagrant-clean b/Documents/Shore/cleanup/vagrant-clean new file mode 100755 index 0000000000000000000000000000000000000000..71411a08153e9a5b9e143386eadd6c1c404c5a86 --- /dev/null +++ b/Documents/Shore/cleanup/vagrant-clean @@ -0,0 +1,20 @@ +#!/usr/bin/env python + +from sh import vagrant +from parse import parse + +boxes = {} +for line in vagrant.box("list"): + box = parse("{name:^} ({provider}, {version}", line) + if box.name not in boxes: + boxes[box.name] = {box.provider: [box.version]} + elif box.provider not in boxes[box.name]: + boxes[box.name][box.provider] = [box.version] + else: + boxes[box.name][box.provider].append(box.version) + +for box in boxes.keys(): + for provider in boxes[box].keys(): + for version in boxes[box][provider][:-1]: # Save the latest version. + vagrant.box('remove', '--provider', provider, '--box-version', + version) diff --git a/Documents/Shore/cleanup/vagrant-update b/Documents/Shore/cleanup/vagrant-update new file mode 100755 index 0000000000000000000000000000000000000000..18564859acd253898f9cb818b2fe72c1b91b1893 --- /dev/null +++ b/Documents/Shore/cleanup/vagrant-update @@ -0,0 +1,5 @@ +#!/bin/sh -e +for box in $(vagrant box list | awk '{print $1}') +do + vagrant box add $box --provider virtualbox +done