Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
on: [push, pull_request]

jobs:
create-beehive:
runs-on: ubuntu-latest
steps:
- uses: nolar/setup-k3d-k3s@v1
- uses: actions/checkout@v5
- run: |
git clone https://github.com/waggle-sensor/waggle-pki-tools
pushd waggle-pki-tools && ./create-credentials-for-beehive.sh && popd
./create-beehive.sh
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
.*/
!.github/
*.pem
.DS_Store
12 changes: 6 additions & 6 deletions create-beehive.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,17 @@
cd $(dirname $0)

echo "deploying rabbitmq"
kubectl apply -f kubernetes/beehive-rabbitmq.yaml
kubectl apply -f kubernetes/beehive-rabbitmq/beehive-rabbitmq.yaml

echo "deploying message logger"
./update-rabbitmq-auth.sh beehive-message-logger-auth beehive-message-logger '.*' '.*' '.*'
kubectl apply -f kubernetes/beehive-message-logger.yaml

echo "deploying upload server"
kubectl apply -f kubernetes/beehive-upload-server.yaml
kubectl apply -f kubernetes/beehive-upload-server/beehive-upload-server.yaml

echo "deploying influxdb"
kubectl apply -f kubernetes/beehive-influxdb.yaml
kubectl apply -f kubernetes/beehive-influxdb/beehive-influxdb.yaml

setup_influxdb() {
kubectl exec svc/beehive-influxdb -- influx setup \
Expand All @@ -29,10 +29,10 @@ setup_influxdb() {

echo "setting up influxdb"
while true; do
if msg=$(setup_influxdb); then
if msg=$(setup_influxdb 2>&1) ; then
break
fi
if [[ "$msg" == *"already been setup"* ]]; then
if [[ "$msg" == *"already been set up"* ]]; then
echo "influxdb already setup. skipping."
break
fi
Expand All @@ -53,7 +53,7 @@ token=$(generate_influxdb_token --write-buckets)
kubectl create secret generic beehive-influxdb-loader-influxdb-token \
--from-literal=token="$token"
./update-rabbitmq-auth.sh beehive-influxdb-loader-auth beehive-influxdb-loader '.*' '.*' '.*'
kubectl apply -f kubernetes/beehive-influxdb-loader.yaml
kubectl apply -f kubernetes/beehive-influxdb-loader/beehive-influxdb-loader.yaml

echo "generating token for data api"
token=$(generate_influxdb_token --read-buckets)
Expand Down
2 changes: 1 addition & 1 deletion kubernetes/beehive-rabbitmq/beehive-rabbitmq.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ spec:
name: beehive-ca-certificate
- name: tls
secret:
secretName: beehive-rabbitmq-tls-secret
secretName: rabbitmq-tls-secret
- name: data
persistentVolumeClaim:
claimName: rabbitmq-data
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ spec:
name: beehive-ssh-ca
- name: ssh-host-key
secret:
secretName: beehive-upload-server-ssh-host-key
secretName: upload-server-ssh-host-key
defaultMode: 0600
- name: home-dirs
persistentVolumeClaim:
Expand Down
18 changes: 7 additions & 11 deletions update-rabbitmq-auth.sh
Original file line number Diff line number Diff line change
@@ -1,18 +1,15 @@
#!/bin/bash
set -e

rmqctl() {
kubectl exec svc/beehive-rabbitmq -c beehive-rabbitmq -n ${rmq_namespace} -- rabbitmqctl "$@"
kubectl exec svc/beehive-rabbitmq -c beehive-rabbitmq -- rabbitmqctl "$@"
}

secret_namespace="$1"
secretname="$2"
rmq_namespace="$3"
username="$4"
confperm="$5"
writeperm="$6"
readperm="$7"
tags="$8"
secretname="$1"
username="$2"
confperm="$3"
writeperm="$4"
readperm="$5"
tags="$6"
password="$(openssl rand -hex 20)"

echo "updating kubernetes config ${secretname}..."
Expand All @@ -21,7 +18,6 @@ apiVersion: v1
kind: Secret
metadata:
name: ${secretname}
namespace: ${secret_namespace}
type: kubernetes.io/basic-auth
stringData:
username: ${username}
Expand Down