diff options
author | romkatv <roman.perepelitsa@gmail.com> | 2019-03-01 23:45:36 +0300 |
---|---|---|
committer | romkatv <roman.perepelitsa@gmail.com> | 2019-03-01 23:45:36 +0300 |
commit | ceae2d7422545ae493c6dbf0217d234fb28e2ebc (patch) | |
tree | 24d273988a2e9a84d916b915ae094bf5d78255e9 /test-in-docker | |
parent | 71b763b69278e43736e5821c4c5d35f51c643ee2 (diff) |
remove most things
Diffstat (limited to 'test-in-docker')
-rwxr-xr-x | test-in-docker | 200 |
1 files changed, 0 insertions, 200 deletions
diff --git a/test-in-docker b/test-in-docker deleted file mode 100755 index 0ed1254f..00000000 --- a/test-in-docker +++ /dev/null @@ -1,200 +0,0 @@ -#!/usr/bin/env zsh - -set -eu - -# The default ZSH to use; it can just be the first few characters. -# This should be the oldest version we support. -default_version='4.' - -setopt extended_glob glob_subst numeric_glob_sort -setopt warn_create_global warn_nested_var 2> /dev/null -cd "${${(%):-%x}:A:h}" - -# TODO: Crazy Logic to munge TERM to something supported in Ubuntu 14.04 -term=screen-256color - -# Note: If versions and frameworks looks complicated, it isn't that bad... -# ...see Modifiers in zshexpn(1) for details. - -# List of ZSH versions -typeset -aU versions -versions=( docker/base-*/Dockerfile(N.on:h:t:s/base-//) ) -typeset -r versions - -# List of frameworks -typeset -aU frameworks -frameworks=( docker/*/Dockerfile(N.on:h:t) ) -for i in {$#frameworks..1}; do - # Remove all base entries - [[ "${frameworks[$i]}" == base-* ]] && frameworks[$i]=() -done -typeset -r frameworks - -# Known Issues -typeset -A known_issues -known_issues["4.3.11-antigen"]="Antigen commands that need git won't work; it needs a newer version of git." -known_issues["4.3.11-zim"]="BROKEN: Zim wants ZSH 5.2 or newer." -known_issues["5.0.3-zim"]="DEPRECATED: Zim wants ZSH 5.2 or newer." -known_issues["5.1.1-zim"]="DEPRECATED: Zim wants ZSH 5.2 or newer." -known_issues["4.3.11-zulu"]="Zulu doesn't work; it needs a newer version of git." -typeset -r known_issues - -err() -{ - print -P "%F{red}Error:%f $*" - exit 2 -} - -resolve_framework() { - local f=$1 found - found=${frameworks[(In:-1:)$f*]} - if (( found <= $#frameworks )); then - echo "${frameworks[$found]}" - fi -} - -resolve_version() { - local v=$1 found - found=${versions[(In:-1:)$v*]} - if (( found <= $#versions )); then - echo "${versions[$found]}" - fi -} - -check_for_known_issues() { - local version="$1" - local framework="$2" - local name="${version}-${framework}" - - if (( ${+known_issues["$name"]} )); then - echo - print -P "%F{red}Known Issue: %F{yellow}${known_issues["$name"]}%f" - echo - fi -} - -cmd() { - if (( dry_run )); then - echo "${(@q)*}" 1>&2 - else - "${(@)*}" - fi -} - -build_and_run() { - local version="$1" - local framework="$2" - local name="${version}-${framework}" - - check_for_known_issues "$version" "$framework" - - print -P "%F{green}Preparing containers...%f" - - echo -n "p9k:base-${version}: " - cmd docker build \ - --quiet \ - --tag "p9k:base-${version}" \ - --file "docker/base-${version}/Dockerfile" \ - . - - echo -n "p9k:${version}-${framework}: " - cmd docker build \ - --quiet \ - --build-arg="base=base-${version}" \ - --tag "p9k:${version}-${framework}" \ - --file "docker/${framework}/Dockerfile" \ - . - - print -P "%F{green}Starting ${name} container...%f" - cmd docker run \ - --rm \ - --interactive \ - --tty \ - --hostname="${name//./_}" \ - --env="TERM=${term}" \ - "p9k:${version}-${framework}" -} - -show_help() { - local f v - echo "Usage: ${(%):-%x} <framework>|--list" - echo - echo "Loads up a docker image with powershell9k configured in <framework>" - echo - echo " -f --frameworks Lists all available frameworks, newline separated." - echo " -v --versions Lists all available ZSH versions, newline separated." - echo " -z --zsh VER Uses ZSH with version VER." - echo " -n --dry-run Just prints the docker commands that would be run." - echo " --help You're soaking in it." - echo - echo "ZSH versions:" - for v in "${(@)versions}"; do - echo " $v" - done - echo - echo "Framework containers:" - for f in "${(@)frameworks}"; do - echo " $f" - done -} - -# No arguments -if (( $# == 0 )); then - show_help - exit -fi - -# Parse flags and such. -asked_for_version=$default_version -asked_for_framework= -dry_run=0 -while (( $# > 0 )); do - case "$1" in - -f | --frameworks ) - print -l "${(@)frameworks}" - exit - ;; - -v | --versions ) - print -l "${(@)versions}" - exit - ;; - -z | --zsh ) - shift - asked_for_version=$1 - ;; - -n | --dry-run ) dry_run=1 ;; - -h | --help ) - show_help - exit - ;;; - -* ) - err "Unknown option ${1}" - show_help - exit 1 - ;; - * ) - if [[ -z "$asked_for_framework" ]]; then - asked_for_framework=$1 - else - err "You can only specify one framework at a time; you already specified '${asked_for_framework}'" - fi - ;; - esac - shift -done - -typeset -r asked_for_version asked_for_framework - -typeset -r use_version="$(resolve_version "${asked_for_version}")" -if [[ -z "$use_version" ]]; then - err "No such ZSH version '${asked_for_version}'" -fi - -typeset -r use_framework="$(resolve_framework "${asked_for_framework}")" -if [[ -z "$use_framework" ]]; then - err "No such framework '${asked_for_framework}'" -fi - -build_and_run "$use_version" "$use_framework" - -# EOF |