#!/bin/bash # publish-package - Publish packages to various registries # Usage: # publish-package docker --proj # publish-package nuget --proj # publish-package pypi --proj # publish-package npm --proj set -e COMMAND="" REGISTRY="" IMAGE="" TAG="" SOURCE="" PACKAGE_FILE="" REPO="" usage() { echo "Usage:" echo " publish-package docker --proj " echo " publish-package nuget --proj " echo " publish-package pypi --proj " echo " publish-package npm --proj " exit 1 } while [[ $# -gt 0 ]]; do case $1 in docker|nuget|pypi|npm) COMMAND="$1" shift ;; --proj) REPO="$2" shift 2 ;; *) if [[ -z "$COMMAND" ]]; then usage fi case $COMMAND in docker) [[ -z "$REGISTRY" ]] && REGISTRY="$1" && shift && continue [[ -z "$IMAGE" ]] && IMAGE="$1" && shift && continue [[ -z "$TAG" ]] && TAG="$1" && shift && continue ;; nuget) [[ -z "$SOURCE" ]] && SOURCE="$1" && shift && continue [[ -z "$PACKAGE_FILE" ]] && PACKAGE_FILE="$1" && shift && continue ;; pypi) [[ -z "$PACKAGE_FILE" ]] && PACKAGE_FILE="$1" && shift && continue ;; esac shift ;; esac done if [[ -z "$COMMAND" ]] || [[ -z "$REPO" ]]; then usage fi # TODO: implement publish logic echo "publish-package: $COMMAND not yet implemented" exit 1