diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4f107b738b85ac57da82e59876f568b89d0846b2..a17700eacbba6aff36049c6113084b9cc78819d8 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 01d612ac3071c41a4f63dc7d88ff258bc3a6b4a2..10e3e674bc0e70d1d8da8f6ddbcd824e7bee6787 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 1eeb4285dfa3e6da3e68b3ce7b095cf50d672d04..555403532233393465a0732d8c890e085621a82d 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 9ec51ace6d732861bdae3ece85c66620960a1163..ff674008ada37607786838da5a2f50aaa7791e2c 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 ec7b3df755eac697e2adca4494f7b3196420e9d5..21159e992b748d0dec885a10b30922468f37888f 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 f1c1f8ac97edd9dc66f6a8847cf5e7f689ac8099..03df28802216ebb482b418654b2be215d65cf248 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 3b75e62c902bee2734bd6b2281e7df70f160e0e2..3002d6ab52bb4d7d741300c62de4a06b675d7980 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 686bb6cca8937686cef46ab50f0646a3a87196ec..46a257bfcadc570e324460767ff2a9c2ee8258cd 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 42f751a771eb218fbfec277be28def8516eadf16..db86e5fde91c685fc741bd792b006ed1d0b3ba41 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 49669d439711c3e848915b194994835bb52cac85..0000000000000000000000000000000000000000 --- 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 0000000000000000000000000000000000000000..e21517b9d85f14ccbb35f781d419afd2949b897e --- /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 efd5e0abaf8e80013009353ec66133c8862d8d57..c097ab7664a9c364969bb599292b582b1c2d9756 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 0b5e042271f74c087dd7f775118449aec20e678e..a3dbb67d5add79704392b67366a84cc22cd1f223 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 7ca34cbbfc303d8fb9c77ff207004cb103e174e3..ace06035acd34984febf3683ed06a98db198b827 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 ad94bc81193bd6a552c56914182da2cf9e2efc0a..b5d7a5c5095b8376bdd3de1ea6c31e2290a71a15 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 7d1aabd9a7891351f24b80d46c2a32a6b379bdb6..6150d733147eb56b92d06bf425a1d52ba0479b77 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 18191f3acfb1dbf15daa6545dd3c1d7186be6cc5..530f814febc9de0f61f16120eb8d7c16343ebebe 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 c5bb1520b6a126e31f171832028daca6b9594893..87a9463c15c005b0e975d2f987d4d0dbc96e2274 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 2da7953151155eafd4eb14f12e137d48542198a4..9513698911ce73af869761d22def493e63ec490a 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 b389c49a728fb4a10ccd0561614668039537b039..c47a682d4ea0bd24ce47fb41c6742ed76e13f409 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 8cb378693b30eb69424a1f9ac4a0f002fb20d679..c106029428a35622f44d32868e0f1f2b1859198d 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 309c7d1d109357fb14368826ffb893da6dbdd4c2..4d4f52114c3d46605b5eca5e571d6941492af087 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 e3646b69bd708be8ba26399701c82291d1d59079..25eee07860af05bc8d8c81e570b030bfdef70f3d 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 82e7742e9e56b15310fe3cb4d2df9fe3404b40c4..cc7118cdb749d21aaab9400ecb1a2f2f7866362c 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 22ef63c2da99c1579cc5490d91bc058a78c1734b..d0bffe2e05f14f29c60d7d08e607c8fb3a8cf798 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 d6a1c0d5af176dc3b54b1d924527a67f4bb30f51..971dc29793a9fef151b3e49ada5aa738a1f38794 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 099bfa76ad0e4009aa24648f188c285eb7f32ba0..29711b3fd49444e8c3aedf894ba5ad0991b65330 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 2328a3e4377ffc4a261b33bcb23975bb23749566..d26985e05a170824aebcd02c05e1da201bac75c9 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 650f482bc0486561a4000f895a806a168bef836e..f97fca786f222cc6294d63e28849bc3603ecd988 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 a32cc6bb4922734b3c8a19e1f8e110fa010c115c..f7e234e5b63f982e802f6a0fa1010e3fa22248ae 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 6c7fd51a0933999802c3b7ad46b0d796375a64a7..870e2a07ce337a0bbc30ab4b7aec051938b6704b 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 cdea652a23afe03590250356891aadbf9ece5568..b18483d7175e1c800e425448e3aa0bba7c95425a 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 aa6f0bef85c11ffd4081980b55fdcec647975f25..65b6d671012d99cb416362210edae62aad3d4d94 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 a8c0c76c9fe1950f08225de66f6defdd668a1ed9..53021d1f1a86dfeb41e8ffdb09664f82a9b52c74 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 1f4729181818e341650ab0ce637128fc6a70a263..3fdd5b71e5c1eaa499d4056b47b2a5b18f5626d3 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 769a6eca285070904208ea019ef18dd57e7b5f38..1b30e22f87d3dd1eec895cc42580c1f9e9d87519 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 e28b3b1cc549120114c30a92b7f5466dfe54774e..53c7ce25e47104775f69ed5ef0fb879302d5e747 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 8c7cf6fb66e884a3b39897ae81c5b74de7e1231f..e52ff5abea5b0a9eeaaf33a4021ffcc7564d4ba9 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 c6d417e16155284899b2a721916a2d9ae4ee7430..c794447b1712a2effd4a364450f4fb0af942ab24 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 14b13f890370f34c4146bdb5e099ea34548351f6..b374c81708687716d41fbbde9973d2d94013a3f0 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 5b247c7f735a7848de8efa7a36da6a4338cdfe10..fa166e9a5d03582769053d805eb801c0d0360088 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 bdd7b84a07a289aff0f0e90612a5ac35ca0fd250..340146ce7c862b8e99469257a160897e925a967a 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 d0d9a7df4069f86141e4926188221eb7a8eb852c..68261576ba795f2f609bae0d26b70cc5d0a67409 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 7a6da8343fa61d1bafd94a8ffb25437aad940f6f..85601730d3066a3a25532dae0fa7acd8d52d05c2 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 835ce5fef882f0aa6d74f2ca52346df2cd028acf..35879d42a58e97cd9024538a8e6582066e9d963f 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 864768e3b499729a8e1e466557a5f39ca35ee738..c48f58164547d5e6d9f69d129f82c7eb86e2c929 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 d5339c0f064a2e298cddc84e0ffd2d058ba1cf02..e22febfccdcdb4fb17f65543b1b59e84056f6d25 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 32a2a6c42ea016b659386beaa9be9bc6fdd9bd87..86e46fc31e97cf3cbdf8f9e861bf9f77b6d931e7 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 a7b4637a25592c5bc5a7a0d7c6e2a045bb69f199..4b459e318e668d01793e172a1c8a57a2470a57b8 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 157fa6a24d7d9c4730b33813d5abb979140718b8..0cebe4f023593cb83caf64c2b15048684ae2f0f7 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 89d9b32d403b5cbc203fb8fd14771aa77dd61e19..a79a1cc2199eef2c24bc25d2c91a21dbb8be2a2a 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 ee8630ad724203e82dfc700f3765ad0dcedbf922..8a62a50bd188c313d50abc89bf2b9334f645eecc 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 ff8190bffd2a34f7b68c0739447c44225e9ff0aa..5080ac0cd282652c3ce7b056cfba0fc199ca29d8 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 cc45d5713f5048dc167b3f750a1c18d01de209bf..0d2651e119104a03d4ffd12f62af0a876e36b311 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 0e13fbaef467fc6a01ed8429af3c9cd6afd31656..b911244fe1b340954e9b6f1b9e0bca9110ef73b4 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 7a12c2e19de36da067b958951bcab14a9f7ee9a9..c52b22b433d06d5d06d12cb9391e7e065c62cc92 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 51ba9edbe2a45c51ba8c8f4ead5d9b10615200b7..bcd11891ab4a5429d88ed2a55be40292665cdb95 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 483b7a2975e9577218f8cf9d973a4ed6da6d1d6f..9952710d37e5cd607262f12bb9cdecaea0fe3514 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 91a33049b03ca5ef1beeed9cb9310bb92dba0bc3..90e5f5b1e5724bbf6db5d694fe1a13492d326619 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 07fac76dd9473a0ce3c622cf6fb870c898422a01..a8dc35479dc16bcfd1a3e15814c8fe19ab084fd4 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 5b597db0af1bfa779e8c4d5a02dfac27ea39f4c5..8e2924f24acdcee9acdfd7c414ba384bb376d33a 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 2f6364db874369d316fdb29e4387b3db6e2903be..1893f524e7268f1edafbec6625ecccece721ca5a 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 92cdf331d8c7284139da05635c7226e500a3947a..c231ba7f3ed79763ef0349667f66ac96c0e5558c 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 9bb1cff0b31a25e59dfc69d7f61a3e3b10c19e12..54510a83cac42a7f9aa3698eb6c8b93a2158834e 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 fb16df35f72f4cdb5cf9faf00bb25fdd46dd7893..16d4b0d83c43d22ca897782eba907d326f4bcbd0 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 5e476ff60ad2b2084e360c5e37cd2df31b1f0411..7f87f61008c33dc432de5a95dcc5d09167c0c6dd 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 22db3b569100952fad120063c0c997aca470a298..fca77e3e4a8db955570c0e88cbd4cea242e26b1d 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 37f8dadc8518e84e65272926292af62fdde0d225..dd5827ae77c7e347478b8773b71c5e98df8ddeef 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 5624efc1cc23587798ec3f79c24072c1eab86f3e..a9c9978bc7e1570803181d5af04c58caff71e1c2 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 8aa377fefb1024cc613ed329aa4c4729dfd0f300..aa6b99b726f574933827a1064e79fba7a2e86e5f 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 40c851c00f2ffb4813b8d936a142c9f0d9f37d05..466c13cf603cc405b83321ba468eba64f9b4a4e7 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 fc3b4afe5a00adc3e0ef7d989fe019cd1f06078d..e659f8e9f752293cac7c8b204b4bafb4ab1b0617 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 364ee3b1e6036b66052931aa1bb26109ff39e3f9..110530a048758ecbd0de55cc91de808e4d5f6ce6 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 689719a80dbf36ea8b70460599d16f8f522efe11..163c2b939c05c5e5f3f6746d96b7e782aecc8543 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 59a26bcc886d944d5e2b6c34b1cc54ae437e96e2..d825673bbb8df59f586c2ea409f272c6bfe7a9b1 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 d8b014e6022eaf4c5b608a8c47b950e52e2f1802..5ec6c473432a4e342a691a14bed8f5976ced5c6d 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 b80032123979a25e9ddc9824ba5f28dce76a204f..630e4addd3dfcfc45853e54676544e13d013e788 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 f25f1a7231351517d9b3980bd5b6ea3392402b28..cd3d2a7fea591cf29e1479fe4af06f112f64f65b 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 1d9d771f62f28fbc8171153c3a1ba0ef805fe700..b8a80d8bca3137b4eac12119a90daf67fd71b5a8 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 0ae83a7ac35c8a5358888eada14ea201cb95ee3f..8159073174a2a8aba2cc7144f61607a34565fea7 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 a960e21ab6dd0fef2fbfbd100e76206b342da128..25ae8c579deb2a91cc9758b25d8db1f2b6ddeaf9 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 13019447341825edbb66b1da803f503b2fe3f456..2082907ba8a4fc773f379edbac036f5e0b55a972 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 14c47e43ce872768dfb6d261ec4481a8870429b2..95c54e09f79c3e6b458aec6b1b4721024377a5e3 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 a4e0ea3134e8f71d94c26ad246380e4890ee4e77..f717787f1372387cf55d0e5802aa66346099b632 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 0b51a45cc8affba6762995c97c00cfec51820523..bdedbdca419d62673e7e3696c5e81925df456d1d 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 750d828a326a4f4348318856245c44bf8cc78935..f4273c1fa544d0a468de28821083ae8f3efa39f6 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 d67c951cc8acccdcd3b53e2656ada58f5916f780..c6524c880d1b2111bd833e768727d607d8e5eaf8 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 95b3e6cba2e05fc35d68adeef1fc8e40eb5fb696..bf6cf0e013fa225ba6afb3c40e1690c64c8b33b9 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 b7b2000ec9f2ad73e162424415c1f91c30cb63f0..8bcb58de24f84584bf4b4c06df3dc24f3e6b2293 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 55fc6f049047d60ca01cdd1ca970fbd0a0c3dbe9..d151e0b09d6b4e505f08ed288e50a555791a6b3e 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 90e20008f7e82da75428c88dae93d51df1c66daa..217b25dee541ca435b99e7ee95ab422fd2e0d451 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 72c1313a5fa63a8cb3848df396c55efdd90204a9..0a33526ff1a947bdd9aa27ea7bb237d0d7414f5a 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 fedb272ab91f0794367040944c361f9bccd94690..2490b011783a7f630c2692807c594a6f55ddc900 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 035baf54b938c396a8012ca9e36625c26e73750c..b3478ada3cf1418bc5e0ee8a88abc3b9abab8fa5 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 6ef7809d889c53c9761eeb1b0c771301653b2cb0..59adddfcfb98bf4116bfec9a124c8f45e94ebc50 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 befd2f774e40402a86caf20ea51c7173342165f7..0445e6d868b76095602276f0a589f12079fe6ade 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 d4d2d35521890ed6a3f53951b8a77070a1b8d2f6..fef26c0141ef38717cac6f218d6c5ad2c8af42f3 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 4bce7f2911c2375e567b9a16333e89f7ff0c4453..7170de0b3e0f883b687e00d7882afa49ff2a7217 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 7424dd4ed4eb672b4030ff632b560f2b19852e80..1484b58aa9e6efc3fd70c0aaf2fd11efa1e5ac33 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 f3cc5a366cd1b39a18a41903a43f3cff7dee61e0..b5bad3dc2514f3f72d6ad30cf662ac794a6422a6 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 18bf4339ca9afa86d1583f9a6ab0716a578fa00d..b491834d6d0ea9bc7dda576b8846988c6af8f09f 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 a85c322e6af4271383833a7a63dc8bf43c760de4..4f37c251ad3d66dbb25b58e1933431207d429055 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 e8b2d4ddf728fed21900b9918f7f3237828be066..c5c7d8796620261ea280dac217f51ecd481b4cf5 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 1e02d60ad53bd1f2ef888572f21750caca5740ed..5b11b3f1746fe3ccd2b6bf2f38ff689b71c16411 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 960914624f08ee101e0644d4c98df07f4d96dce2..a12346ac89e042f6a102c8373bdd4aedfcf59081 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 a4f6a5fdab88e4483542d8bc9c3fef99455d93b4..7e90f0d874a3d1bc72c4b247b4064bcd8a9545db 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 5cbbb587e5a9a6d78f1e9e553e4f9211c7e8aeab..7d55c5308d6d3765f063c900cd560ec9e7c406a3 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 8dc60bc76ef3227ad95521fccb8f3fd345f4d283..93d533434f034f56bcc0877cba0275729ff229c6 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)