From 4afc7367b44f02ec18d95f290adef755d509519c Mon Sep 17 00:00:00 2001 From: Maarten de Waard <maarten@greenhost.nl> Date: Fri, 5 Nov 2021 08:50:27 +0100 Subject: [PATCH] Rename all occurences of "oas" to "stackspin" --- .gitlab-ci.yml | 68 ++++++++-------- .gitlab/ci_scripts/create_vps.sh | 4 +- .gitlab/issue_templates/bug.md | 2 +- .gitlab/issue_templates/feedback.md | 2 +- .gitlab/issue_templates/new_app.md | 6 +- .../issue_templates/update_all_components.md | 16 ++-- CONTRIBUTING.md | 8 +- Makefile | 2 +- README.md | 2 +- ansible/conftest.py | 31 ++++++- ansible/group_vars/all/oas.yml | 2 +- ansible/inventory.yml.example | 6 +- ansible/roles/configure/files/README.md | 2 +- ansible/roles/configure/tasks/main.yml | 18 ++--- ansible/roles/configure/templates/version.txt | 10 +-- ansible/roles/pre-configure/tasks/main.yml | 2 +- .../pre-configure/templates/registries.yaml | 2 +- docs/README.md | 2 +- docs/customizing.rst | 8 +- docs/design.md | 6 +- docs/index.rst | 4 +- docs/installation/create_cluster.rst | 46 +++++------ docs/installation/install_oas.rst | 26 +++--- docs/installation/overview.rst | 16 ++-- docs/maintenance.rst | 10 +-- docs/security.rst | 6 +- docs/testing.rst | 4 +- docs/troubleshooting.rst | 80 +++++++++---------- docs/usage.rst | 8 +- flux2/README.md | 2 +- .../apps/monitoring/eventrouter-release.yaml | 8 +- .../eventrouter-values-configmap.yaml | 2 +- .../kube-prometheus-stack-release.yaml | 8 +- ...ube-prometheus-stack-values-configmap.yaml | 10 +-- flux2/apps/monitoring/kustomization.yaml | 2 +- flux2/apps/monitoring/loki-configmap.yaml | 2 +- flux2/apps/monitoring/loki-release.yaml | 8 +- .../monitoring/loki-values-configmap.yaml | 2 +- flux2/apps/monitoring/promtail-release.yaml | 8 +- .../monitoring/promtail-values-configmap.yaml | 3 +- flux2/apps/nextcloud/kustomization.yaml | 2 +- .../nextcloud/nextcloud-values-configmap.yaml | 8 +- flux2/apps/nextcloud/release.yaml | 8 +- flux2/apps/rocketchat/kustomization.yaml | 2 +- flux2/apps/rocketchat/release.yaml | 8 +- .../rocketchat-values-configmap.yaml | 8 +- flux2/apps/velero/release.yaml | 6 +- .../apps/velero/velero-values-configmap.yaml | 3 +- flux2/apps/wekan/kustomization.yaml | 2 +- flux2/apps/wekan/release.yaml | 8 +- flux2/apps/wekan/wekan-values-configmap.yaml | 4 +- flux2/apps/wordpress/kustomization.yaml | 2 +- flux2/apps/wordpress/release.yaml | 8 +- .../wordpress/wordpress-values-configmap.yaml | 10 +-- flux2/cluster/base/core.yaml | 18 ++--- flux2/cluster/base/infrastructure.yaml | 2 +- .../monitoring/monitoring-config.yaml | 2 +- .../optional/monitoring/monitoring.yaml | 28 +++---- .../cluster/optional/nextcloud/nextcloud.yaml | 14 ++-- .../optional/rocketchat/rocketchat.yaml | 12 +-- flux2/cluster/optional/velero/velero.yaml | 4 +- flux2/cluster/optional/wekan/wekan.yaml | 12 +-- .../cluster/optional/wordpress/wordpress.yaml | 12 +-- .../flux-alerts-prometheusrule.yaml | 2 +- .../stackspin-alerts-prometheusrule.yaml | 10 +-- .../metallb/metallb-values-configmap.yaml | 3 +- flux2/core/base/metallb/release.yaml | 8 +- flux2/core/base/nginx/kustomization.yaml | 2 +- .../base/nginx/nginx-values-configmap.yaml | 2 +- flux2/core/base/nginx/release.yaml | 6 +- .../base/single-sign-on/kustomization.yaml | 2 +- flux2/core/base/single-sign-on/release.yaml | 6 +- .../single-sign-on-values-configmap.yaml | 16 ++-- .../cert-manager-values-configmap.yaml | 3 +- .../infrastructure/cert-manager/release.yaml | 6 +- ...cal-path-provisioner-values-configmap.yaml | 6 +- .../local-path-provisioner/release.yaml | 6 +- .../namespaces/kustomization.yaml | 4 +- flux2/infrastructure/namespaces/oas-apps.yaml | 2 +- flux2/infrastructure/namespaces/oas.yaml | 2 +- .../sources/local-path-provisioner.yaml | 2 +- flux2/infrastructure/sources/nextcloud.yaml | 2 +- .../sources/rocketchat-helm-chart.yaml | 2 +- .../sources/single-sign-on.yaml | 2 +- flux2/infrastructure/sources/wordpress.yaml | 2 +- install/.flux.env.example | 4 +- install/generate_secrets.py | 12 +-- install/install-app.sh | 2 +- install/install-openappstack.sh | 16 ++-- install/kustomization.yaml | 2 +- install/overrides/oas-nextcloud-override.yaml | 2 +- .../oas-alertmanager-basic-auth.yaml.jinja | 4 +- ...kube-prometheus-stack-variables.yaml.jinja | 2 +- .../oas-nextcloud-variables.yaml.jinja | 2 +- .../templates/oas-oauth-variables.yaml.jinja | 2 +- .../oas-prometheus-basic-auth.yaml.jinja | 4 +- .../oas-rocketchat-variables.yaml.jinja | 2 +- .../oas-single-sign-on-variables.yaml.jinja | 2 +- .../templates/oas-wekan-variables.yaml.jinja | 2 +- .../oas-wordpress-variables.yaml.jinja | 2 +- openappstack/__init__.py | 2 +- openappstack/__main__.py | 29 +++---- openappstack/ansible.py | 7 +- openappstack/cluster.py | 19 +++-- test/pytest/test_prometheus.py | 2 +- test/taiko/apps.js | 2 +- test/taiko/single-sign-on.js | 4 +- 107 files changed, 442 insertions(+), 416 deletions(-) mode change 120000 => 100644 ansible/conftest.py diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4f107b738..a17700eac 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -53,7 +53,7 @@ include: - flux2/**/* - install/**/* - test/**/* - - openappstack/**/* + - stackspin/**/* - requirements.txt - if: '$TRIGGER_JOBS =~ /enable-.*/' - if: '$CI_COMMIT_MESSAGE =~ /TRIGGER_JOBS=.*enable-/' @@ -143,7 +143,7 @@ include: - changes: - flux2/core/base/$RESOURCE/*.yaml - flux2/infrastructure/sources/single-sign-on.yaml - - install/install-openappstack.sh + - install/install-stackspin.sh - test/taiko/* - if: '$TRIGGER_JOBS =~ /enable-single-sign-on/' - if: '$CI_COMMIT_MESSAGE =~ /TRIGGER_JOBS=.*enable-single-sign-on/' @@ -194,7 +194,7 @@ variables: SSH_KEY_ID: "411" HOSTNAME: "${CI_COMMIT_REF_SLUG}" ANSIBLE_HOST_KEY_CHECKING: "False" - KANIKO_BUILD_IMAGENAME: "openappstack-ci" + KANIKO_BUILD_IMAGENAME: "stackspin-ci" CLUSTER_DIR: "clusters/${CI_COMMIT_REF_SLUG}" default: @@ -225,7 +225,7 @@ ci-test-image-build: .ci.env environment: name: image/$CI_COMMIT_REF_SLUG - url: https://open.greenhost.net:4567/openappstack/openappstack/openappstack-ci:${CI_COMMIT_REF_SLUG} + url: https://open.greenhost.net:4567/stackspin/stackspin/stackspin-ci:${CI_COMMIT_REF_SLUG} auto_stop_in: 3 weeks rules: # Automatically rebuild the container image if this file, the Dockerfile, @@ -249,7 +249,7 @@ report-ci-image-tag: - *debug_information script: - | - TAG_INFORMATION=$(curl https://open.greenhost.net/api/v4/projects/openappstack%2Fopenappstack/registry/repositories/2/tags/${CI_COMMIT_REF_SLUG}); + TAG_INFORMATION=$(curl https://open.greenhost.net/api/v4/projects/stackspin%2Fstackspin/registry/repositories/2/tags/${CI_COMMIT_REF_SLUG}); echo "Tag information: ${TAG_INFORMATION}" if [ "$TAG_INFORMATION" == '{"message":"404 Tag Not Found"}' ]; then echo "CI_CONTAINER_TAG=master" > .ci.env @@ -288,7 +288,7 @@ create-vps: stage: create-vps variables: SUBDOMAIN: "${CI_COMMIT_REF_SLUG}.ci" - DOMAIN: "openappstack.net" + DOMAIN: "stackspin.net" script: - *debug_information # Creates a VPS based on a custom CI image for which the ansible playbook @@ -325,7 +325,7 @@ test-dns: - .general_rules interruptible: true -setup-openappstack: +setup-stackspin: stage: setup-cluster script: - *debug_information @@ -333,14 +333,14 @@ setup-openappstack: - chmod 700 ansible - cp ${CLUSTER_DIR}/inventory.yml ansible/ # Set up cluster - - python3 -m openappstack $HOSTNAME install + - python3 -m stackspin $HOSTNAME install # Customize env file, remove all comments and empty lines - sed "s/1.2.3.4/$IP_ADDRESS/; s/example.org/$FQDN/; s/acme_staging=false/acme_staging=true/; s/acme-v02/acme-staging-v02/; /^\s*#.*$/d; /^\s*$/d" install/.flux.env.example >> ${CLUSTER_DIR}/.flux.env - # Deploy secret/oas-cluster-variables + # Deploy secret/stackspin-cluster-variables - cp install/kustomization.yaml ${CLUSTER_DIR} - kubectl create namespace flux-system - kubectl apply -k ${CLUSTER_DIR} - - bash ./install/install-openappstack.sh + - bash ./install/install-stackspin.sh extends: - .ssh_setup - .report_artifacts @@ -355,7 +355,7 @@ setup-openappstack: .kustomization-ready: stage: kustomization needs: - - job: setup-openappstack + - job: setup-stackspin - job: test-dns script: - *debug_information @@ -379,9 +379,9 @@ infrastructure-kustomizations-ready: extends: - .kustomization-ready -openappstack-kustomizations-ready: +stackspin-kustomizations-ready: variables: - RESOURCE: "openappstack" + RESOURCE: "stackspin" extends: - .kustomization-ready @@ -395,7 +395,7 @@ openappstack-kustomizations-ready: script: - *debug_information # Add optional override values we need for the CI pipeline only - - '[ -f ./install/overrides/oas-${RESOURCE}-override.yaml ] && kubectl apply -n oas-apps -f ./install/overrides/oas-${RESOURCE}-override.yaml' + - '[ -f ./install/overrides/stackspin-${RESOURCE}-override.yaml ] && kubectl apply -n stackspin-apps -f ./install/overrides/stackspin-${RESOURCE}-override.yaml' - bash ./install/install-app.sh ${RESOURCE} extends: - .ssh_setup @@ -448,7 +448,7 @@ enable-wordpress: monitoring-kustomization-ready: needs: - - job: setup-openappstack + - job: setup-stackspin - job: enable-monitoring variables: RESOURCE: "monitoring" @@ -458,7 +458,7 @@ monitoring-kustomization-ready: nextcloud-kustomization-ready: needs: - - job: setup-openappstack + - job: setup-stackspin - job: enable-nextcloud variables: RESOURCE: "nextcloud" @@ -468,7 +468,7 @@ nextcloud-kustomization-ready: rocketchat-kustomization-ready: needs: - - job: setup-openappstack + - job: setup-stackspin - job: enable-rocketchat variables: RESOURCE: "rocketchat" @@ -478,7 +478,7 @@ rocketchat-kustomization-ready: wekan-kustomization-ready: needs: - - job: setup-openappstack + - job: setup-stackspin - job: enable-wekan variables: RESOURCE: "wekan" @@ -488,7 +488,7 @@ wekan-kustomization-ready: wordpress-kustomization-ready: needs: - - job: setup-openappstack + - job: setup-stackspin - job: enable-wordpress variables: RESOURCE: "wordpress" @@ -516,7 +516,7 @@ nextcloud-cert: RESOURCE: "nextcloud" needs: - job: enable-nextcloud - - job: setup-openappstack + - job: setup-stackspin extends: - .apps-cert - .nextcloud_rules @@ -526,7 +526,7 @@ kube-prometheus-stack-cert: RESOURCE: "kube-prometheus-stack" needs: - job: enable-monitoring - - job: setup-openappstack + - job: setup-stackspin extends: - .apps-cert - .kube_prometheus_stack_rules @@ -536,7 +536,7 @@ rocketchat-cert: RESOURCE: "rocketchat" needs: - job: enable-rocketchat - - job: setup-openappstack + - job: setup-stackspin extends: - .apps-cert - .rocketchat_rules @@ -546,7 +546,7 @@ single-sign-on-cert: RESOURCE: "single-sign-on" needs: - job: core-kustomizations-ready - - job: setup-openappstack + - job: setup-stackspin extends: - .apps-cert - .single_sign_on_rules @@ -556,7 +556,7 @@ wekan-cert: RESOURCE: "wekan" needs: - job: enable-wekan - - job: setup-openappstack + - job: setup-stackspin extends: - .apps-cert - .wekan_rules @@ -566,7 +566,7 @@ wordpress-cert: RESOURCE: "wordpress" needs: - job: enable-wordpress - - job: setup-openappstack + - job: setup-stackspin extends: - .apps-cert - .wordpress_rules @@ -598,7 +598,7 @@ kube-prometheus-stack-alerts: REQUESTS_CA_BUNDLE: "/etc/ssl/certs/ca-certificates.crt" script: - *debug_information - - export BASIC_AUTH_PW=$(python3 -m openappstack $HOSTNAME secrets | grep oas-prometheus-basic-auth | cut -d'=' -f2) + - export BASIC_AUTH_PW=$(python3 -m stackspin $HOSTNAME secrets | grep stackspin-prometheus-basic-auth | cut -d'=' -f2) - cd test/ - bash ../.gitlab/ci_scripts/retry_cmd_until_success.sh 30 10 pytest -s -m 'prometheus' --connection=ansible --ansible-inventory=../${CLUSTER_DIR}/inventory.yml --hosts='ansible://*' extends: @@ -619,7 +619,7 @@ kube-prometheus-stack-alerts: script: # Retry taiko tests 60 times until they succeed, # with a sleep interval of 10s in between tests - - bash ./.gitlab/ci_scripts/retry_cmd_until_success.sh 60 10 unbuffer python3 -m openappstack $HOSTNAME test --apps $RESOURCE | ts -i | ts + - bash ./.gitlab/ci_scripts/retry_cmd_until_success.sh 60 10 unbuffer python3 -m stackspin $HOSTNAME test --apps $RESOURCE | ts -i | ts artifacts: paths: - test/taiko/Screenshot* @@ -631,7 +631,7 @@ dashboard-taiko: variables: RESOURCE: "dashboard" needs: - - job: setup-openappstack + - job: setup-stackspin - job: core-kustomizations-ready extends: - .taiko @@ -642,7 +642,7 @@ grafana-taiko: RESOURCE: "grafana" needs: - job: kube-prometheus-stack-cert - - job: setup-openappstack + - job: setup-stackspin - job: monitoring-kustomization-ready extends: - .taiko @@ -653,7 +653,7 @@ nextcloud-taiko: RESOURCE: "nextcloud" needs: - job: nextcloud-cert - - job: setup-openappstack + - job: setup-stackspin - job: nextcloud-kustomization-ready extends: - .taiko @@ -664,7 +664,7 @@ rocketchat-taiko: RESOURCE: "rocketchat" needs: - job: rocketchat-cert - - job: setup-openappstack + - job: setup-stackspin - job: rocketchat-kustomization-ready extends: - .taiko @@ -675,7 +675,7 @@ wekan-taiko: RESOURCE: "wekan" needs: - job: wekan-cert - - job: setup-openappstack + - job: setup-stackspin - job: wekan-kustomization-ready extends: - .taiko @@ -686,7 +686,7 @@ wordpress-taiko: RESOURCE: "wordpress" needs: - job: wordpress-cert - - job: setup-openappstack + - job: setup-stackspin - job: wordpress-kustomization-ready extends: - .taiko @@ -711,7 +711,7 @@ terminate-droplet: # Delete droplet - python3 -c "import greenhost_cloud; greenhost_cloud.terminate_droplets_by_name(\"^${CI_COMMIT_REF_SLUG}\")" # Delete container image if one was created - - "if [ \"$CI_CONTAINER_TAG\" != \"master\" ]; then curl --request DELETE --header \"PRIVATE-TOKEN: ${CLEANER_TOKEN}\" https://open.greenhost.net/api/v4/projects/openappstack%2Fopenappstack/registry/repositories/2/tags/${CI_CONTAINER_TAG}; fi" + - "if [ \"$CI_CONTAINER_TAG\" != \"master\" ]; then curl --request DELETE --header \"PRIVATE-TOKEN: ${CLEANER_TOKEN}\" https://open.greenhost.net/api/v4/projects/stackspin%2Fstackspin/registry/repositories/2/tags/${CI_CONTAINER_TAG}; fi" environment: name: $CI_COMMIT_REF_SLUG action: stop diff --git a/.gitlab/ci_scripts/create_vps.sh b/.gitlab/ci_scripts/create_vps.sh index 01d612ac3..10e3e674b 100644 --- a/.gitlab/ci_scripts/create_vps.sh +++ b/.gitlab/ci_scripts/create_vps.sh @@ -3,7 +3,7 @@ set -ve -# shellcheck disable=SC2039 +# shellcheck disable=SC2039,SC3028 VPS_HOSTNAME="$HOSTNAME" # Delete old machine if it still exists @@ -13,7 +13,7 @@ greenhost_cloud.terminate_droplets_by_name(\"^${VPS_HOSTNAME}$\")" echo "Creating new machine" # Uses a custom disk image built with 1f2bee2 on 2021-10-19. See # CONTRIBUTING.md#ci-pipeline-image for more info. -python3 -m openappstack "$VPS_HOSTNAME" create \ +python3 -m stackspin "$VPS_HOSTNAME" create \ --create-droplet "$DOMAIN" \ --create-hostname "$VPS_HOSTNAME" \ --ssh-key-id "$SSH_KEY_ID" \ diff --git a/.gitlab/issue_templates/bug.md b/.gitlab/issue_templates/bug.md index 1eeb4285d..555403532 100644 --- a/.gitlab/issue_templates/bug.md +++ b/.gitlab/issue_templates/bug.md @@ -1,6 +1,6 @@ The output of these commands is helpful to debug deployment errors: - oas-version-info.sh + stackspin-version-info.sh kubectl get pods -A Please include this output if possible. diff --git a/.gitlab/issue_templates/feedback.md b/.gitlab/issue_templates/feedback.md index 9ec51ace6..ff674008a 100644 --- a/.gitlab/issue_templates/feedback.md +++ b/.gitlab/issue_templates/feedback.md @@ -1,4 +1,4 @@ -This feedback template can be used to provide feedback based on the [OAS testing instructions](https://docs.openappstack.net/en/latest/testing_instructions.html). +This feedback template can be used to provide feedback based on the [OAS testing instructions](https://docs.stackspin.net/en/latest/testing_instructions.html). # Installation diff --git a/.gitlab/issue_templates/new_app.md b/.gitlab/issue_templates/new_app.md index ec7b3df75..21159e992 100644 --- a/.gitlab/issue_templates/new_app.md +++ b/.gitlab/issue_templates/new_app.md @@ -5,7 +5,7 @@ * [ ] Create new source if needed in `flux2/infrastructure/sources/APP.yaml` * [ ] Include `APP.yaml` in `flux2/infrastructure/sources/kustomization.yaml` -* [ ] Add app secret: `charts/oas-secrets/templates/oas-APP-variables.yaml` +* [ ] Add app secret: `charts/stackspin-secrets/templates/stackspin-APP-variables.yaml` * Add kustomizations: * [ ] `flux2/cluster/optional/APP/APP.yaml` * [ ] `flux2/apps/APP/kustomization.yaml` @@ -15,7 +15,7 @@ ### Single sign-on * Integrate the new app into the single sign-on system - * Add OAuth client secret to `charts/oas-secrets/templates/oas-oauth-variables.yaml` + * Add OAuth client secret to `charts/stackspin-secrets/templates/stackspin-oauth-variables.yaml` * In `flux2/core/base/single-sign-on/release.yaml`: * [ ] Add app `userbackend.applications` * [ ] Add app to `oAuthClients` @@ -60,7 +60,7 @@ Add app to following stages in `.gitlab-ci.yml`: git clone https://github.com/k8s-at-home/renovate-helm-releases /tmp/renovate-helm-releases /tmp/renovate.py --cluster-path flux2 ``` -* [ ] Make sure that latest [renovate pipeline](https://open.greenhost.net/openappstack/renovate/-/pipelines) +* [ ] Make sure that latest [renovate pipeline](https://open.greenhost.net/stackspin/renovate/-/pipelines) checks for app updates **after the new app is merged into the main branch** ## Documentation diff --git a/.gitlab/issue_templates/update_all_components.md b/.gitlab/issue_templates/update_all_components.md index f1c1f8ac9..03df28802 100644 --- a/.gitlab/issue_templates/update_all_components.md +++ b/.gitlab/issue_templates/update_all_components.md @@ -3,24 +3,24 @@ To update all applications, check the following files: * `Dockerfile`: * [ ] All apk app versions * [ ] All non-apk app versions in `Dockerfile`, especially: - * [ ] flux (Make sure the version is the same as in `ansible/group_vars/all/oas.yml`, `docs/installation/install_oas.rst` and `install/flux-version-check.sh`) + * [ ] flux (Make sure the version is the same as in `ansible/group_vars/all/stackspin.yml`, `docs/installation/install_stackspin.rst` and `install/flux-version-check.sh`) * [ ] Mitogen version in `ansible/plugins` (https://github.com/mitogen-hq/mitogen/releases) -In `ansible/group_vars/all/oas.yml`: +In `ansible/group_vars/all/stackspin.yml`: * [ ] k3s Our custom charts: We get dependeny updates via renovate for our custom helm charts. -However, we still don't get [automated version bumps](https://open.greenhost.net/openappstack/openappstack/-/issues/1001) +However, we still don't get [automated version bumps](https://open.greenhost.net/stackspin/stackspin/-/issues/1001) with it, so make sure to bump the version if needed for: -* [ ] [dashboard-frontend](https://open.greenhost.net/openappstack/admin-frontend) -* [ ] [nextcloud](https://open.greenhost.net/openappstack/nextcloud) -* [ ] [single-sign-on](https://open.greenhost.net/openappstack/single-sign-on) -* [ ] [wordpress](https://open.greenhost.net/openappstack/wordpress-helm) +* [ ] [dashboard-frontend](https://open.greenhost.net/stackspin/admin-frontend) +* [ ] [nextcloud](https://open.greenhost.net/stackspin/nextcloud) +* [ ] [single-sign-on](https://open.greenhost.net/stackspin/single-sign-on) +* [ ] [wordpress](https://open.greenhost.net/stackspin/wordpress-helm) Pull in upstream changes to: -* [ ] [local-path-provisioner](https://open.greenhost.net/openappstack/local-path-provisioner) +* [ ] [local-path-provisioner](https://open.greenhost.net/stackspin/local-path-provisioner) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3b75e62c9..3002d6ab5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -81,22 +81,22 @@ use it. This is a manual process for now. Follow these steps: export HOST_NAME=baseimage$(date +'%Y%m%d') # Make sure you use your private ssh key id, 411 is the ssh key used in CI export SSH_ID=411 - python -m openappstack ${HOST_NAME} create --create-droplet --create-hostname ${HOST_NAME}.openappstack.net --ssh-key-id $SSH_ID --create-domain-records --subdomain ${HOST_NAME} openappstack.net + python -m stackspin ${HOST_NAME} create --create-droplet --create-hostname ${HOST_NAME}.stackspin.net --ssh-key-id $SSH_ID --create-domain-records --subdomain ${HOST_NAME} stackspin.net ``` 2. Accept ssh host key ``` - ssh root@${HOST_NAME}.openappstack.net + ssh root@${HOST_NAME}.stackspin.net ``` 3. Run the following to install *only kubernetes* on the VPS: ``` - python3 -m openappstack ${HOST_NAME} install + python3 -m stackspin ${HOST_NAME} install ``` 4. Log into your machine and clean up the k3s server, then delete the cluster data: ``` - ssh root@${HOST_NAME}.openappstack.net + ssh root@${HOST_NAME}.stackspin.net # Clean up running containers and firewall /usr/local/bin/k3s-killall.sh # Remove k3s state diff --git a/Makefile b/Makefile index 686bb6cca..46a257bfc 100644 --- a/Makefile +++ b/Makefile @@ -5,5 +5,5 @@ help: freeze: # pip wrongly adds `pkg-resources==0.0.0` which will break some systems, see - # https://open.greenhost.net/openappstack/openappstack/issues/498#note_15057 + # https://open.greenhost.net/stackspin/stackspin/issues/498#note_15057 pip3 freeze | grep -v "pkg-resources" > requirements-stable.txt diff --git a/README.md b/README.md index 42f751a77..db86e5fde 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,6 @@ a single-node kubernetes cluster. > server’s configuration, so please ONLY install OAS on a dedicated, clean > server.** -Please refer to https://docs.openappstack.net for further details, +Please refer to https://docs.stackspin.net for further details, and to [the installation tutorial](docs/installation_instructions.md) for a step by step installation tutorial how to install your cluster. diff --git a/ansible/conftest.py b/ansible/conftest.py deleted file mode 120000 index 49669d439..000000000 --- a/ansible/conftest.py +++ /dev/null @@ -1 +0,0 @@ -../test/conftest.py \ No newline at end of file diff --git a/ansible/conftest.py b/ansible/conftest.py new file mode 100644 index 000000000..e21517b9d --- /dev/null +++ b/ansible/conftest.py @@ -0,0 +1,30 @@ +import pytest + + +def pytest_addoption(parser): + """Add pytest options: + --resource: Select specific resource to test + --namespace: Use specific namespace to look for resource + + See https://docs.pytest.org/en/stable/example/simple.html#pass-different-values-to-a-test-function-depending-on-command-line-options + """ + parser.addoption( + "--resource", action="store", default="all", + help="Name of the resource to test, default: all" + ) + + parser.addoption( + "--namespace", action="store", default="", + help="Namespace of the resource to test, default: <empty>" + ) + + +@pytest.fixture +def resource(request): + """Process new cli option.""" + return request.config.getoption("--resource") + +@pytest.fixture +def namespace(request): + """Process new cli option.""" + return request.config.getoption("--namespace") diff --git a/ansible/group_vars/all/oas.yml b/ansible/group_vars/all/oas.yml index efd5e0aba..c097ab766 100644 --- a/ansible/group_vars/all/oas.yml +++ b/ansible/group_vars/all/oas.yml @@ -22,7 +22,7 @@ k3s: helm: # helm snap 2.15.0 and 2.15.1 broke for us - # (https://open.greenhost.net/openappstack/openappstack/issues/338), so we + # (https://open.greenhost.net/stackspin/stackspin/issues/338), so we # use a pinned version for now. # We use the official helm install script for now which has no checksum. # https://github.com/helm/helm/releases diff --git a/ansible/inventory.yml.example b/ansible/inventory.yml.example index 0b5e04227..a3dbb67d5 100644 --- a/ansible/inventory.yml.example +++ b/ansible/inventory.yml.example @@ -1,6 +1,6 @@ all: hosts: - oas-dev: + stackspin-dev: # Node to deploy to; can be a name or address. ansible_host: "203.0.113.6" # Ssh user to log in as. @@ -8,7 +8,7 @@ all: children: master: hosts: - oas-dev + stackspin-dev worker: hosts: - oas-dev + stackspin-dev diff --git a/ansible/roles/configure/files/README.md b/ansible/roles/configure/files/README.md index 7ca34cbbf..ace06035a 100644 --- a/ansible/roles/configure/files/README.md +++ b/ansible/roles/configure/files/README.md @@ -1,5 +1,5 @@ This directory contains information about the OpenAppStack instance running on -this machine. For general information, see [https://openappstack.net]. +this machine. For general information, see [https://stackspin.net]. ## Flux diff --git a/ansible/roles/configure/tasks/main.yml b/ansible/roles/configure/tasks/main.yml index ad94bc811..b5d7a5c50 100644 --- a/ansible/roles/configure/tasks/main.yml +++ b/ansible/roles/configure/tasks/main.yml @@ -42,15 +42,15 @@ args: creates: /etc/bash_completion.d/helm -- name: Deploy /root/.bashrc_oas +- name: Deploy /root/.bashrc_stackspin tags: - bash - krew copy: - dest: /root/.bashrc_oas - src: bashrc_oas + dest: /root/.bashrc_stackspin + src: bashrc_stackspin -- name: Source /root/.bashrc_oas from /root/.bashrc +- name: Source /root/.bashrc_stackspin from /root/.bashrc tags: - bash blockinfile: @@ -58,8 +58,8 @@ state: present create: true block: | - # Source Openappstack addtions from .bashrc_oas - . /root/.bashrc_oas + # Source Openappstack addtions from .bashrc_stackspin + . /root/.bashrc_stackspin - name: Record OpenAppStack version info tags: @@ -70,7 +70,7 @@ - git log --pretty=format:"%H" -n 1 - git tag -l $(<../VERSION) '--format=%(*objectname)' delegate_to: localhost - register: openappstack_version + register: stackspin_version changed_when: false - name: Create OpenAppStack version file @@ -82,13 +82,13 @@ mode: "0444" become: true -- name: Install oas-version-info.sh script +- name: Install stackspin-version-info.sh script tags: - debug - scripts - version copy: dest: /usr/local/bin/ - src: oas-version-info.sh + src: stackspin-version-info.sh mode: '0755' become: true diff --git a/ansible/roles/configure/templates/version.txt b/ansible/roles/configure/templates/version.txt index 7d1aabd9a..6150d7331 100644 --- a/ansible/roles/configure/templates/version.txt +++ b/ansible/roles/configure/templates/version.txt @@ -1,11 +1,11 @@ -{% set version = openappstack_version.results[0].stdout %} -{% set hash = openappstack_version.results[1].stdout %} -{% set taghash = openappstack_version.results[2].stdout %} +{% set version = stackspin_version.results[0].stdout %} +{% set hash = stackspin_version.results[1].stdout %} +{% set taghash = stackspin_version.results[2].stdout %} VERSION: {{ version }} {% if hash == taghash %} git hash: {{ hash }} -https://open.greenhost.net/openappstack/openappstack/commit/{{ hash }} +https://open.greenhost.net/stackspin/stackspin/commit/{{ hash }} {% else %} modified up to: {{ hash }} -https://open.greenhost.net/openappstack/openappstack/commit/{{ hash }} +https://open.greenhost.net/stackspin/stackspin/commit/{{ hash }} {% endif %} diff --git a/ansible/roles/pre-configure/tasks/main.yml b/ansible/roles/pre-configure/tasks/main.yml index 18191f3ac..530f814fe 100644 --- a/ansible/roles/pre-configure/tasks/main.yml +++ b/ansible/roles/pre-configure/tasks/main.yml @@ -32,7 +32,7 @@ with_items: # In order to save disk space we remove traditional syslog packages # and only rely on systemd journald - # see https://open.greenhost.net/openappstack/openappstack/-/issues/575 + # see https://open.greenhost.net/stackspin/stackspin/-/issues/575 - rsyslog - syslog-ng diff --git a/ansible/roles/pre-configure/templates/registries.yaml b/ansible/roles/pre-configure/templates/registries.yaml index c5bb1520b..87a9463c1 100644 --- a/ansible/roles/pre-configure/templates/registries.yaml +++ b/ansible/roles/pre-configure/templates/registries.yaml @@ -5,7 +5,7 @@ mirrors: - "{{ docker_mirror.server }}" rewrite: # We need to remove the `server` part from the `endpoint` part, so what we - # end up with is a path like ""/openappstack/dependency_proxy/containers/$1" + # end up with is a path like ""/stackspin/dependency_proxy/containers/$1" "^(.*)$": "{{ docker_mirror.endpoint | regex_replace(docker_mirror.server, '') }}/$1" configs: "{{ docker_mirror.server }}": diff --git a/docs/README.md b/docs/README.md index 2da795315..951369891 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,7 +1,7 @@ ## Documentation This folder contains the documentation. You can find the documentation at -https://openappstack.readthedocs.io/. It is also possible to build the +https://stackspin.readthedocs.io/. It is also possible to build the documentation, using Sphinx: pip install -r ./requirements.txt diff --git a/docs/customizing.rst b/docs/customizing.rst index b389c49a7..c47a682d4 100644 --- a/docs/customizing.rst +++ b/docs/customizing.rst @@ -35,7 +35,7 @@ Example: Customize Nextcloud to work with staging certificates Our CI pipeline works with staging certificates from Let's Encrypt, for that reason we need to allow insecure connections for the integration with -ONLYOFFICE. You can find the file at ``install/overrides/oas-nextcloud-override.yaml``. +ONLYOFFICE. You can find the file at ``install/overrides/stackspin-nextcloud-override.yaml``. To apply it, run the following commands: @@ -43,14 +43,14 @@ To apply it, run the following commands: # If you want to run this on your provisioning machine, tell kubectl to use # your cluster: - export KUBECONFIG=$PWD/clusters/oas.example.org/kube_config_cluster.yml + export KUBECONFIG=$PWD/clusters/stackspin.example.org/kube_config_cluster.yml # Check the current state of the helmrelease you want to modify: flux get helmrelease -A # If all is OK, make sure to apply your override configmap or secret in the # same namespace as your helmrelease with the '-n' argument kubectl apply \ - -n oas-apps \ - -f ./install/overrides/oas-nextcloud-override.yaml + -n stackspin-apps \ + -f ./install/overrides/stackspin-nextcloud-override.yaml Adding custom apps to the cluster ================================= diff --git a/docs/design.md b/docs/design.md index 8cb378693..c10602942 100644 --- a/docs/design.md +++ b/docs/design.md @@ -103,7 +103,7 @@ inside the containers). However, it is possible to mount persistent volumes to specific directories in the container, basically adding a persistent layer on top of the containerised application. To provide this in OAS's simple setup, we use a [local storage -provisioner](https://open.greenhost.net/openappstack/local-path-provisioner) +provisioner](https://open.greenhost.net/stackspin/local-path-provisioner) that automatically provides persistent data on the VPS running OAS to an application that requests it. @@ -114,7 +114,7 @@ applications. [Flux 2](https://fluxcd.io/) is the system running in the cluster that is responsible for these updates. Flux 2 tracks all the files in the `flux2` directory of the [OpenAppStack code -repository](https://open.greenhost.net/openappstack/openappstack). Once changes +repository](https://open.greenhost.net/stackspin/stackspin). Once changes are pushd the branch that Flux tracks, the changes are applied to the cluster. We use Flux 2 in "read only" mode, which means that your OpenAppStack cluster @@ -125,7 +125,7 @@ its components in the [flux 2 documentation](https://fluxcd.io/docs). OpenAppStack includes several APIs that are available for some pieces of the software to talk to. Specifically the [Dashboard -application](https://open.greenhost.net/openappstack/admin-frontend) uses most +application](https://open.greenhost.net/stackspin/admin-frontend) uses most of these APIs. <!-- Edit URL: diff --git a/docs/index.rst b/docs/index.rst index 309c7d1d1..4d4f52114 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -20,7 +20,7 @@ OpenAppStack is: For more information, go to `the OpenAppStack website`_. -.. _the OpenAppStack website: https://openappstack.net +.. _the OpenAppStack website: https://stackspin.net .. toctree:: :maxdepth: 2 @@ -28,7 +28,7 @@ For more information, go to `the OpenAppStack website`_. installation/overview installation/create_cluster - installation/install_oas + installation/install_stackspin .. toctree:: :maxdepth: 2 diff --git a/docs/installation/create_cluster.rst b/docs/installation/create_cluster.rst index e3646b69b..25eee0786 100644 --- a/docs/installation/create_cluster.rst +++ b/docs/installation/create_cluster.rst @@ -29,7 +29,7 @@ bare metal server ready. The server should meet these requirements: - ``ssh-agent`` to give you access to your VPS In this guide, we will create a cluster with IP address ``1.2.3.4`` on domain -``oas.example.org``. Substitute these two variables with your IP address and +``stackspin.example.org``. Substitute these two variables with your IP address and your domain. .. _create_config: @@ -38,13 +38,13 @@ Step 1: Create cluster configuration ==================================== To create a config for your cluster, use the ``create`` subcommand of the -OpenAppStack CLI. First, choose a name (we chose ``oas.example.org``) for +OpenAppStack CLI. First, choose a name (we chose ``stackspin.example.org``) for your cluster. Then run the following command to get information about the ``create`` subcommand: :: - $ python -m openappstack oas.example.org create --help + $ python -m stackspin stackspin.example.org create --help If you want the installation script to automatically create a VPS for you, check :ref:`setup-with-greenhost-api`. @@ -60,19 +60,19 @@ following command: :: - $ python -m openappstack oas.example.org create \ - oas.example.org \ + $ python -m stackspin stackspin.example.org create \ + stackspin.example.org \ --ip-address 1.2.3.4 This configures your cluster under the fully qualified domain name (FQDN) -``oas.example.org``, To break down the command: +``stackspin.example.org``, To break down the command: -- the first, positional argument ``oas.example.org`` tells the cluster the domain +- the first, positional argument ``stackspin.example.org`` tells the cluster the domain it will be hosted on. This should be a (subdomain of a) domain you own. - ``--ip-address 1.2.3.4`` tells the script the IP address of your VPS. This will be used to find the VPS during the installation procedure. -The configuration has now been written to the ``clusters/oas.example.org`` on +The configuration has now been written to the ``clusters/stackspin.example.org`` on your provisioning machine. .. _configure_dns: @@ -83,8 +83,8 @@ Step 2: Configure DNS Next, make sure that you have two DNS records that point to your cluster. Create these two DNS records: -- An ``A`` record ``oas.example.org`` pointing to the VPS's IP address, -- A ``CNAME`` record ``*.oas.example.org`` pointing to ``oas.example.org``. +- An ``A`` record ``stackspin.example.org`` pointing to the VPS's IP address, +- A ``CNAME`` record ``*.stackspin.example.org`` pointing to ``stackspin.example.org``. .. Note:: It is also possible to host OpenAppStack on a domain (with @@ -110,7 +110,7 @@ sure 'ping' shows your VPS's IP address: :: - $ ping oas.example.org + $ ping stackspin.example.org The ``install`` command will try to log into your machine as the ``root``\ user using SSH. @@ -120,7 +120,7 @@ OpenAppStack. :: - $ python -m openappstack oas.example.org install + $ python -m stackspin stackspin.example.org install This will take a few minutes. It installs `k3s`_, a lightweight @@ -139,7 +139,7 @@ Kubernetes and useful tools like `kubectl`_ (Kubernetes cli tool), `krew`_ installation script. This usually updates k3s and can have other benefits. Now you have a single-node k3s/Kuberetes cluster running and can continue with -:ref:`install_oas`. +:ref:`install_stackspin`. Advanced installation ===================== @@ -198,41 +198,41 @@ Cluster creation with the Greenhost API - In both cases you need to provide the ``DOMAIN_NAME`` positional argument. - If you use a subdomain (e.g. ``oas.yourdomain.com``), use the + If you use a subdomain (e.g. ``stackspin.yourdomain.com``), use the ``--subdomain`` command as follows: :: - $ python -m openappstack oas.example.org create --subdomain oas example.org + $ python -m stackspin stackspin.example.org create --subdomain stackspin example.org - Here is an example of a complete creation command: :: - $ python -m openappstack oas.example.org create \ + $ python -m stackspin stackspin.example.org create \ --create-droplet \ - --create-hostname oas.example.org \ + --create-hostname stackspin.example.org \ --ssh-key-id 112 \ --create-domain-records \ - --subdomain oas \ + --subdomain stackspin \ example.org Let's break down the arguments: - ``--create-droplet``: Use the Greenhost API to create a new VPS - - ``--create-hostname oas.example.org``: Create a VPS with hostname ``oas.example.org`` + - ``--create-hostname stackspin.example.org``: Create a VPS with hostname ``stackspin.example.org`` - ``--ssh-key-id 112``: Use SSH key ID 112 (you can find your SSH key ID in the `Cosmos Service Centre <https://service.greenhost.net>`__ under *VPS Cloud* -> *Installation SSH Keys*. Hover over a button there to see the ID in the URL it uses. - ``--create-domain-records``: Use the Greenhost API to create DNS records If you do this, you can skip :ref:`configure_dns`. The following records are created: - - An ``A`` record ``oas.example.org`` pointing to the VPSs IP address - - A ``CNAME`` record ``*.oas.example.org`` pointing to ``oas.example.org``. + - An ``A`` record ``stackspin.example.org`` pointing to the VPSs IP address + - A ``CNAME`` record ``*.stackspin.example.org`` pointing to ``stackspin.example.org``. - - ``--subdomain oas``: Only needed when you use ``--create-domain-records`` so + - ``--subdomain stackspin``: Only needed when you use ``--create-domain-records`` so the Greenhost API can find your domain. Instead of using positional argument - ``oas.example.org`` you need to provide + ``stackspin.example.org`` you need to provide You can now continue to :ref:`configure_dns`, or :ref:`create_cluster` if you used the API to create the DNS records. diff --git a/docs/installation/install_oas.rst b/docs/installation/install_oas.rst index 82e7742e9..cc7118cdb 100644 --- a/docs/installation/install_oas.rst +++ b/docs/installation/install_oas.rst @@ -1,4 +1,4 @@ -.. _install_oas: +.. _install_stackspin: ==================== Install OpenAppStack @@ -35,10 +35,10 @@ Please choose one of the below options: **Setup**: - Create a directory containing your cluster configuration, i.e. - ``mkdir -p clusters/oas.example.org`` + ``mkdir -p clusters/stackspin.example.org`` - Copy your ``kube_config.yml`` file inside your cluster config directory and rename it to ``kube_config_cluster.yml``: - ``cp kube_config.yml clusters/oas.example.org/kube_config_cluster.yml`` + ``cp kube_config.yml clusters/stackspin.example.org/kube_config_cluster.yml`` Continue by following the steps below. @@ -56,7 +56,7 @@ Prerequisites - ``flux version 0.20.1`` `Download flux_0.20.1_linux_amd64.tar.gz <https://github.com/fluxcd/flux2/releases/download/v0.20.1/flux_0.20.1_linux_amd64.tar.gz>`_ Copy the file ``install/.flux.env.example`` to your cluster dir -``clusters/oas.example.org/.flux.env``. This file contains the last bit of +``clusters/stackspin.example.org/.flux.env``. This file contains the last bit of information you need to configure. You **have to** configure the following values. The rest are optional. @@ -80,7 +80,7 @@ email notifications, you need to provide an email account. OpenAppStack uses SMTP to send emails. Search your email provider's helpdesk for SMTP configuration details and enter them in the -``clusters/oas.example.org/.flux.env`` file as follows: +``clusters/stackspin.example.org/.flux.env`` file as follows: .. code:: @@ -128,7 +128,7 @@ It does not include anything on the VPS that you may have set up but is not part of OpenAppStack, like programs installed via ``apt``, or data added to the VPS disk not through OpenAppStack. -To configure Velero, edit the file ``clusters/oas.example.org/.flux.env``, +To configure Velero, edit the file ``clusters/stackspin.example.org/.flux.env``, and configure the settings with the ``backup_s3_`` prefix. Then continue with the installation procedure as described below. At the end of @@ -141,11 +141,11 @@ Step 1: Install core applications Before you can start, you need to execute a few commands from the installation directory **on your provisioning machine**. Don't forget to replace -``oas.example.org`` with your domain. +``stackspin.example.org`` with your domain. .. code:: bash - export CLUSTER_DIR=clusters/oas.example.org + export CLUSTER_DIR=clusters/stackspin.example.org # Copy the installation kustomization to your cluster directory cp install/kustomization.yaml $CLUSTER_DIR/ @@ -163,17 +163,17 @@ After you have executed that code, your terminal should show: .. code:: bash - secret/oas-cluster-variables created + secret/stackspin-cluster-variables created Next, run: .. code:: - ./install/install-openappstack.sh + ./install/install-stackspin.sh This installs the *core* of OpenAppStack into your cluster. To see what's included, check the ``flux2/infrastructure`` and the ``flux2/core`` folders in -the `git repository <https://open.greenhost.net/openappstack/openappstack>`__. +the `git repository <https://open.greenhost.net/stackspin/stackspin>`__. .. _install_additional_apps: @@ -215,8 +215,8 @@ Step 4: Let us know! We would love to hear about your experience installing OpenAppStack. If you encountered any problems, please create an issue in our `issue tracker -<https://open.greenhost.net/groups/openappstack/-/issues>`__. If you didn't +<https://open.greenhost.net/groups/stackspin/-/issues>`__. If you didn't please still reach out as described on our `contact page -<https://openappstack.net/contact.html>`__ and tell us how you like OpenAppStack +<https://stackspin.net/contact.html>`__ and tell us how you like OpenAppStack so far. We want to be in communication with our users, and we want to help you if you run into problems. diff --git a/docs/installation/overview.rst b/docs/installation/overview.rst index 22ef63c2d..d0bffe2e0 100644 --- a/docs/installation/overview.rst +++ b/docs/installation/overview.rst @@ -9,7 +9,7 @@ Installation overview production use! We anticipate major changes and do not guarantee a data-preserving upgrade path from current installations. However, we encourage you to try OpenAppStack and ask you to `report all issues - you encounter <https://openappstack.net/contact.html>`__. + you encounter <https://stackspin.net/contact.html>`__. - When you install OpenAppStack on a server, the installation process will make some substantial changes to the server's configuration, so please do not use a server that functions as anything other than a @@ -46,8 +46,8 @@ and checkout the latest release branch (currently ``v0.7``): :: - $ git clone -b v0.7 https://open.greenhost.net/openappstack/openappstack.git - $ cd openappstack + $ git clone -b v0.7 https://open.greenhost.net/stackspin/stackspin.git + $ cd stackspin Create a python virtual environment ----------------------------------- @@ -83,16 +83,16 @@ Now you can run the OpenAppStack CLI as follows: :: - $ python -m openappstack CLUSTER_NAME <command> + $ python -m stackspin CLUSTER_NAME <command> The CLI *always* needs a ``CLUSTER_NAME`` argument. Even for getting subcommand help messages. Be sure to run this command in the root directory of the git repository. In this tutorial, we're using -``oas.example.org`` as the cluster name. Try it out by running +``stackspin.example.org`` as the cluster name. Try it out by running :: - $ python -m openappstack oas.example.org --help + $ python -m stackspin stackspin.example.org --help Installation options @@ -100,6 +100,6 @@ Installation options 1. If you want to create a Kubernetes cluster from scratch on a dedicated server or virtual machine please start with :ref:`create_kubernetes_cluster` and - then continue with :ref:`install_oas`. + then continue with :ref:`install_stackspin`. #. If you want to install Openappstack on an existing Kubernetes cluster you can - skip the above instructions and start with :ref:`install_oas`. + skip the above instructions and start with :ref:`install_stackspin`. diff --git a/docs/maintenance.rst b/docs/maintenance.rst index d6a1c0d5a..971dc2979 100644 --- a/docs/maintenance.rst +++ b/docs/maintenance.rst @@ -20,7 +20,7 @@ works, and the `Using Loki in Grafana`_ gets you started with querying your cluster logs with Grafana. You will find the Loki Grafana integration on your cluster at -https://grafana.oas.example.org/explore together with some generic query +https://grafana.stackspin.example.org/explore together with some generic query examples. LogQL query examples @@ -54,7 +54,7 @@ Flux controllers: - ``source-controller`` that tracks Helm and Git repositories like - https://open.greenhost.net/openappstack/openappstack for updates. + https://open.greenhost.net/stackspin/stackspin for updates. - ``kustomize-controller`` to deploy ``kustomizations`` that often install ``helmreleases``. - ``helm-controller`` to deploy the ``helmreleases``. @@ -136,7 +136,7 @@ On your provisioning machine During the installation process, a cluster config directory is created on your provisioning machine, located in the top-level sub-directory -``clusters`` in your clone of the openappstack git repository. Although +``clusters`` in your clone of the stackspin git repository. Although these files are not essential for your OpenAppStack cluster to continue functioning, you may want to back this folder up because it allows easy access to your cluster. @@ -173,7 +173,7 @@ Change the IP of your cluster In case your cluster needs to migrate to another IP, make sure to update the IP address in ``/etc/rancher/k3s/k3s.yaml`` and, if applicable, your local kube config and inventory.yml in the cluster directory -``clusters/oas.example.org``. +``clusters/stackspin.example.org``. Delete evicted pods ------------------- @@ -213,6 +213,6 @@ following command that will apply the changes to all installed kustomizations: .. _LogQL documentation: https://grafana.com/docs/loki/latest/logql .. _Flux: https://fluxcd.io/ .. _Velero’s documentation: https://velero.io/docs/v1.4/ -.. _reach out to us: https://openappstack.net/contact.html +.. _reach out to us: https://stackspin.net/contact.html .. _taints: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ .. _out of resource handling with kubelet: https://kubernetes.io/docs/tasks/administer-cluster/out-of-resource/ diff --git a/docs/security.rst b/docs/security.rst index 099bfa76a..29711b3fd 100644 --- a/docs/security.rst +++ b/docs/security.rst @@ -13,8 +13,8 @@ the OAS ingress (`ingress-nginx <https://kubernetes.github.io/ingress-nginx>`__) to only accept connections from a certain IP address or range. Follow the :ref:`customizing:Customize OAS applications` instructions, but use the following -secret as ``install/overrides/oas-nginx-override.yml`` and apply the secret in -the ``oas`` namespace instead of ``oas-apps``. Replace the source range with the +secret as ``install/overrides/stackspin-nginx-override.yml`` and apply the secret in +the ``stackspin`` namespace instead of ``stackspin-apps``. Replace the source range with the IP address ranges you want to allow. .. code-block:: yaml @@ -23,7 +23,7 @@ IP address ranges you want to allow. apiVersion: v1 kind: secret metadata: - name: oas-nginx-override + name: stackspin-nginx-override data: values.yaml: | controller: diff --git a/docs/testing.rst b/docs/testing.rst index 2328a3e43..d26985e05 100644 --- a/docs/testing.rst +++ b/docs/testing.rst @@ -7,7 +7,7 @@ would be useful to test, and guesses at what results of those tests would be useful to write down. At any point please feel invited to test whatever functionality you come across, and reporting whatever you think is interesting. Our contact details are listed -`here <https://openappstack.net/contact.html>`__, and we’ll descibe how +`here <https://stackspin.net/contact.html>`__, and we’ll descibe how to give feedback via our issue tracker at the `end of these instructions <#providing-feedback>`__. @@ -115,7 +115,7 @@ Providing feedback If you have not done so already, please create an account on https://open.greenhost.net (or login with your existing github account) and `create a new -issue <https://open.greenhost.net/openappstack/openappstack/issues/new>`__ +issue <https://open.greenhost.net/stackspin/stackspin/issues/new>`__ using the ``Feedback`` template. Thanks a lot for your testing work! We’ll use your input to try to diff --git a/docs/troubleshooting.rst b/docs/troubleshooting.rst index 650f482bc..f97fca786 100644 --- a/docs/troubleshooting.rst +++ b/docs/troubleshooting.rst @@ -10,8 +10,8 @@ problem. This document describes what you can do. **We would love to hear from you!** If you have problems, please create an issue in our `issue tracker -<https://open.greenhost.net/groups/openappstack/-/issues>`__ or reach out as -described on our `contact page <https://openappstack.net/contact.html>`__. We +<https://open.greenhost.net/groups/stackspin/-/issues>`__ or reach out as +described on our `contact page <https://stackspin.net/contact.html>`__. We want to be in communication with our users, and we want to help you if you run into problems. @@ -19,7 +19,7 @@ Known issues ------------ If you run into a problem, please check our `issue -tracker <https://open.greenhost.net/groups/openappstack/-/issues>`__ to see if +tracker <https://open.greenhost.net/groups/stackspin/-/issues>`__ to see if others have run into the same problem. We might have suggested a workaround or temporary solution in one of our issues. If your problems is not described in an issue, please open a new one so we can solve the problems you encounter. @@ -53,11 +53,11 @@ machine**. To run the test against your cluster, first export the ``CLUSTER_DIR`` environment variable with the location of your cluster config directory (replace -``oas.example.org`` with your cluster name): +``stackspin.example.org`` with your cluster name): .. code:: bash - export CLUSTER_DIR="../clusters/oas.example.org" + export CLUSTER_DIR="../clusters/stackspin.example.org" Run all tests ''''''''''''' @@ -105,7 +105,7 @@ Taiko tests Taiko tests run in a browser and test if all the interfaces are up and running and correctly connected to each other. They are integrated in the -`openappstack` CLI command suite. +`stackspin` CLI command suite. Prerequisites ''''''''''''' @@ -123,19 +123,19 @@ To run all Taiko tests, run the following command in this repository: .. code:: bash - python -m openappstack CLUSTERNAME test + python -m stackspin CLUSTERNAME test To learn more about the `test` subcommand, run: .. code:: bash - python -m openappstack CLUSTERNAME test --help + python -m stackspin CLUSTERNAME test --help You can also only run a Taiko test for a specific application, i.e.: .. code:: bash - python -m openappstack CLUSTERNAME test --taiko-tags nextcloud + python -m stackspin CLUSTERNAME test --taiko-tags nextcloud Advanced usage ~~~~~~~~~~~~~~ @@ -147,7 +147,7 @@ Specify host manually: .. code:: bash - py.test -s --hosts='ssh://root@example.openappstack.net' + py.test -s --hosts='ssh://root@example.stackspin.net' Run only tests tagged with `prometheus`: @@ -166,13 +166,13 @@ ansible inventory file, either by using pytest: .. code:: bash - FQDN='example.openappstack.net' py.test -sv -m 'certs' + FQDN='example.stackspin.net' py.test -sv -m 'certs' or directly: .. code:: bash - FQDN='example.openappstack.net' pytest/test_certs.py + FQDN='example.stackspin.net' pytest/test_certs.py Running Testinfra tests with local gitlab-runner docker executor @@ -180,8 +180,8 @@ Export the following environment variables like this: .. code:: bash - export CI_REGISTRY_IMAGE='open.greenhost.net:4567/openappstack/openappstack' - export SSH_PRIVATE_KEY="$(cat ~/.ssh/id_ed25519_oas_ci)" + export CI_REGISTRY_IMAGE='open.greenhost.net:4567/stackspin/stackspin' + export SSH_PRIVATE_KEY="$(cat ~/.ssh/id_ed25519_stackspin_ci)" export COSMOS_API_TOKEN='…' then: @@ -193,14 +193,14 @@ then: Taiko tests ''''''''''' -If you want to use Taiko without invoking the openappstack CLI, go to the +If you want to use Taiko without invoking the stackspin CLI, go to the ``test/taiko`` directory and run: For nextcloud & onlyoffice tests: .. code:: bash - export DOMAIN='oas.example.net' + export DOMAIN='stackspin.example.net' export SSO_USERNAME='user1' export SSO_USER_PW='...' export TAIKO_TESTS='nextcloud' @@ -233,14 +233,14 @@ your cluster with the OAS CLI: .. code:: bash - $ python -m openappstack oas.example.org info + $ python -m stackspin stackspin.example.org info Look for these lines: .. code:: To use kubectl with this cluster, copy-paste this in your terminal: - export KUBECONFIG=/home/you/projects/openappstack/clusters/oas.example.org/kube_config_cluster.yml + export KUBECONFIG=/home/you/projects/stackspin/clusters/stackspin.example.org/kube_config_cluster.yml Copy the whole ``export`` line into your terminal. In *the same terminal window*, ``kubectl`` will connect to your cluster. @@ -251,13 +251,13 @@ HTTPS Certificates OAS uses `cert-manager <https://docs.cert-manager.io/en/latest/>`__ to automatically fetch `Let's Encrypt <https://letsencrypt.org/>`__ certificates for all deployed services. If you experience invalid SSL certificates, i.e. your -browser warns you when visiting Rocketchat (https://chat.oas.example.org), +browser warns you when visiting Rocketchat (https://chat.stackspin.example.org), a useful resource for troubleshooting is the official cert-manager `Troubleshooting Issuing ACME Certificates <https://cert-manager.io/docs/faq/acme/>`__ documentation. First, try this: In this example we fix a failed certificate request for -*https://chat.oas.example.org*. We will start by checking if ``cert-manager`` +*https://chat.stackspin.example.org*. We will start by checking if ``cert-manager`` is set up correctly. Is your cluster using the live ACME server? @@ -269,7 +269,7 @@ Is your cluster using the live ACME server? Should return ``server: https://acme-v02.api.letsencrypt.org/directory`` and not something with the word *staging* in it. -Are all cert-manager pods in the `oas` namespace in the `READY` state ? +Are all cert-manager pods in the `stackspin` namespace in the `READY` state ? .. code:: bash @@ -285,13 +285,13 @@ command includes example output of healthy certificates. $ kubectl get certificates -A NAMESPACE NAME READY SECRET AGE - oas hydra-public.tls True hydra-public.tls 14d - oas single-sign-on-userpanel.tls True single-sign-on-userpanel.tls 14d - oas-apps oas-nextcloud-files True oas-nextcloud-files 14d - oas-apps oas-nextcloud-office True oas-nextcloud-office 14d - oas grafana-tls True grafana-tls 13d - oas alertmanager-tls True alertmanager-tls 13d - oas prometheus-tls True prometheus-tls 13d + stackspin hydra-public.tls True hydra-public.tls 14d + stackspin single-sign-on-userpanel.tls True single-sign-on-userpanel.tls 14d + stackspin-apps stackspin-nextcloud-files True stackspin-nextcloud-files 14d + stackspin-apps stackspin-nextcloud-office True stackspin-nextcloud-office 14d + stackspin grafana-tls True grafana-tls 13d + stackspin alertmanager-tls True alertmanager-tls 13d + stackspin prometheus-tls True prometheus-tls 13d If there are problems, you can check for the specific ``certificaterequests``: @@ -302,7 +302,7 @@ If there are problems, you can check for the specific ``certificaterequests``: If you still need more information, you can dig into the logs of the ``cert-manager`` pod: - $ kubectl -n oas logs -l "app.kubernetes.io/name=cert-manager" + $ kubectl -n stackspin logs -l "app.kubernetes.io/name=cert-manager" You can `grep` for your cluster domain or for any specific subdomain to narrow down results. @@ -315,10 +315,10 @@ Query for failed certificates, -requests, challenges or orders: .. code:: bash $ kubectl get --all-namespaces certificate,certificaterequest,challenge,order | grep -iE '(false|pending)' - oas-apps certificate.cert-manager.io/oas-rocketchat False oas-rocketchat 15h - oas-apps certificaterequest.cert-manager.io/oas-rocketchat-2045852889 False 15h - oas-apps challenge.acme.cert-manager.io/oas-rocketchat-2045852889-1775447563-837515681 pending chat.oas.example.org 15h - oas-apps order.acme.cert-manager.io/oas-rocketchat-2045852889-1775447563 pending 15h + stackspin-apps certificate.cert-manager.io/stackspin-rocketchat False stackspin-rocketchat 15h + stackspin-apps certificaterequest.cert-manager.io/stackspin-rocketchat-2045852889 False 15h + stackspin-apps challenge.acme.cert-manager.io/stackspin-rocketchat-2045852889-1775447563-837515681 pending chat.stackspin.example.org 15h + stackspin-apps order.acme.cert-manager.io/stackspin-rocketchat-2045852889-1775447563 pending 15h We see that the Rocketchat certificate resources are in a bad state since 15h. @@ -326,28 +326,28 @@ Show certificate resource status message: .. code:: bash - $ kubectl -n oas-apps get certificate oas-rocketchat -o jsonpath="{.status.conditions[*]['message']}" - Waiting for CertificateRequest "oas-rocketchat-2045852889" to complete + $ kubectl -n stackspin-apps get certificate stackspin-rocketchat -o jsonpath="{.status.conditions[*]['message']}" + Waiting for CertificateRequest "stackspin-rocketchat-2045852889" to complete We see that the `certificate` is waiting for the `certificaterequest`, lets query its status message: .. code:: bash - $ kubectl -n oas-apps get certificaterequest oas-rocketchat-2045852889 -o jsonpath="{.status.conditions[*]['message']}" - Waiting on certificate issuance from order oas-apps/oas-rocketchat-2045852889-1775447563: "pending" + $ kubectl -n stackspin-apps get certificaterequest stackspin-rocketchat-2045852889 -o jsonpath="{.status.conditions[*]['message']}" + Waiting on certificate issuance from order stackspin-apps/stackspin-rocketchat-2045852889-1775447563: "pending" Show the related order resource and look at the status and events: .. code:: bash - $ kubectl -n oas-apps describe order oas-rocketchat-2045852889-1775447563 + $ kubectl -n stackspin-apps describe order stackspin-rocketchat-2045852889-1775447563 Show the failed challenge resource reason: .. code:: bash - $ kubectl -n oas-apps get challenge oas-rocketchat-2045852889-1775447563-837515681 -o jsonpath='{.status.reason}' + $ kubectl -n stackspin-apps get challenge stackspin-rocketchat-2045852889-1775447563-837515681 -o jsonpath='{.status.reason}' Waiting for http-01 challenge propagation: wrong status code '503', expected '200' In this example, deleting the challenge fixed the issue and a proper certificate @@ -355,7 +355,7 @@ could get fetched: .. code:: bash - $ kubectl -n oas-apps delete challenges.acme.cert-manager.io oas-rocketchat-2045852889-1775447563-837515681 + $ kubectl -n stackspin-apps delete challenges.acme.cert-manager.io stackspin-rocketchat-2045852889-1775447563-837515681 Application installation or upgrade failures -------------------------------------------- diff --git a/docs/usage.rst b/docs/usage.rst index a32cc6bb4..f7e234e5b 100644 --- a/docs/usage.rst +++ b/docs/usage.rst @@ -5,21 +5,21 @@ OAS User panel -------------- After all the applications are installed, the first thing to do is log into -`https://admin.oas.example.org <https://admin.oas.example.org>`__. +`https://admin.stackspin.example.org <https://admin.stackspin.example.org>`__. This is the "user panel" , a place where you can create, edit and delete users. These users can be used to log into the applications listed below. You can log in with the user "admin". The password can be found by running .. code:: bash - python3 -m openappstack oas.example.org secrets + python3 -m stackspin stackspin.example.org secrets Search for ``userbackend_admin_password``. After logging in, you will see an overview of all the installed applications your user has access to. For more information on how to create users and give them access to applications, take a look at the `user panel documentation -<https://docs.openappstack.net/projects/user-panel/en/latest>`_. +<https://docs.stackspin.net/projects/user-panel/en/latest>`_. .. note:: @@ -27,7 +27,7 @@ them access to applications, take a look at the `user panel documentation optional application in :ref:`additional_apps` of the installation procedure. For creating users follow the `user creation documentation -<https://docs.openappstack.net/projects/user-panel/en/latest/#creating-a-new-user>`_. +<https://docs.stackspin.net/projects/user-panel/en/latest/#creating-a-new-user>`_. *Note*: The email address is important because some applications need a valid email address for notification mails. diff --git a/flux2/README.md b/flux2/README.md index 6c7fd51a0..870e2a07c 100644 --- a/flux2/README.md +++ b/flux2/README.md @@ -23,7 +23,7 @@ flux2 │  │  └── monitoring.yaml # Applies `flux2/apps/monitoring` folder │  └── optional # Kustomizations that can be applied to add applications │    └── ... # 1 folder per app in `apps/` -├── core # Resources that need variables from `oas-cluster-variables` secret +├── core # Resources that need variables from `stackspin-cluster-variables` secret │  └── base │  ├── cluster-issuer # `cert-manager` is part of `infrastructure`, this only adds the cluster-issuer │  ├── metallb # Load balancer diff --git a/flux2/apps/monitoring/eventrouter-release.yaml b/flux2/apps/monitoring/eventrouter-release.yaml index cdea652a2..b18483d71 100644 --- a/flux2/apps/monitoring/eventrouter-release.yaml +++ b/flux2/apps/monitoring/eventrouter-release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: eventrouter - namespace: oas + namespace: stackspin spec: releaseName: eventrouter chart: @@ -20,12 +20,12 @@ spec: interval: 1h valuesFrom: - kind: ConfigMap - name: oas-eventrouter-values + name: stackspin-eventrouter-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-eventrouter-override + name: stackspin-eventrouter-override optional: true - kind: Secret - name: oas-eventrouter-override + name: stackspin-eventrouter-override optional: true diff --git a/flux2/apps/monitoring/eventrouter-values-configmap.yaml b/flux2/apps/monitoring/eventrouter-values-configmap.yaml index aa6f0bef8..65b6d6710 100644 --- a/flux2/apps/monitoring/eventrouter-values-configmap.yaml +++ b/flux2/apps/monitoring/eventrouter-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-eventrouter-values + name: stackspin-eventrouter-values data: values.yaml: | sink: stdout diff --git a/flux2/apps/monitoring/kube-prometheus-stack-release.yaml b/flux2/apps/monitoring/kube-prometheus-stack-release.yaml index a8c0c76c9..53021d1f1 100644 --- a/flux2/apps/monitoring/kube-prometheus-stack-release.yaml +++ b/flux2/apps/monitoring/kube-prometheus-stack-release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: kube-prometheus-stack - namespace: oas + namespace: stackspin spec: releaseName: kube-prometheus-stack chart: @@ -25,12 +25,12 @@ spec: crds: CreateReplace valuesFrom: - kind: ConfigMap - name: oas-kube-prometheus-stack-values + name: stackspin-kube-prometheus-stack-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-kube-prometheus-stack-override + name: stackspin-kube-prometheus-stack-override optional: true - kind: Secret - name: oas-kube-prometheus-stack-override + name: stackspin-kube-prometheus-stack-override optional: true diff --git a/flux2/apps/monitoring/kube-prometheus-stack-values-configmap.yaml b/flux2/apps/monitoring/kube-prometheus-stack-values-configmap.yaml index 1f4729181..3fdd5b71e 100644 --- a/flux2/apps/monitoring/kube-prometheus-stack-values-configmap.yaml +++ b/flux2/apps/monitoring/kube-prometheus-stack-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-kube-prometheus-stack-values + name: stackspin-kube-prometheus-stack-values data: values.yaml: | # https://github.com/prometheus-community/helm-charts/blob/main/charts/kube-prometheus-stack/values.yaml @@ -24,7 +24,7 @@ data: enabled: true annotations: nginx.ingress.kubernetes.io/auth-type: basic - nginx.ingress.kubernetes.io/auth-secret: oas-alertmanager-basic-auth + nginx.ingress.kubernetes.io/auth-secret: stackspin-alertmanager-basic-auth nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required' kubernetes.io/tls-acme: "true" pathType: ImplementationSpecific @@ -128,7 +128,7 @@ data: enabled: true annotations: nginx.ingress.kubernetes.io/auth-type: basic - nginx.ingress.kubernetes.io/auth-secret: oas-prometheus-basic-auth + nginx.ingress.kubernetes.io/auth-secret: stackspin-prometheus-basic-auth nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required' kubernetes.io/tls-acme: "true" pathType: ImplementationSpecific @@ -155,11 +155,11 @@ data: enabled: true client_id: grafana client_secret: "${grafana_oauth_client_secret}" - scopes: "openid profile email openappstack_roles" + scopes: "openid profile email stackspin_roles" auth_url: "https://sso.${domain}/oauth2/auth" token_url: "https://sso.${domain}/oauth2/token" api_url: "https://sso.${domain}/userinfo" - role_attribute_path: contains(openappstack_roles[*], 'admin') && 'Admin' || 'Editor' + role_attribute_path: contains(stackspin_roles[*], 'admin') && 'Admin' || 'Editor' ingress: enabled: true annotations: diff --git a/flux2/apps/monitoring/kustomization.yaml b/flux2/apps/monitoring/kustomization.yaml index 769a6eca2..1b30e22f8 100644 --- a/flux2/apps/monitoring/kustomization.yaml +++ b/flux2/apps/monitoring/kustomization.yaml @@ -1,7 +1,7 @@ --- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: oas +namespace: stackspin resources: - eventrouter-release.yaml - eventrouter-values-configmap.yaml diff --git a/flux2/apps/monitoring/loki-configmap.yaml b/flux2/apps/monitoring/loki-configmap.yaml index e28b3b1cc..53c7ce25e 100644 --- a/flux2/apps/monitoring/loki-configmap.yaml +++ b/flux2/apps/monitoring/loki-configmap.yaml @@ -7,7 +7,7 @@ metadata: grafana_datasource: "1" release: loki name: loki-datasource - namespace: oas + namespace: stackspin data: loki-stack-datasource.yaml: |- apiVersion: 1 diff --git a/flux2/apps/monitoring/loki-release.yaml b/flux2/apps/monitoring/loki-release.yaml index 8c7cf6fb6..e52ff5abe 100644 --- a/flux2/apps/monitoring/loki-release.yaml +++ b/flux2/apps/monitoring/loki-release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: loki - namespace: oas + namespace: stackspin spec: releaseName: loki chart: @@ -23,12 +23,12 @@ spec: retries: 2 valuesFrom: - kind: ConfigMap - name: oas-loki-values + name: stackspin-loki-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-loki-override + name: stackspin-loki-override optional: true - kind: Secret - name: oas-loki-override + name: stackspin-loki-override optional: true diff --git a/flux2/apps/monitoring/loki-values-configmap.yaml b/flux2/apps/monitoring/loki-values-configmap.yaml index c6d417e16..c794447b1 100644 --- a/flux2/apps/monitoring/loki-values-configmap.yaml +++ b/flux2/apps/monitoring/loki-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-loki-values + name: stackspin-loki-values data: values.yaml: | # https://github.com/grafana/helm-charts/blob/main/charts/loki/values.yaml diff --git a/flux2/apps/monitoring/promtail-release.yaml b/flux2/apps/monitoring/promtail-release.yaml index 14b13f890..b374c8170 100644 --- a/flux2/apps/monitoring/promtail-release.yaml +++ b/flux2/apps/monitoring/promtail-release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: promtail - namespace: oas + namespace: stackspin spec: releaseName: promtail chart: @@ -19,12 +19,12 @@ spec: interval: 1h valuesFrom: - kind: ConfigMap - name: oas-promtail-values + name: stackspin-promtail-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-promtail-override + name: stackspin-promtail-override optional: true - kind: Secret - name: oas-promtail-override + name: stackspin-promtail-override optional: true diff --git a/flux2/apps/monitoring/promtail-values-configmap.yaml b/flux2/apps/monitoring/promtail-values-configmap.yaml index 5b247c7f7..fa166e9a5 100644 --- a/flux2/apps/monitoring/promtail-values-configmap.yaml +++ b/flux2/apps/monitoring/promtail-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-promtail-values + name: stackspin-promtail-values data: values.yaml: | initContainer: @@ -42,4 +42,3 @@ data: event_name: event_source_host: event_source_component: - diff --git a/flux2/apps/nextcloud/kustomization.yaml b/flux2/apps/nextcloud/kustomization.yaml index bdd7b84a0..340146ce7 100644 --- a/flux2/apps/nextcloud/kustomization.yaml +++ b/flux2/apps/nextcloud/kustomization.yaml @@ -1,6 +1,6 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: oas-apps +namespace: stackspin-apps resources: - pvc.yaml - release.yaml diff --git a/flux2/apps/nextcloud/nextcloud-values-configmap.yaml b/flux2/apps/nextcloud/nextcloud-values-configmap.yaml index d0d9a7df4..68261576b 100644 --- a/flux2/apps/nextcloud/nextcloud-values-configmap.yaml +++ b/flux2/apps/nextcloud/nextcloud-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-nextcloud-values + name: stackspin-nextcloud-values data: values.yaml: | nextcloud: @@ -58,7 +58,7 @@ data: tls: - hosts: - "files.${domain}" - secretName: oas-nextcloud-files + secretName: stackspin-nextcloud-files # Use 2 GB of storage for NC storage (maybe make configurable later?) persistence: @@ -142,7 +142,7 @@ data: tls: - hosts: - "office.${domain}" - secretName: oas-nextcloud-office + secretName: stackspin-nextcloud-office jwtSecret: "${onlyoffice_jwt_secret}" persistence: @@ -203,6 +203,6 @@ data: tokenUrl: "https://sso.${domain}/oauth2/token" userInfoUrl: "https://sso.${domain}/userinfo" clientSecret: "${nextcloud_oauth_client_secret}" - groupsClaim: "openappstack_roles" + groupsClaim: "stackspin_roles" clientId: nextcloud title: OpenAppStack diff --git a/flux2/apps/nextcloud/release.yaml b/flux2/apps/nextcloud/release.yaml index 7a6da8343..85601730d 100644 --- a/flux2/apps/nextcloud/release.yaml +++ b/flux2/apps/nextcloud/release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: nextcloud - namespace: oas-apps + namespace: stackspin-apps spec: releaseName: nc chart: @@ -19,12 +19,12 @@ spec: timeout: 30m valuesFrom: - kind: ConfigMap - name: oas-nextcloud-values + name: stackspin-nextcloud-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-nextcloud-override + name: stackspin-nextcloud-override optional: true - kind: Secret - name: oas-nextcloud-override + name: stackspin-nextcloud-override optional: true diff --git a/flux2/apps/rocketchat/kustomization.yaml b/flux2/apps/rocketchat/kustomization.yaml index 835ce5fef..35879d42a 100644 --- a/flux2/apps/rocketchat/kustomization.yaml +++ b/flux2/apps/rocketchat/kustomization.yaml @@ -1,6 +1,6 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: oas-apps +namespace: stackspin-apps resources: - release.yaml - rocketchat-values-configmap.yaml diff --git a/flux2/apps/rocketchat/release.yaml b/flux2/apps/rocketchat/release.yaml index 864768e3b..c48f58164 100644 --- a/flux2/apps/rocketchat/release.yaml +++ b/flux2/apps/rocketchat/release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: rocketchat - namespace: oas-apps + namespace: stackspin-apps spec: releaseName: rocketchat chart: @@ -19,12 +19,12 @@ spec: timeout: 15m valuesFrom: - kind: ConfigMap - name: oas-rocketchat-values + name: stackspin-rocketchat-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-rocketchat-override + name: stackspin-rocketchat-override optional: true - kind: Secret - name: oas-rocketchat-override + name: stackspin-rocketchat-override optional: true diff --git a/flux2/apps/rocketchat/rocketchat-values-configmap.yaml b/flux2/apps/rocketchat/rocketchat-values-configmap.yaml index d5339c0f0..e22febfcc 100644 --- a/flux2/apps/rocketchat/rocketchat-values-configmap.yaml +++ b/flux2/apps/rocketchat/rocketchat-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-rocketchat-values + name: stackspin-rocketchat-values data: values.yaml: | # Hostname for Rocket.chat @@ -43,7 +43,7 @@ data: - name: Accounts_OAuth_Custom_Openappstack_authorize_path value: /oauth2/auth - name: Accounts_OAuth_Custom_Openappstack_scope - value: openid profile openappstack_roles email + value: openid profile stackspin_roles email - name: Accounts_OAuth_Custom_Openappstack_id value: rocketchat - name: Accounts_OAuth_Custom_Openappstack_secret @@ -61,7 +61,7 @@ data: - name: Accounts_OAuth_Custom_Openappstack_name_field value: preferred_username - name: Accounts_OAuth_Custom_Openappstack_roles_claim - value: openappstack_roles + value: stackspin_roles - name: Accounts_OAuth_Custom_Openappstack_merge_roles value: "true" - name: Accounts_OAuth_Custom_Openappstack_merge_users @@ -105,7 +105,7 @@ data: tls: - hosts: - "chat.${domain}" - secretName: oas-rocketchat + secretName: stackspin-rocketchat persistence: enabled: true diff --git a/flux2/apps/velero/release.yaml b/flux2/apps/velero/release.yaml index 32a2a6c42..86e46fc31 100644 --- a/flux2/apps/velero/release.yaml +++ b/flux2/apps/velero/release.yaml @@ -18,12 +18,12 @@ spec: interval: 1h valuesFrom: - kind: ConfigMap - name: oas-velero-values + name: stackspin-velero-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-velero-override + name: stackspin-velero-override optional: true - kind: Secret - name: oas-velero-override + name: stackspin-velero-override optional: true diff --git a/flux2/apps/velero/velero-values-configmap.yaml b/flux2/apps/velero/velero-values-configmap.yaml index a7b4637a2..4b459e318 100644 --- a/flux2/apps/velero/velero-values-configmap.yaml +++ b/flux2/apps/velero/velero-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-velero-values + name: stackspin-velero-values data: values.yaml: | # Init containers to add to the Velero deployment's pod spec. At least one @@ -113,4 +113,3 @@ data: # We include all namespaces. - '*' configMaps: {} - diff --git a/flux2/apps/wekan/kustomization.yaml b/flux2/apps/wekan/kustomization.yaml index 157fa6a24..0cebe4f02 100644 --- a/flux2/apps/wekan/kustomization.yaml +++ b/flux2/apps/wekan/kustomization.yaml @@ -1,7 +1,7 @@ --- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: oas-apps +namespace: stackspin-apps resources: - pvc.yaml - release.yaml diff --git a/flux2/apps/wekan/release.yaml b/flux2/apps/wekan/release.yaml index 89d9b32d4..a79a1cc21 100644 --- a/flux2/apps/wekan/release.yaml +++ b/flux2/apps/wekan/release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: wekan - namespace: oas-apps + namespace: stackspin-apps spec: releaseName: wekan chart: @@ -19,12 +19,12 @@ spec: timeout: 30m valuesFrom: - kind: ConfigMap - name: oas-wekan-values + name: stackspin-wekan-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-wekan-override + name: stackspin-wekan-override optional: true - kind: Secret - name: oas-wekan-override + name: stackspin-wekan-override optional: true diff --git a/flux2/apps/wekan/wekan-values-configmap.yaml b/flux2/apps/wekan/wekan-values-configmap.yaml index ee8630ad7..8a62a50bd 100644 --- a/flux2/apps/wekan/wekan-values-configmap.yaml +++ b/flux2/apps/wekan/wekan-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-wekan-values + name: stackspin-wekan-values data: values.yaml: | # https://github.com/wekan/wekan/blob/master/helm/wekan/values.yaml @@ -91,7 +91,7 @@ data: # substitution names, while mongodb requires hyphens/dashes in the # var names. See https://github.com/fluxcd/kustomize-controller/issues/395 # for more details. - # existingSecret: oas-wekan-variables + # existingSecret: stackspin-wekan-variables rootPassword: ${mongodb_root_password} password: ${mongodb_password} podAnnotations: diff --git a/flux2/apps/wordpress/kustomization.yaml b/flux2/apps/wordpress/kustomization.yaml index ff8190bff..5080ac0cd 100644 --- a/flux2/apps/wordpress/kustomization.yaml +++ b/flux2/apps/wordpress/kustomization.yaml @@ -1,7 +1,7 @@ --- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: oas-apps +namespace: stackspin-apps resources: - pvc.yaml - release.yaml diff --git a/flux2/apps/wordpress/release.yaml b/flux2/apps/wordpress/release.yaml index cc45d5713..0d2651e11 100644 --- a/flux2/apps/wordpress/release.yaml +++ b/flux2/apps/wordpress/release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: wordpress - namespace: oas-apps + namespace: stackspin-apps spec: releaseName: wordpress chart: @@ -19,12 +19,12 @@ spec: timeout: 30m valuesFrom: - kind: ConfigMap - name: oas-wordpress-values + name: stackspin-wordpress-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-wordpress-override + name: stackspin-wordpress-override optional: true - kind: Secret - name: oas-wordpress-override + name: stackspin-wordpress-override optional: true diff --git a/flux2/apps/wordpress/wordpress-values-configmap.yaml b/flux2/apps/wordpress/wordpress-values-configmap.yaml index 0e13fbaef..b911244fe 100644 --- a/flux2/apps/wordpress/wordpress-values-configmap.yaml +++ b/flux2/apps/wordpress/wordpress-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-wordpress-values + name: stackspin-wordpress-values data: values.yaml: | wordpress: @@ -31,14 +31,14 @@ data: endpoint_token: https://sso.${domain}/oauth2/token endpoint_end_session: "" # After our SSO supports it, we should set this as the logout URL - # https://open.greenhost.net/openappstack/single-sign-on/issues/28 + # https://open.greenhost.net/stackspin/single-sign-on/issues/28 # endpoint_end_session: https://sso.${domain}/oauth2/sessions/logout no_sslverify: "0" http_request_timeout: "15" enable_logging: "1" - scope: email profile openid openappstack_roles offline_access + scope: email profile openid stackspin_roles offline_access role_mapping_enabled: true - role_key: openappstack_roles + role_key: stackspin_roles smtp_settings: enabled: ${outgoing_mail_enabled} @@ -92,4 +92,4 @@ data: - hosts: - "www.${domain}" - "${domain}" - secretName: oas-wordpress + secretName: stackspin-wordpress diff --git a/flux2/cluster/base/core.yaml b/flux2/cluster/base/core.yaml index 7a12c2e19..c52b22b43 100644 --- a/flux2/cluster/base/core.yaml +++ b/flux2/cluster/base/core.yaml @@ -10,18 +10,18 @@ spec: interval: 1h sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/core prune: true validation: client postBuild: substituteFrom: - kind: Secret - name: oas-single-sign-on-variables + name: stackspin-single-sign-on-variables - kind: Secret - name: oas-oauth-variables + name: stackspin-oauth-variables - kind: Secret - name: oas-cluster-variables + name: stackspin-cluster-variables healthChecks: - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease @@ -30,20 +30,20 @@ spec: - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: nginx - namespace: oas + namespace: stackspin - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: single-sign-on - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: Deployment name: single-sign-on-userbackend - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: Deployment name: single-sign-on-hydra - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: Deployment name: single-sign-on-login - namespace: oas + namespace: stackspin diff --git a/flux2/cluster/base/infrastructure.yaml b/flux2/cluster/base/infrastructure.yaml index 51ba9edbe..bcd11891a 100644 --- a/flux2/cluster/base/infrastructure.yaml +++ b/flux2/cluster/base/infrastructure.yaml @@ -8,7 +8,7 @@ spec: interval: 1h sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/infrastructure prune: true validation: client diff --git a/flux2/cluster/optional/monitoring/monitoring-config.yaml b/flux2/cluster/optional/monitoring/monitoring-config.yaml index 483b7a297..9952710d3 100644 --- a/flux2/cluster/optional/monitoring/monitoring-config.yaml +++ b/flux2/cluster/optional/monitoring/monitoring-config.yaml @@ -10,7 +10,7 @@ spec: - name: monitoring sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/config/monitoring prune: true validation: client diff --git a/flux2/cluster/optional/monitoring/monitoring.yaml b/flux2/cluster/optional/monitoring/monitoring.yaml index 91a33049b..90e5f5b1e 100644 --- a/flux2/cluster/optional/monitoring/monitoring.yaml +++ b/flux2/cluster/optional/monitoring/monitoring.yaml @@ -11,7 +11,7 @@ spec: - name: infrastructure sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/apps/monitoring prune: true validation: client @@ -19,48 +19,48 @@ spec: - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: eventrouter - namespace: oas + namespace: stackspin - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: kube-prometheus-stack - namespace: oas + namespace: stackspin - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: loki - namespace: oas + namespace: stackspin - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: promtail - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: Deployment name: eventrouter - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: StatefulSet name: loki - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: DaemonSet name: promtail - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: StatefulSet name: prometheus-kube-prometheus-stack-prometheus - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: Deployment name: kube-prometheus-stack-kube-state-metrics - namespace: oas + namespace: stackspin - apiVersion: apps/v1 kind: Deployment name: kube-prometheus-stack-grafana - namespace: oas + namespace: stackspin postBuild: substituteFrom: - kind: Secret - name: oas-kube-prometheus-stack-variables + name: stackspin-kube-prometheus-stack-variables - kind: Secret - name: oas-oauth-variables + name: stackspin-oauth-variables - kind: Secret - name: oas-cluster-variables + name: stackspin-cluster-variables diff --git a/flux2/cluster/optional/nextcloud/nextcloud.yaml b/flux2/cluster/optional/nextcloud/nextcloud.yaml index 07fac76dd..a8dc35479 100644 --- a/flux2/cluster/optional/nextcloud/nextcloud.yaml +++ b/flux2/cluster/optional/nextcloud/nextcloud.yaml @@ -11,7 +11,7 @@ spec: - name: infrastructure sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/apps/nextcloud prune: true validation: client @@ -19,20 +19,20 @@ spec: - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: nextcloud - namespace: oas-apps + namespace: stackspin-apps - apiVersion: apps/v1 kind: Deployment name: nc-nextcloud - namespace: oas-apps + namespace: stackspin-apps - apiVersion: apps/v1 kind: Deployment name: nc-onlyoffice-documentserver - namespace: oas-apps + namespace: stackspin-apps postBuild: substituteFrom: - kind: Secret - name: oas-nextcloud-variables + name: stackspin-nextcloud-variables - kind: Secret - name: oas-oauth-variables + name: stackspin-oauth-variables - kind: Secret - name: oas-cluster-variables + name: stackspin-cluster-variables diff --git a/flux2/cluster/optional/rocketchat/rocketchat.yaml b/flux2/cluster/optional/rocketchat/rocketchat.yaml index 5b597db0a..8e2924f24 100644 --- a/flux2/cluster/optional/rocketchat/rocketchat.yaml +++ b/flux2/cluster/optional/rocketchat/rocketchat.yaml @@ -11,7 +11,7 @@ spec: - name: infrastructure sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/apps/rocketchat prune: true validation: client @@ -19,16 +19,16 @@ spec: - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: rocketchat - namespace: oas-apps + namespace: stackspin-apps - apiVersion: apps/v1 kind: Deployment name: rocketchat-rocketchat - namespace: oas-apps + namespace: stackspin-apps postBuild: substituteFrom: - kind: Secret - name: oas-rocketchat-variables + name: stackspin-rocketchat-variables - kind: Secret - name: oas-oauth-variables + name: stackspin-oauth-variables - kind: Secret - name: oas-cluster-variables + name: stackspin-cluster-variables diff --git a/flux2/cluster/optional/velero/velero.yaml b/flux2/cluster/optional/velero/velero.yaml index 2f6364db8..1893f524e 100644 --- a/flux2/cluster/optional/velero/velero.yaml +++ b/flux2/cluster/optional/velero/velero.yaml @@ -11,7 +11,7 @@ spec: - name: infrastructure sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/apps/velero prune: true validation: client @@ -23,4 +23,4 @@ spec: postBuild: substituteFrom: - kind: Secret - name: oas-cluster-variables + name: stackspin-cluster-variables diff --git a/flux2/cluster/optional/wekan/wekan.yaml b/flux2/cluster/optional/wekan/wekan.yaml index 92cdf331d..c231ba7f3 100644 --- a/flux2/cluster/optional/wekan/wekan.yaml +++ b/flux2/cluster/optional/wekan/wekan.yaml @@ -11,7 +11,7 @@ spec: - name: infrastructure sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/apps/wekan prune: true validation: client @@ -19,16 +19,16 @@ spec: - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: wekan - namespace: oas-apps + namespace: stackspin-apps - apiVersion: apps/v1 kind: Deployment name: wekan - namespace: oas-apps + namespace: stackspin-apps postBuild: substituteFrom: - kind: Secret - name: oas-wekan-variables + name: stackspin-wekan-variables - kind: Secret - name: oas-oauth-variables + name: stackspin-oauth-variables - kind: Secret - name: oas-cluster-variables + name: stackspin-cluster-variables diff --git a/flux2/cluster/optional/wordpress/wordpress.yaml b/flux2/cluster/optional/wordpress/wordpress.yaml index 9bb1cff0b..54510a83c 100644 --- a/flux2/cluster/optional/wordpress/wordpress.yaml +++ b/flux2/cluster/optional/wordpress/wordpress.yaml @@ -11,7 +11,7 @@ spec: - name: infrastructure sourceRef: kind: GitRepository - name: openappstack + name: stackspin path: ./flux2/apps/wordpress prune: true validation: client @@ -19,16 +19,16 @@ spec: - apiVersion: helm.toolkit.fluxcd.io/v1beta1 kind: HelmRelease name: wordpress - namespace: oas-apps + namespace: stackspin-apps - apiVersion: apps/v1 kind: StatefulSet name: wordpress - namespace: oas-apps + namespace: stackspin-apps postBuild: substituteFrom: - kind: Secret - name: oas-wordpress-variables + name: stackspin-wordpress-variables - kind: Secret - name: oas-oauth-variables + name: stackspin-oauth-variables - kind: Secret - name: oas-cluster-variables + name: stackspin-cluster-variables diff --git a/flux2/config/monitoring/flux-alerts-prometheusrule.yaml b/flux2/config/monitoring/flux-alerts-prometheusrule.yaml index fb16df35f..16d4b0d83 100644 --- a/flux2/config/monitoring/flux-alerts-prometheusrule.yaml +++ b/flux2/config/monitoring/flux-alerts-prometheusrule.yaml @@ -2,7 +2,7 @@ apiVersion: monitoring.coreos.com/v1 kind: PrometheusRule metadata: name: flux-prometheus.rules - namespace: oas + namespace: stackspin labels: app.kubernetes.io/managed-by: flux app.kubernetes.io/part-of: custom-flux-config diff --git a/flux2/config/monitoring/stackspin-alerts-prometheusrule.yaml b/flux2/config/monitoring/stackspin-alerts-prometheusrule.yaml index 5e476ff60..7f87f6100 100644 --- a/flux2/config/monitoring/stackspin-alerts-prometheusrule.yaml +++ b/flux2/config/monitoring/stackspin-alerts-prometheusrule.yaml @@ -1,14 +1,14 @@ apiVersion: monitoring.coreos.com/v1 kind: PrometheusRule metadata: - name: prometheus-custom-alerts-openappstack.rules - namespace: oas + name: prometheus-custom-alerts-stackspin.rules + namespace: stackspin labels: app.kubernetes.io/managed-by: flux app.kubernetes.io/part-of: custom-flux-config spec: groups: - - name: oas-general + - name: stackspin-general rules: - alert: service_down expr: up == 0 or probe_success == 0 @@ -20,7 +20,7 @@ spec: description: "{{ $labels.instance }} of job {{ $labels.job }} has been down\ \ for more than 5 minutes." - - name: oas-systemd + - name: stackspin-systemd rules: - alert: failed_systemd_units expr: node_systemd_unit_state{state="failed"} !=0 @@ -32,7 +32,7 @@ spec: description: "Warning: Systemd unit failed on {{ $labels.instance }} (job {{\ \ $labels.job }}) for more than 5 min." - - name: oas-maintenance + - name: stackspin-maintenance rules: - alert: apt_upgrades_pending expr: apt_upgrades_pending !=0 diff --git a/flux2/core/base/metallb/metallb-values-configmap.yaml b/flux2/core/base/metallb/metallb-values-configmap.yaml index 22db3b569..fca77e3e4 100644 --- a/flux2/core/base/metallb/metallb-values-configmap.yaml +++ b/flux2/core/base/metallb/metallb-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-metallb-values + name: stackspin-metallb-values data: values.yaml: | # https://artifacthub.io/packages/helm/bitnami/metallb#example-layer-2-configuration @@ -12,4 +12,3 @@ data: protocol: layer2 addresses: - "${ip_address}/32" - diff --git a/flux2/core/base/metallb/release.yaml b/flux2/core/base/metallb/release.yaml index 37f8dadc8..dd5827ae7 100644 --- a/flux2/core/base/metallb/release.yaml +++ b/flux2/core/base/metallb/release.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: metallb - namespace: oas + namespace: stackspin spec: releaseName: metallb chart: @@ -21,12 +21,12 @@ spec: timeout: 2m valuesFrom: - kind: ConfigMap - name: oas-metallb-values + name: stackspin-metallb-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-metallb-override + name: stackspin-metallb-override optional: true - kind: Secret - name: oas-metallb-override + name: stackspin-metallb-override optional: true diff --git a/flux2/core/base/nginx/kustomization.yaml b/flux2/core/base/nginx/kustomization.yaml index 5624efc1c..a9c9978bc 100644 --- a/flux2/core/base/nginx/kustomization.yaml +++ b/flux2/core/base/nginx/kustomization.yaml @@ -1,7 +1,7 @@ --- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: oas +namespace: stackspin resources: - release.yaml - nginx-values-configmap.yaml diff --git a/flux2/core/base/nginx/nginx-values-configmap.yaml b/flux2/core/base/nginx/nginx-values-configmap.yaml index 8aa377fef..aa6b99b72 100644 --- a/flux2/core/base/nginx/nginx-values-configmap.yaml +++ b/flux2/core/base/nginx/nginx-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-nginx-values + name: stackspin-nginx-values data: values.yaml: | # https://github.com/kubernetes/ingress-nginx/blob/main/charts/ingress-nginx/values.yaml diff --git a/flux2/core/base/nginx/release.yaml b/flux2/core/base/nginx/release.yaml index 40c851c00..466c13cf6 100644 --- a/flux2/core/base/nginx/release.yaml +++ b/flux2/core/base/nginx/release.yaml @@ -25,12 +25,12 @@ spec: namespace: kube-system valuesFrom: - kind: ConfigMap - name: oas-nginx-values + name: stackspin-nginx-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-nginx-override + name: stackspin-nginx-override optional: true - kind: Secret - name: oas-nginx-override + name: stackspin-nginx-override optional: true diff --git a/flux2/core/base/single-sign-on/kustomization.yaml b/flux2/core/base/single-sign-on/kustomization.yaml index fc3b4afe5..e659f8e9f 100644 --- a/flux2/core/base/single-sign-on/kustomization.yaml +++ b/flux2/core/base/single-sign-on/kustomization.yaml @@ -1,7 +1,7 @@ --- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: oas +namespace: stackspin resources: - pvc.yaml - release.yaml diff --git a/flux2/core/base/single-sign-on/release.yaml b/flux2/core/base/single-sign-on/release.yaml index 364ee3b1e..110530a04 100644 --- a/flux2/core/base/single-sign-on/release.yaml +++ b/flux2/core/base/single-sign-on/release.yaml @@ -21,11 +21,11 @@ spec: retries: 3 valuesFrom: - kind: ConfigMap - name: oas-single-sign-on-values + name: stackspin-single-sign-on-values # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-single-sign-on-override + name: stackspin-single-sign-on-override optional: true - kind: Secret - name: oas-single-sign-on-override + name: stackspin-single-sign-on-override optional: true diff --git a/flux2/core/base/single-sign-on/single-sign-on-values-configmap.yaml b/flux2/core/base/single-sign-on/single-sign-on-values-configmap.yaml index 689719a80..163c2b939 100644 --- a/flux2/core/base/single-sign-on/single-sign-on-values-configmap.yaml +++ b/flux2/core/base/single-sign-on/single-sign-on-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-single-sign-on-values + name: stackspin-single-sign-on-values data: values.yaml: | singleSignOnHost: &SSO_HOST "sso.${domain}" @@ -69,7 +69,7 @@ data: - clientName: *USER_PANEL clientSecret: "${userpanel_oauth_client_secret}" redirectUri: "https://admin.${domain}/callback" - scopes: "openid profile email openappstack_roles" + scopes: "openid profile email stackspin_roles" clientUri: "https://admin.${domain}" clientLogoUri: "https://admin.${domain}/favicon.ico" tokenEndpointAuthMethod: "client_secret_basic" @@ -79,8 +79,8 @@ data: - "implicit" - clientName: *NEXTCLOUD clientSecret: "${nextcloud_oauth_client_secret}" - redirectUri: "https://files.${domain}/apps/sociallogin/custom_oidc/oas" - scopes: "openid profile email openappstack_roles" + redirectUri: "https://files.${domain}/apps/sociallogin/custom_oidc/stackspin" + scopes: "openid profile email stackspin_roles" clientUri: "https://files.${domain}" clientLogoUri: "https://files.${domain}/core/img/favicon-touch.png" tokenEndpointAuthMethod: "client_secret_post" @@ -94,7 +94,7 @@ data: - clientName: *WORDPRESS clientSecret: "${wordpress_oauth_client_secret}" redirectUri: "https://www.${domain}/wp-admin/admin-ajax.php?action=openid-connect-authorize" - scopes: "openid profile email openappstack_roles offline_access" + scopes: "openid profile email stackspin_roles offline_access" clientUri: "https://www.${domain}" clientLogoUri: "https://www.${domain}/wp-admin/images/wordpress-logo.svg" tokenEndpointAuthMethod: "client_secret_post" @@ -108,8 +108,8 @@ data: - "implicit" - clientName: *ROCKETCHAT clientSecret: "${rocketchat_oauth_client_secret}" - redirectUri: "https://chat.${domain}/_oauth/openappstack" - scopes: "openid profile email openappstack_roles" + redirectUri: "https://chat.${domain}/_oauth/stackspin" + scopes: "openid profile email stackspin_roles" clientUri: "https://chat.${domain}" clientLogoUri: "https://chat.${domain}/images/logo/logo.svg" tokenEndpointAuthMethod: "client_secret_post" @@ -123,7 +123,7 @@ data: - clientName: *GRAFANA clientSecret: "${grafana_oauth_client_secret}" redirectUri: "https://grafana.${domain}/login/generic_oauth" - scopes: "openid profile email openappstack_roles" + scopes: "openid profile email stackspin_roles" clientUri: "https://grafana.${domain}" clientLogoUri: "https://grafana.${domain}/public/img/grafana_icon.svg" tokenEndpointAuthMethod: "client_secret_post" diff --git a/flux2/infrastructure/cert-manager/cert-manager-values-configmap.yaml b/flux2/infrastructure/cert-manager/cert-manager-values-configmap.yaml index 59a26bcc8..d825673bb 100644 --- a/flux2/infrastructure/cert-manager/cert-manager-values-configmap.yaml +++ b/flux2/infrastructure/cert-manager/cert-manager-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-cert-manager-values + name: stackspin-cert-manager-values data: values.yaml: | ingressShim: @@ -32,4 +32,3 @@ data: cpu: 200m memory: 80Mi installCRDs: true - diff --git a/flux2/infrastructure/cert-manager/release.yaml b/flux2/infrastructure/cert-manager/release.yaml index d8b014e60..5ec6c4734 100644 --- a/flux2/infrastructure/cert-manager/release.yaml +++ b/flux2/infrastructure/cert-manager/release.yaml @@ -21,12 +21,12 @@ spec: retries: 3 valuesFrom: - kind: ConfigMap - name: oas-cert-manager-values + name: stackspin-cert-manager-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-cert-manager-override + name: stackspin-cert-manager-override optional: true - kind: Secret - name: oas-cert-manager-override + name: stackspin-cert-manager-override optional: true diff --git a/flux2/infrastructure/local-path-provisioner/local-path-provisioner-values-configmap.yaml b/flux2/infrastructure/local-path-provisioner/local-path-provisioner-values-configmap.yaml index b80032123..630e4addd 100644 --- a/flux2/infrastructure/local-path-provisioner/local-path-provisioner-values-configmap.yaml +++ b/flux2/infrastructure/local-path-provisioner/local-path-provisioner-values-configmap.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-local-path-provisioner-values + name: stackspin-local-path-provisioner-values data: values.yaml: | nodePathMap: @@ -13,9 +13,9 @@ data: defaultClass: true # We temporarily use our own build in order to use local volumes instead of # hostPath, see https://github.com/rancher/local-path-provisioner/issues/85 - # and https://open.greenhost.net/openappstack/openappstack/-/issues/773 + # and https://open.greenhost.net/stackspin/stackspin/-/issues/773 image: - repository: "open.greenhost.net:4567/openappstack/local-path-provisioner/local-path-provisioner" + repository: "open.greenhost.net:4567/stackspin/local-path-provisioner/local-path-provisioner" # Make sure this tag is the same as the tag for the chart in the # local-path-provisioner GitRepository tag: "v0.0.20-gh1" diff --git a/flux2/infrastructure/local-path-provisioner/release.yaml b/flux2/infrastructure/local-path-provisioner/release.yaml index f25f1a723..cd3d2a7fe 100644 --- a/flux2/infrastructure/local-path-provisioner/release.yaml +++ b/flux2/infrastructure/local-path-provisioner/release.yaml @@ -18,12 +18,12 @@ spec: retries: 3 valuesFrom: - kind: ConfigMap - name: oas-local-path-provisioner-values + name: stackspin-local-path-provisioner-values optional: false # Allow overriding values by ConfigMap or Secret - kind: ConfigMap - name: oas-local-path-provisioner-override + name: stackspin-local-path-provisioner-override optional: true - kind: Secret - name: oas-local-path-provisioner-override + name: stackspin-local-path-provisioner-override optional: true diff --git a/flux2/infrastructure/namespaces/kustomization.yaml b/flux2/infrastructure/namespaces/kustomization.yaml index 1d9d771f6..b8a80d8bc 100644 --- a/flux2/infrastructure/namespaces/kustomization.yaml +++ b/flux2/infrastructure/namespaces/kustomization.yaml @@ -3,6 +3,6 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: - cert-manager.yaml - - oas.yaml - - oas-apps.yaml + - stackspin.yaml + - stackspin-apps.yaml - velero.yaml diff --git a/flux2/infrastructure/namespaces/oas-apps.yaml b/flux2/infrastructure/namespaces/oas-apps.yaml index 0ae83a7ac..815907317 100644 --- a/flux2/infrastructure/namespaces/oas-apps.yaml +++ b/flux2/infrastructure/namespaces/oas-apps.yaml @@ -1,4 +1,4 @@ apiVersion: v1 kind: Namespace metadata: - name: oas-apps \ No newline at end of file + name: stackspin-apps diff --git a/flux2/infrastructure/namespaces/oas.yaml b/flux2/infrastructure/namespaces/oas.yaml index a960e21ab..25ae8c579 100644 --- a/flux2/infrastructure/namespaces/oas.yaml +++ b/flux2/infrastructure/namespaces/oas.yaml @@ -1,4 +1,4 @@ apiVersion: v1 kind: Namespace metadata: - name: oas + name: stackspin diff --git a/flux2/infrastructure/sources/local-path-provisioner.yaml b/flux2/infrastructure/sources/local-path-provisioner.yaml index 130194473..2082907ba 100644 --- a/flux2/infrastructure/sources/local-path-provisioner.yaml +++ b/flux2/infrastructure/sources/local-path-provisioner.yaml @@ -11,7 +11,7 @@ spec: # # We need to use our own fork of the local-path-provisioner until # https://github.com/rancher/local-path-provisioner/issues/85 is resolved - url: https://open.greenhost.net/openappstack/local-path-provisioner + url: https://open.greenhost.net/stackspin/local-path-provisioner # The Git reference to checkout and monitor for changes # (defaults to master) # For all available options, see: diff --git a/flux2/infrastructure/sources/nextcloud.yaml b/flux2/infrastructure/sources/nextcloud.yaml index 14c47e43c..95c54e09f 100644 --- a/flux2/infrastructure/sources/nextcloud.yaml +++ b/flux2/infrastructure/sources/nextcloud.yaml @@ -8,7 +8,7 @@ spec: # The interval at which to check the upstream for updates interval: 1h # The repository URL, can be a HTTP/S or SSH address - url: https://open.greenhost.net/openappstack/nextcloud + url: https://open.greenhost.net/stackspin/nextcloud # The Git reference to checkout and monitor for changes # (defaults to master) # For all available options, see: diff --git a/flux2/infrastructure/sources/rocketchat-helm-chart.yaml b/flux2/infrastructure/sources/rocketchat-helm-chart.yaml index a4e0ea313..f717787f1 100644 --- a/flux2/infrastructure/sources/rocketchat-helm-chart.yaml +++ b/flux2/infrastructure/sources/rocketchat-helm-chart.yaml @@ -14,5 +14,5 @@ spec: # For all available options, see: # https://toolkit.fluxcd.io/components/source/api/#source.toolkit.fluxcd.io/v1beta1.GitRepositoryRef ref: - branch: openappstack + branch: stackspin tag: 3.1.0-gh2 diff --git a/flux2/infrastructure/sources/single-sign-on.yaml b/flux2/infrastructure/sources/single-sign-on.yaml index 0b51a45cc..bdedbdca4 100644 --- a/flux2/infrastructure/sources/single-sign-on.yaml +++ b/flux2/infrastructure/sources/single-sign-on.yaml @@ -8,7 +8,7 @@ spec: # The interval at which to check the upstream for updates interval: 1h # The repository URL, can be a HTTP/S or SSH address - url: https://open.greenhost.net/openappstack/single-sign-on + url: https://open.greenhost.net/stackspin/single-sign-on # The Git reference to checkout and monitor for changes # (defaults to master) # For all available options, see: diff --git a/flux2/infrastructure/sources/wordpress.yaml b/flux2/infrastructure/sources/wordpress.yaml index 750d828a3..f4273c1fa 100644 --- a/flux2/infrastructure/sources/wordpress.yaml +++ b/flux2/infrastructure/sources/wordpress.yaml @@ -8,7 +8,7 @@ spec: # The interval at which to check the upstream for updates interval: 1h # The repository URL, can be a HTTP/S or SSH address - url: https://open.greenhost.net/openappstack/wordpress-helm + url: https://open.greenhost.net/stackspin/wordpress-helm # The Git reference to checkout and monitor for changes # (defaults to master) # For all available options, see: diff --git a/install/.flux.env.example b/install/.flux.env.example index d67c951cc..c6524c880 100755 --- a/install/.flux.env.example +++ b/install/.flux.env.example @@ -31,7 +31,7 @@ outgoing_mail_smtp_port=587 # Let's Encrypt ACME server address, keep this for production clusters acme_server=https://acme-v02.api.letsencrypt.org/directory -# On development setups please use Letsencrypts staging API +# On development setups please use Letsencrypts staging API # - Note that single sign-on will not work, because it requires valid # certificates. # - Use `nextcloud-values-override.yml` for Nextcloud and ONLYOFFICE to work @@ -39,7 +39,7 @@ acme_server=https://acme-v02.api.letsencrypt.org/directory # acme_server=https://acme-staging-v02.api.letsencrypt.org/directory # Save backups to an S3 bucket. -backup_s3_bucket=oas.greenhost.net +backup_s3_bucket=stackspin.greenhost.net backup_s3_prefix=ci-prefix backup_s3_url=https://store.greenhost.net backup_s3_region=ceph diff --git a/install/generate_secrets.py b/install/generate_secrets.py index 95b3e6cba..bf6cf0e01 100644 --- a/install/generate_secrets.py +++ b/install/generate_secrets.py @@ -1,12 +1,12 @@ """ Generates Kubernetes secrets based on a provided app name. -If the `templates` directory contains a secret called `oas-{app}-variables`, it +If the `templates` directory contains a secret called `stackspin-{app}-variables`, it will check if that secret already exists in the cluster, and if not: generate -it. It does the same for an `oas-{app}-basic-auth` secret that will contain a +it. It does the same for an `stackspin-{app}-basic-auth` secret that will contain a password as well as a htpasswd encoded version of it. -See https://open.greenhost.net/openappstack/openappstack/-/issues/891 for the +See https://open.greenhost.net/stackspin/stackspin/-/issues/891 for the context why we use this script and not a helm chart to generate secrets. usage: python generate_secrets.py template_filename.j2 @@ -17,10 +17,10 @@ import os import secrets import string import sys -import yaml import jinja2 import jinja2_base64_filters # pylint: disable=unused-import +import yaml from kubernetes import client, config from kubernetes.client.exceptions import ApiException from kubernetes.utils import create_from_yaml @@ -50,7 +50,7 @@ def get_templates_dir(): def create_variables_secret(app_name, env): """Checks if a variables secret for app_name already exists, generates it if necessary""" variables_filename = \ - os.path.join(get_templates_dir(), f"oas-{app_name}-variables.yaml.jinja") + os.path.join(get_templates_dir(), f"stackspin-{app_name}-variables.yaml.jinja") if os.path.exists(variables_filename): # Check if k8s secret already exists, if not, generate it with open(variables_filename) as template_file: @@ -71,7 +71,7 @@ def create_variables_secret(app_name, env): def create_basic_auth_secret(app_name, env): """Checks if a basic auth secret for app_name already exists, generates it if necessary""" basic_auth_filename = \ - os.path.join(get_templates_dir(), f"oas-{app_name}-basic-auth.yaml.jinja") + os.path.join(get_templates_dir(), f"stackspin-{app_name}-basic-auth.yaml.jinja") if os.path.exists(basic_auth_filename): with open(basic_auth_filename) as template_file: lines = template_file.read() diff --git a/install/install-app.sh b/install/install-app.sh index b7b2000ec..8bcb58de2 100755 --- a/install/install-app.sh +++ b/install/install-app.sh @@ -16,7 +16,7 @@ python "$(dirname "$0")/generate_secrets.py" "$app" # an `add-$app` kustomization will be present on the cluster, as well as a # `$app` kustomization that adds the actual app flux create kustomization "add-${app}" \ - --source=GitRepository/openappstack \ + --source=GitRepository/stackspin \ --path="./flux2/cluster/optional/${app}" \ --prune=true \ --interval=1h diff --git a/install/install-openappstack.sh b/install/install-openappstack.sh index 55fc6f049..d151e0b09 100755 --- a/install/install-openappstack.sh +++ b/install/install-openappstack.sh @@ -25,11 +25,11 @@ kubectl patch deployment \ branch=${CI_COMMIT_REF_NAME:-} [ -z "$branch" ] && branch=$(git rev-parse --abbrev-ref HEAD) -echo "Tracking branch $branch for https://open.greenhost.net/openappstack/openappstack flux repo" +echo "Tracking branch $branch for https://open.greenhost.net/stackspin/stackspin flux repo" -# Create oas and oas-apps namespaces -kubectl get namespace oas 2>/dev/null || kubectl create namespace oas -kubectl get namespace oas-apps 2>/dev/null || kubectl create namespace oas-apps +# Create stackspin and stackspin-apps namespaces +kubectl get namespace stackspin 2>/dev/null || kubectl create namespace stackspin +kubectl get namespace stackspin-apps 2>/dev/null || kubectl create namespace stackspin-apps # Generate oauth and SSO secrets python "$(dirname "$0")/generate_secrets.py" single-sign-on @@ -40,13 +40,13 @@ python "$(dirname "$0")/generate_secrets.py" kube-prometheus-stack python "$(dirname "$0")/generate_secrets.py" prometheus python "$(dirname "$0")/generate_secrets.py" alertmanager -flux create source git openappstack \ - --url=https://open.greenhost.net/openappstack/openappstack \ +flux create source git stackspin \ + --url=https://open.greenhost.net/stackspin/stackspin \ --branch="$branch" \ --interval=1h -flux create kustomization openappstack \ - --source=GitRepository/openappstack \ +flux create kustomization stackspin \ + --source=GitRepository/stackspin \ --path="./flux2/cluster/base" \ --prune=true \ --interval=1h diff --git a/install/kustomization.yaml b/install/kustomization.yaml index 90e20008f..217b25dee 100644 --- a/install/kustomization.yaml +++ b/install/kustomization.yaml @@ -3,7 +3,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization namespace: flux-system secretGenerator: - - name: oas-cluster-variables + - name: stackspin-cluster-variables envs: - .flux.env generatorOptions: diff --git a/install/overrides/oas-nextcloud-override.yaml b/install/overrides/oas-nextcloud-override.yaml index 72c1313a5..0a33526ff 100644 --- a/install/overrides/oas-nextcloud-override.yaml +++ b/install/overrides/oas-nextcloud-override.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: - name: oas-nextcloud-override + name: stackspin-nextcloud-override data: values.yaml: | # By overriding these values, Nextcloud and ONLYOFFICE will work on ACME diff --git a/install/templates/oas-alertmanager-basic-auth.yaml.jinja b/install/templates/oas-alertmanager-basic-auth.yaml.jinja index fedb272ab..2490b0117 100644 --- a/install/templates/oas-alertmanager-basic-auth.yaml.jinja +++ b/install/templates/oas-alertmanager-basic-auth.yaml.jinja @@ -2,8 +2,8 @@ apiVersion: v1 kind: Secret metadata: - namespace: "oas" - name: "oas-alertmanager-basic-auth" + namespace: "stackspin" + name: "stackspin-alertmanager-basic-auth" data: pass: "{{ pass | b64encode }}" auth: "{{ htpasswd | b64encode }}" diff --git a/install/templates/oas-kube-prometheus-stack-variables.yaml.jinja b/install/templates/oas-kube-prometheus-stack-variables.yaml.jinja index 035baf54b..b3478ada3 100644 --- a/install/templates/oas-kube-prometheus-stack-variables.yaml.jinja +++ b/install/templates/oas-kube-prometheus-stack-variables.yaml.jinja @@ -2,6 +2,6 @@ apiVersion: v1 kind: Secret metadata: - name: oas-kube-prometheus-stack-variables + name: stackspin-kube-prometheus-stack-variables data: grafana_admin_password: "{{ 32 | generate_password | b64encode }}" diff --git a/install/templates/oas-nextcloud-variables.yaml.jinja b/install/templates/oas-nextcloud-variables.yaml.jinja index 6ef7809d8..59adddfcf 100644 --- a/install/templates/oas-nextcloud-variables.yaml.jinja +++ b/install/templates/oas-nextcloud-variables.yaml.jinja @@ -2,7 +2,7 @@ apiVersion: v1 kind: Secret metadata: - name: oas-nextcloud-variables + name: stackspin-nextcloud-variables data: nextcloud_password: "{{ 32 | generate_password | b64encode }}" nextcloud_mariadb_password: "{{ 32 | generate_password | b64encode }}" diff --git a/install/templates/oas-oauth-variables.yaml.jinja b/install/templates/oas-oauth-variables.yaml.jinja index befd2f774..0445e6d86 100644 --- a/install/templates/oas-oauth-variables.yaml.jinja +++ b/install/templates/oas-oauth-variables.yaml.jinja @@ -2,7 +2,7 @@ apiVersion: v1 kind: Secret metadata: - name: oas-oauth-variables + name: stackspin-oauth-variables data: grafana_oauth_client_secret: "{{ 32 | generate_password | b64encode }}" nextcloud_oauth_client_secret: "{{ 32 | generate_password | b64encode }}" diff --git a/install/templates/oas-prometheus-basic-auth.yaml.jinja b/install/templates/oas-prometheus-basic-auth.yaml.jinja index d4d2d3552..fef26c014 100644 --- a/install/templates/oas-prometheus-basic-auth.yaml.jinja +++ b/install/templates/oas-prometheus-basic-auth.yaml.jinja @@ -1,8 +1,8 @@ apiVersion: v1 kind: Secret metadata: - namespace: "oas" - name: "oas-prometheus-basic-auth" + namespace: "stackspin" + name: "stackspin-prometheus-basic-auth" data: # Readable version of the password for humans who want to log in pass: "{{ pass | b64encode }}" diff --git a/install/templates/oas-rocketchat-variables.yaml.jinja b/install/templates/oas-rocketchat-variables.yaml.jinja index 4bce7f291..7170de0b3 100644 --- a/install/templates/oas-rocketchat-variables.yaml.jinja +++ b/install/templates/oas-rocketchat-variables.yaml.jinja @@ -1,7 +1,7 @@ apiVersion: v1 kind: Secret metadata: - name: oas-rocketchat-variables + name: stackspin-rocketchat-variables data: mongodb_password: "{{ 32 | generate_password | b64encode }}" mongodb_root_password: "{{ 32 | generate_password | b64encode }}" diff --git a/install/templates/oas-single-sign-on-variables.yaml.jinja b/install/templates/oas-single-sign-on-variables.yaml.jinja index 7424dd4ed..1484b58aa 100644 --- a/install/templates/oas-single-sign-on-variables.yaml.jinja +++ b/install/templates/oas-single-sign-on-variables.yaml.jinja @@ -2,7 +2,7 @@ apiVersion: v1 kind: Secret metadata: - name: oas-single-sign-on-variables + name: stackspin-single-sign-on-variables data: userbackend_admin_username: '{{ "admin" | b64encode }}' userbackend_admin_password: "{{ 32 | generate_password | b64encode }}" diff --git a/install/templates/oas-wekan-variables.yaml.jinja b/install/templates/oas-wekan-variables.yaml.jinja index f3cc5a366..b5bad3dc2 100644 --- a/install/templates/oas-wekan-variables.yaml.jinja +++ b/install/templates/oas-wekan-variables.yaml.jinja @@ -1,7 +1,7 @@ apiVersion: v1 kind: Secret metadata: - name: oas-wekan-variables + name: stackspin-wekan-variables data: mongodb_password: "{{ 32 | generate_password | b64encode }}" mongodb_root_password: "{{ 32 | generate_password | b64encode }}" diff --git a/install/templates/oas-wordpress-variables.yaml.jinja b/install/templates/oas-wordpress-variables.yaml.jinja index 18bf4339c..b491834d6 100644 --- a/install/templates/oas-wordpress-variables.yaml.jinja +++ b/install/templates/oas-wordpress-variables.yaml.jinja @@ -2,7 +2,7 @@ apiVersion: v1 kind: Secret metadata: - name: oas-wordpress-variables + name: stackspin-wordpress-variables data: wordpress_admin_password: "{{ 32 | generate_password | b64encode }}" wordpress_mariadb_password: "{{ 32 | generate_password | b64encode }}" diff --git a/openappstack/__init__.py b/openappstack/__init__.py index a85c322e6..4f37c251a 100644 --- a/openappstack/__init__.py +++ b/openappstack/__init__.py @@ -1 +1 @@ -name='openappstack' +name='stackspin' diff --git a/openappstack/__main__.py b/openappstack/__main__.py index e8b2d4ddf..c5c7d8796 100755 --- a/openappstack/__main__.py +++ b/openappstack/__main__.py @@ -20,12 +20,13 @@ Install requirements: import argparse import logging -from math import floor import os import sys -from subprocess import Popen, PIPE +from math import floor +from subprocess import PIPE, Popen + import greenhost_cloud -from openappstack import name, cluster, ansible +from stackspin import ansible, cluster, name # We're limiting to 50, because we use subdomains, the current longest of which # is 7 characters (`office.`). Max CN length is 63 characters, so we have some @@ -45,7 +46,7 @@ def main(): # pylint: disable=too-many-statements,too-many-branches,too-many-lo VPSs - test, responsible for testing if all the setup steps worked. - Run python3 -m openappstack --help for more information. + Run python3 -m stackspin --help for more information. """ # Parse command line arguments parser = argparse.ArgumentParser( @@ -53,13 +54,13 @@ def main(): # pylint: disable=too-many-statements,too-many-branches,too-many-lo description='Run installation script ' 'to deploy Openappstack to a given node. Note that you always need to ' 'provide a cluster name. For subcommand specific help, for example, ' - 'run "python3 -m openappstack your-cluster install --help"') + 'run "python3 -m stackspin your-cluster install --help"') parser.add_argument( 'cluster_name', metavar='CLUSTER_NAME', type=str, - help='Name of the cluster you want to use openappstack with') + help='Name of the cluster you want to use stackspin with') subparsers = parser.add_subparsers(help='Available subcommands') @@ -375,16 +376,16 @@ def test(clus, args): # SSO tests currently only work with valid letsencrypt production certs. # Therefor we disable SSO tests for now, until - # https://open.greenhost.net/openappstack/single-sign-on/-/issues/62 + # https://open.greenhost.net/stackspin/single-sign-on/-/issues/62 # is fixed. # # sso_username = clus.get_password_from_kubernetes( - # 'oas-single-sign-on-variables', + # 'stackspin-single-sign-on-variables', # 'userbackend_admin_username', # 'flux-system' # ) # sso_password = clus.get_password_from_kubernetes( - # 'oas-single-sign-on-variables', + # 'stackspin-single-sign-on-variables', # 'userbackend_admin_password', # 'flux-system' # ) @@ -393,7 +394,7 @@ def test(clus, args): if "nextcloud" in args.apps or args.apps=='all': nextcloud_password = clus.get_password_from_kubernetes( - 'oas-nextcloud-variables', + 'stackspin-nextcloud-variables', 'nextcloud_password', 'flux-system' ) @@ -401,7 +402,7 @@ def test(clus, args): if "rocketchat" in args.apps or args.apps=='all': rocketchat_password = clus.get_password_from_kubernetes( - 'oas-rocketchat-variables', + 'stackspin-rocketchat-variables', 'rocketchat_admin_password', 'flux-system' ) @@ -409,7 +410,7 @@ def test(clus, args): if "wordpress" in args.apps or args.apps=='all': wordpress_password = clus.get_password_from_kubernetes( - 'oas-wordpress-variables', + 'stackspin-wordpress-variables', 'wordpress_admin_password', 'flux-system' ) @@ -417,7 +418,7 @@ def test(clus, args): if "grafana" in args.apps or args.apps=='all': grafana_password = clus.get_password_from_kubernetes( - 'oas-kube-prometheus-stack-variables', + 'stackspin-kube-prometheus-stack-variables', 'grafana_admin_password', 'flux-system' ) @@ -493,5 +494,5 @@ def init_logging(logger, loglevel): if __name__ == '__main__': # Setup logging for this script - log = logging.getLogger('openappstack') # pylint: disable=invalid-name + log = logging.getLogger('stackspin') # pylint: disable=invalid-name main() diff --git a/openappstack/ansible.py b/openappstack/ansible.py index 1e02d60ad..5b11b3f17 100644 --- a/openappstack/ansible.py +++ b/openappstack/ansible.py @@ -4,6 +4,7 @@ Module responsible for running the Ansible part of the OpenAppStack setup. import logging import os import subprocess + import yaml log = logging.getLogger(__name__) # pylint: disable=invalid-name @@ -66,10 +67,10 @@ def create_inventory(cluster): inventory = yaml.safe_load(stream) # Rename the hostname in the inventory to one provided by the user. - if cluster.hostname != 'oas-dev': + if cluster.hostname != 'stackspin-dev': inventory['all']['hosts'][cluster.hostname] = \ - inventory['all']['hosts']['oas-dev'] - del inventory['all']['hosts']['oas-dev'] + inventory['all']['hosts']['stackspin-dev'] + del inventory['all']['hosts']['stackspin-dev'] inventory['all']['hosts'][cluster.hostname]['ansible_host'] = \ cluster.ip_address diff --git a/openappstack/cluster.py b/openappstack/cluster.py index 960914624..a12346ac8 100644 --- a/openappstack/cluster.py +++ b/openappstack/cluster.py @@ -8,8 +8,7 @@ import sys import greenhost_cloud import yaml from kubernetes import client, config - -from openappstack import ansible +from stackspin import ansible CLUSTER_PATH = 'clusters' @@ -200,31 +199,31 @@ KUBECONFIG={cluster_dir}/kube_config_cluster.yml """ all_secrets = { 'flux-system': { - 'oas-kube-prometheus-stack-variables': ['grafana_admin_password'], - 'oas-nextcloud-variables': [ + 'stackspin-kube-prometheus-stack-variables': ['grafana_admin_password'], + 'stackspin-nextcloud-variables': [ 'nextcloud_mariadb_password', 'nextcloud_mariadb_root_password', 'nextcloud_password', 'onlyoffice_jwt_secret', 'onlyoffice_postgresql_password', 'onlyoffice_rabbitmq_password'], - 'oas-rocketchat-variables': [ + 'stackspin-rocketchat-variables': [ 'rocketchat_admin_password', 'mongodb_root_password', 'mongodb_password'], - 'oas-single-sign-on-variables': [ + 'stackspin-single-sign-on-variables': [ 'userbackend_admin_username', 'userbackend_admin_password', 'userbackend_postgres_password', 'hydra_system_secret'], - 'oas-wordpress-variables': [ + 'stackspin-wordpress-variables': [ 'wordpress_admin_password', 'wordpress_mariadb_password', 'wordpress_mariadb_root_password'] }, - 'oas': { - 'oas-alertmanager-basic-auth': ['pass'], - 'oas-prometheus-basic-auth': ['pass'] + 'stackspin': { + 'stackspin-alertmanager-basic-auth': ['pass'], + 'stackspin-prometheus-basic-auth': ['pass'] } } diff --git a/test/pytest/test_prometheus.py b/test/pytest/test_prometheus.py index a4f6a5fda..7e90f0d87 100755 --- a/test/pytest/test_prometheus.py +++ b/test/pytest/test_prometheus.py @@ -24,7 +24,7 @@ def ignore_alert(alert): if re.search(r"(KubeAPIDown|KubeletDown|NodeFilesystemSpaceFillingUp|NodeClockNotSynchronising)", alert["labels"]["alertname"]): return True - # Ignore nextcloud cron jobs (https://open.greenhost.net/openappstack/openappstack/-/issues/984) + # Ignore nextcloud cron jobs (https://open.greenhost.net/stackspin/stackspin/-/issues/984) if re.search(r"nc-nextcloud-cron", alert["annotations"]["description"]): return True diff --git a/test/taiko/apps.js b/test/taiko/apps.js index 5cbbb587e..7d55c5308 100644 --- a/test/taiko/apps.js +++ b/test/taiko/apps.js @@ -76,7 +76,7 @@ const assert = require('assert'); // Open document and type some text await click('Files') // Force page reload because of random empty pages for files app - // https://open.greenhost.net/openappstack/nextcloud/-/issues/973 + // https://open.greenhost.net/stackspin/nextcloud/-/issues/973 await reload() await waitFor(async () => (await link({class:'new'}).isVisible()), globalTimeout) diff --git a/test/taiko/single-sign-on.js b/test/taiko/single-sign-on.js index 8dc60bc76..93d533434 100644 --- a/test/taiko/single-sign-on.js +++ b/test/taiko/single-sign-on.js @@ -1,7 +1,7 @@ // Tests if logging into all apps works using SSO // Unfortunately we still can't run this test in CI because we haven't found // a way to use SSO with LE staging certs. -// See https://open.greenhost.net/openappstack/single-sign-on/-/issues/62 +// See https://open.greenhost.net/stackspin/single-sign-on/-/issues/62 const { openBrowser, goto, textBox, into, write, click, toRightOf, below, link, press, image, waitFor, closeBrowser, screenshot } = require('taiko'); const assert = require('assert'); @@ -55,7 +55,7 @@ const assert = require('assert'); // Navigate to rocketchat // Breaks because of 2fa challenge which is not recieved // by email - // https://open.greenhost.net/openappstack/openappstack/-/issues/819 + // https://open.greenhost.net/stackspin/stackspin/-/issues/819 // await click(link(below('rocketchat'))); // await click('Login via OpenAppStack'); // await click('Continue with ' + username) -- GitLab