mirror of
https://github.com/jcwimer/startup-infrastructure
synced 2026-03-24 22:34:42 +00:00
Switched to kubernetes
This commit is contained in:
@@ -2,40 +2,18 @@
|
||||
# Variables listed here are applicable to all host groups
|
||||
|
||||
### Software versions
|
||||
docker_compose_version_to_install: 1.18.0
|
||||
docker_ce_version_to_install: 18.03.1
|
||||
|
||||
### rke variables
|
||||
rke_directory: /opt/rke
|
||||
rke_ssh_key_location: /vagrant/tests/files/test_rsa
|
||||
rke_node_directory: /opt/rke
|
||||
rke_version: 0.3.1
|
||||
rke_cluster_name: rke-k8s
|
||||
|
||||
### User stuff
|
||||
standard_user: vagrant
|
||||
chosen_timezone: "America/New_York"
|
||||
# root domain for all services. You should have an A record for *.root_domain. For example, if your domain is test.com you should have an A record for *.test.com pointing to your node.
|
||||
# this will allow automatic dns for for things like dokuwiki.test.com and portainer.test.com
|
||||
root_domain: test.com
|
||||
portainer_admin_password: "admin-password"
|
||||
|
||||
# interface for the swarm network
|
||||
swarm_network_interface: enp0s8
|
||||
|
||||
### Persistent storage if you are doing a single machine deploy, local is an option. If you are doing multi instance deploy, choose one of the following:
|
||||
# nfs
|
||||
# digitalocean
|
||||
# gcp
|
||||
# aws
|
||||
# openstack
|
||||
# ceph
|
||||
# then fill out the variables associated with your choice below
|
||||
storage_type: "local"
|
||||
|
||||
# nfs variables: these need defined if using nfs storage
|
||||
#nfs_address: 0.0.0.0
|
||||
#nfs_root_path: /some/filepath/on/nfs
|
||||
|
||||
# digitalocean variables: these need defined if using digitalocean storage
|
||||
|
||||
# gcp variables: these need defined if using gcp storage
|
||||
|
||||
# aws variables: these need defined if using aws storage
|
||||
|
||||
# openstack variables: these need defined if using openstack storage
|
||||
|
||||
# ceph variables: these need defined if using ceph storage
|
||||
root_domain: test.com
|
||||
@@ -1,5 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p /root/.ssh
|
||||
# Putting test_rsa.pub into root and vagrant authorized keys
|
||||
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDYa9zstumlg7XkKoNrJMlIN/zteqMA9J4GjuZA7r0xfMPrz4CglxzYKd/BhBpwp/HhU+vSR6vBa15kRODHdPZ+T1oXzMXAmMT3R2ZJRqF280Hsx9sK0X+FZWM84e4a1zQUrxuWyWJ4kKIiaX6DBAmhy8zHNvQ0c4Nk1exfwRicojaze71qrexSas4FHWaI4usC/g3mMKfiML/QX0UWW/G+D8qrg3cK3zClG916XlY/p1h9SWantqz75ea33TtmDNW6iCraKSjVeDGfzhshJsmQ7+/Rr/L4/s7hdpwTqdjSlJTIi61eBxcpDfMWBmsHOMZgnsTZ3wrdYXo70k44moA7 vagrant@test" >> /home/vagrant/.ssh/authorized_keys
|
||||
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDYa9zstumlg7XkKoNrJMlIN/zteqMA9J4GjuZA7r0xfMPrz4CglxzYKd/BhBpwp/HhU+vSR6vBa15kRODHdPZ+T1oXzMXAmMT3R2ZJRqF280Hsx9sK0X+FZWM84e4a1zQUrxuWyWJ4kKIiaX6DBAmhy8zHNvQ0c4Nk1exfwRicojaze71qrexSas4FHWaI4usC/g3mMKfiML/QX0UWW/G+D8qrg3cK3zClG916XlY/p1h9SWantqz75ea33TtmDNW6iCraKSjVeDGfzhshJsmQ7+/Rr/L4/s7hdpwTqdjSlJTIi61eBxcpDfMWBmsHOMZgnsTZ3wrdYXo70k44moA7 vagrant@test" >> /root/.ssh/authorized_keys
|
||||
|
||||
@@ -23,33 +23,12 @@ function run-tests {
|
||||
testbash "Running deploy script should not fail." \
|
||||
"vagrant ssh client -c 'bash /vagrant/tests/files/run-test-deploy.sh'"
|
||||
|
||||
local -r node_ls_output=$(vagrant ssh bootstrap \
|
||||
-c "docker node ls --format '{{.Hostname}} {{.Status}} {{.Availability}} {{.ManagerStatus}}'"
|
||||
)
|
||||
echo docker node ls output is:
|
||||
echo $node_ls_output
|
||||
local -r number_of_docker_leaders=$(echo "${node_ls_output}" \
|
||||
| grep -v 'Connection' \
|
||||
| awk '{ print $4 }' \
|
||||
| grep '^Leader$' \
|
||||
| wc -l)
|
||||
local -r number_of_docker_nodes=$(echo "${node_ls_output}" \
|
||||
| grep -v 'Connection' \
|
||||
| awk '{ print $1 }' \
|
||||
| wc -l)
|
||||
testbash "Running kubectl should not fail" \
|
||||
"vagrant ssh client -c 'export KUBECONFIG=/opt/rke/kube_config_rke-k8s.yaml; kubectl get nodes'"
|
||||
|
||||
testbash "There are 2 docker swarm nodes" \
|
||||
"test ${number_of_docker_nodes} -eq 2"
|
||||
|
||||
testbash "The swarm has a leader" \
|
||||
"test ${number_of_docker_leaders} -eq 1"
|
||||
|
||||
testbash "Traefik got deployed" \
|
||||
"vagrant ssh client -c 'curl --silent http://swarm.test.com:8081/ping | grep OK > /dev/null'"
|
||||
|
||||
testbash "Portainer was deployed and admin account was initialized" \
|
||||
"vagrant ssh client -c 'curl --silent -I \
|
||||
-X GET \"http://portainer.test.com/api/users/admin/check\" -H \"accept: application/json\"' | grep 204"
|
||||
# testbash "Portainer was deployed and admin account was initialized" \
|
||||
# "vagrant ssh client -c 'curl --silent -I \
|
||||
# -X GET \"http://portainer.test.com/api/users/admin/check\" -H \"accept: application/json\"' | grep 204"
|
||||
}
|
||||
|
||||
function destroy-infrastructure {
|
||||
|
||||
Reference in New Issue
Block a user