forked from cerc-io/stack-orchestrator
Thomas E Lackey
b22c72e715
In kind, when we bind-mount a host directory it is first mounted into the kind container at /mnt, then into the pod at the desired location. We accidentally picked this up for full-blown k8s, and were creating volumes at /mnt. This changes the behavior for both kind and regular k8s so that bind mounts are only allowed if a fully-qualified path is specified. If no path is specified at all, a default storageClass is assumed to be present, and the volume managed by a provisioner. Eg, for kind, the default provisioner is: https://github.com/rancher/local-path-provisioner ``` stack: test deploy-to: k8s-kind config: test-variable-1: test-value-1 network: ports: test: - '80' volumes: # this will be bind-mounted to a host-path test-data-bind: /srv/data # this will be managed by the k8s node test-data-auto: configmaps: test-config: ./configmap/test-config ``` Reviewed-on: cerc-io/stack-orchestrator#741 Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com> Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
39 lines
1.4 KiB
Python
39 lines
1.4 KiB
Python
# Copyright © 2023 Vulcanize
|
|
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU Affero General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU Affero General Public License for more details.
|
|
|
|
# You should have received a copy of the GNU Affero General Public License
|
|
# along with this program. If not, see <http:#www.gnu.org/licenses/>.
|
|
|
|
cluster_name_prefix = "laconic-"
|
|
stack_file_name = "stack.yml"
|
|
spec_file_name = "spec.yml"
|
|
config_file_name = "config.env"
|
|
deployment_file_name = "deployment.yml"
|
|
compose_dir_name = "compose"
|
|
compose_deploy_type = "compose"
|
|
k8s_kind_deploy_type = "k8s-kind"
|
|
k8s_deploy_type = "k8s"
|
|
cluster_id_key = "cluster-id"
|
|
kube_config_key = "kube-config"
|
|
deploy_to_key = "deploy-to"
|
|
network_key = "network"
|
|
http_proxy_key = "http-proxy"
|
|
image_registry_key = "image-registry"
|
|
configmaps_key = "configmaps"
|
|
resources_key = "resources"
|
|
volumes_key = "volumes"
|
|
security_key = "security"
|
|
annotations_key = "annotations"
|
|
labels_key = "labels"
|
|
kind_config_filename = "kind-config.yml"
|
|
kube_config_filename = "kubeconfig.yml"
|