From bcc393b0f934924128148d7eef187ccab83f640e Mon Sep 17 00:00:00 2001 From: Sheogorath <sheogorath@shivering-isles.com> Date: Fri, 15 Jul 2022 03:11:40 +0200 Subject: [PATCH] chore(cli): Move CLI to koolbox image This patch moves the CLI directory to the koolbox image directory, bringing it in line with other container images, helping to utilise standardised workflows. --- Makefile | 16 ++------------ cli/Makefile | 31 --------------------------- images/.utils/gitlab-ci.yaml | 1 + images/koolbox/.release | 1 + {cli => images/koolbox}/Dockerfile | 0 images/koolbox/Makefile | 21 ++++++++++++++++++ {cli => images/koolbox}/README.md | 0 {cli => images/koolbox}/koolbox | 2 +- {cli => images/koolbox}/koolbox.dummy | 0 9 files changed, 26 insertions(+), 46 deletions(-) delete mode 100644 cli/Makefile create mode 100644 images/koolbox/.release rename {cli => images/koolbox}/Dockerfile (100%) create mode 100644 images/koolbox/Makefile rename {cli => images/koolbox}/README.md (100%) rename {cli => images/koolbox}/koolbox (96%) rename {cli => images/koolbox}/koolbox.dummy (100%) diff --git a/Makefile b/Makefile index 9ef41ea5a..c044e1c0b 100644 --- a/Makefile +++ b/Makefile @@ -14,11 +14,11 @@ check-machine: ## Check your local machine setup to be prepared for the installa .PHONY: cli cli: ## Install koolbox CLI (Contains all tools used in this project) - cd ./cli && make install + cd ./images/koolbox && make install .PHONY: cli-config cli-config: ## Configure koolbox CLI (To setup terraform values as well was tokens) - cd ./cli && make config + cd ./images/koolbox && make config .PHONY: docs docs: cli ## Build and render docs locally @@ -27,15 +27,3 @@ docs: cli ## Build and render docs locally .PHONY: validate validate: ./scripts/validate.sh - -.PHONY: deploy -deploy: check-machine ## Deploy infrastructure on Hetzner Cloud - cd ./terraform && make apply - date - sleep 300 - make kubernetes-install - -.PHONY: destroy -destroy: check-machine ## Destroy infrastructure on Hetzner Cloud - cd ./terraform && make destroy - for i in cp0{1..3}.$(TF_VAR_dns_domain); do ssh-keygen -R "$$i"; done diff --git a/cli/Makefile b/cli/Makefile deleted file mode 100644 index 3d84b6274..000000000 --- a/cli/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -.DEFAULT_GOAL := help - -XDG_CONFIG_HOME ?= $(HOME)/.config -EDITOR ?= "vi" - -# Do not adjust. -KOOLBOX_IMAGE = "quay.io/sheogorath/koolbox:latest" - -include ../utils/help.mk - -.PHONY: preflight -preflight: - # Check for required tools - command -v podman > /dev/null - -.PHONY: install -install: preflight build-if-not-exists ## Install koolbox, the Kubernetes Toolbox for SI-Infrastructure - install -m 755 ./koolbox ~/bin/koolbox - -.PHONY: build -build: preflight ## Build container locally instead of using one from upstream - podman build -t $(KOOLBOX_IMAGE) . - -.PHONY: build-if-not-exists -build-if-not-exists: preflight - podman image exists $(KOOLBOX_IMAGE) || make build - -.PHONY: config -config: ## Edit your koolbox environment config - mkdir -p "${XDG_CONFIG_HOME}/koolbox/" - ${EDITOR} "${XDG_CONFIG_HOME}/koolbox/env" diff --git a/images/.utils/gitlab-ci.yaml b/images/.utils/gitlab-ci.yaml index 6c0537c39..1063877c0 100644 --- a/images/.utils/gitlab-ci.yaml +++ b/images/.utils/gitlab-ci.yaml @@ -4,6 +4,7 @@ - IMAGE: - dovecot - postfix + - koolbox container-build: diff --git a/images/koolbox/.release b/images/koolbox/.release new file mode 100644 index 000000000..85f180f38 --- /dev/null +++ b/images/koolbox/.release @@ -0,0 +1 @@ +release=0.1.0 diff --git a/cli/Dockerfile b/images/koolbox/Dockerfile similarity index 100% rename from cli/Dockerfile rename to images/koolbox/Dockerfile diff --git a/images/koolbox/Makefile b/images/koolbox/Makefile new file mode 100644 index 000000000..b3ce0f424 --- /dev/null +++ b/images/koolbox/Makefile @@ -0,0 +1,21 @@ +.DEFAULT_GOAL := help + +XDG_CONFIG_HOME ?= $(HOME)/.config +EDITOR ?= "vi" + +include ../.utils/container-build.mk +include ../../utils/help.mk + +.PHONY: preflight +preflight: + # Check for required tools + command -v podman > /dev/null + +.PHONY: install +install: preflight build ## Install koolbox, the Kubernetes Toolbox for SI-Infrastructure + install -m 755 ./koolbox ~/bin/koolbox + +.PHONY: config +config: ## Edit your koolbox environment config + mkdir -p "${XDG_CONFIG_HOME}/koolbox/" + ${EDITOR} "${XDG_CONFIG_HOME}/koolbox/env" diff --git a/cli/README.md b/images/koolbox/README.md similarity index 100% rename from cli/README.md rename to images/koolbox/README.md diff --git a/cli/koolbox b/images/koolbox/koolbox similarity index 96% rename from cli/koolbox rename to images/koolbox/koolbox index 8b49d2adf..784bb22d7 100755 --- a/cli/koolbox +++ b/images/koolbox/koolbox @@ -31,4 +31,4 @@ podman run --rm -it \ -v "$CONFIG_DIR/helm:/root/.cache/helm:z" \ -v "$DATA_DIR/helm:/root/.local/share/helm:z" \ -v "$(pwd):/workspace:z" -w /workspace \ - quay.io/sheogorath/koolbox:latest $@ + quay.io/shivering-isles/koolbox:latest $@ diff --git a/cli/koolbox.dummy b/images/koolbox/koolbox.dummy similarity index 100% rename from cli/koolbox.dummy rename to images/koolbox/koolbox.dummy -- GitLab