diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f675734..19d75d1d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## [Unreleased] +## [23.1.0] - 2023-01-23 + ### Changed - `operator-rs` `0.27.1` -> `0.31.0` ([#306], [#297], [#311]) diff --git a/Cargo.lock b/Cargo.lock index 32ff8cee..1ff99137 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1817,7 +1817,7 @@ dependencies = [ [[package]] name = "stackable-superset-crd" -version = "0.8.0-nightly" +version = "23.1.0" dependencies = [ "serde", "serde_json", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "stackable-superset-operator" -version = "0.8.0-nightly" +version = "23.1.0" dependencies = [ "anyhow", "built", diff --git a/deploy/helm/superset-operator/Chart.yaml b/deploy/helm/superset-operator/Chart.yaml index 4dae5a4d..25be08be 100644 --- a/deploy/helm/superset-operator/Chart.yaml +++ b/deploy/helm/superset-operator/Chart.yaml @@ -1,8 +1,8 @@ --- apiVersion: v2 name: superset-operator -version: "0.8.0-nightly" -appVersion: "0.8.0-nightly" +version: "23.1.0" +appVersion: "23.1.0" description: The Stackable Operator for Apache Superset home: https://github.com/stackabletech/superset-operator maintainers: diff --git a/docs/antora.yml b/docs/antora.yml index 65fe633d..40b88a7b 100644 --- a/docs/antora.yml +++ b/docs/antora.yml @@ -1,7 +1,3 @@ -name: superset -version: "nightly" -title: Stackable Operator for Apache Superset -nav: - - modules/getting_started/nav.adoc - - modules/ROOT/nav.adoc -prerelease: true +--- +name: home +version: "23.1" diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc deleted file mode 100644 index 57c8d3f6..00000000 --- a/docs/modules/ROOT/nav.adoc +++ /dev/null @@ -1,2 +0,0 @@ -* xref:configuration.adoc[] -* xref:usage.adoc[] diff --git a/docs/modules/getting_started/nav.adoc b/docs/modules/getting_started/nav.adoc deleted file mode 100644 index 4fdd6221..00000000 --- a/docs/modules/getting_started/nav.adoc +++ /dev/null @@ -1,3 +0,0 @@ -* xref:index.adoc[] -** xref:installation.adoc[] -** xref:first_steps.adoc[] \ No newline at end of file diff --git a/docs/modules/getting_started/pages/installation.adoc b/docs/modules/getting_started/pages/installation.adoc deleted file mode 100644 index 95cd8b7f..00000000 --- a/docs/modules/getting_started/pages/installation.adoc +++ /dev/null @@ -1,53 +0,0 @@ -= Installation - -On this page you will install the Stackable Superset Operator as well as the commons and secret Operator which are required by all Stackable Operators. - -== Stackable Operators - -There are 2 ways to run Stackable Operators - -1. Using xref:stackablectl::index.adoc[] - -1. Using Helm - -=== stackablectl - -stackablectl is the command line tool to interact with Stackable operators and our recommended way to install Operators. -Follow the xref:stackablectl::installation.adoc[installation steps] for your platform. - -After you have installed stackablectl run the following command to install all Operators necessary for Superset: - -[source,bash] ----- -include::example$code/getting_started.sh[tag=stackablectl-install-operators] ----- - -The tool will show - ----- -[INFO ] Installing commons operator -[INFO ] Installing secret operator -[INFO ] Installing superset operator ----- - -TIP: Consult the xref:stackablectl::quickstart.adoc[] to learn more about how to use stackablectl. For example, you can use the `-k` flag to create a Kubernetes cluster with link:https://kind.sigs.k8s.io/[kind]. - -=== Helm - -You can also use Helm to install the Operators. Add the Stackable Helm repository: -[source,bash] ----- -include::example$code/getting_started.sh[tag=helm-add-repo] ----- - -Then install the Stackable Operators: -[source,bash] ----- -include::example$code/getting_started.sh[tag=helm-install-operators] ----- - -Helm will deploy the Operators in a Kubernetes Deployment and apply the CRDs for the Superset service (as well as the CRDs for the required operators). You are now ready to deploy Superset in Kubernetes. - -== What's next - -xref:first_steps.adoc[Deploy a Superset instance and connect to it]. \ No newline at end of file diff --git a/docs/modules/getting_started/examples/code/getting_started.sh b/docs/modules/superset/examples/getting_started/getting_started.sh similarity index 84% rename from docs/modules/getting_started/examples/code/getting_started.sh rename to docs/modules/superset/examples/getting_started/getting_started.sh index ac7e178a..ed304c2d 100755 --- a/docs/modules/getting_started/examples/code/getting_started.sh +++ b/docs/modules/superset/examples/getting_started/getting_started.sh @@ -16,24 +16,24 @@ fi case "$1" in "helm") -echo "Adding 'stackable-dev' Helm Chart repository" +echo "Adding 'stackable-stable' Helm Chart repository" # tag::helm-add-repo[] -helm repo add stackable-dev https://repo.stackable.tech/repository/helm-dev/ +helm repo add stackable-stable https://repo.stackable.tech/repository/helm-stable/ # end::helm-add-repo[] echo "Installing Operators with Helm" # tag::helm-install-operators[] -helm install --wait commons-operator stackable-dev/commons-operator --version 0.5.0-nightly -helm install --wait secret-operator stackable-dev/secret-operator --version 0.7.0-nightly -helm install --wait superset-operator stackable-dev/superset-operator --version 0.8.0-nightly +helm install --wait commons-operator stackable-stable/commons-operator --version 23.1.0 +helm install --wait secret-operator stackable-stable/secret-operator --version 23.1.0 +helm install --wait superset-operator stackable-stable/superset-operator --version 23.1.0 # end::helm-install-operators[] ;; "stackablectl") echo "installing Operators with stackablectl" # tag::stackablectl-install-operators[] stackablectl operator install \ - commons=0.5.0-nightly \ - secret=0.7.0-nightly \ - superset=0.8.0-nightly + commons=23.1.0 \ + secret=23.1.0 \ + superset=23.1.0 # end::stackablectl-install-operators[] ;; *) diff --git a/docs/modules/getting_started/examples/code/getting_started.sh.j2 b/docs/modules/superset/examples/getting_started/getting_started.sh.j2 similarity index 100% rename from docs/modules/getting_started/examples/code/getting_started.sh.j2 rename to docs/modules/superset/examples/getting_started/getting_started.sh.j2 diff --git a/docs/modules/getting_started/examples/code/superset-credentials.yaml b/docs/modules/superset/examples/getting_started/superset-credentials.yaml similarity index 100% rename from docs/modules/getting_started/examples/code/superset-credentials.yaml rename to docs/modules/superset/examples/getting_started/superset-credentials.yaml diff --git a/docs/modules/getting_started/examples/code/superset.yaml b/docs/modules/superset/examples/getting_started/superset.yaml similarity index 92% rename from docs/modules/getting_started/examples/code/superset.yaml rename to docs/modules/superset/examples/getting_started/superset.yaml index f7ffa29a..a3cc78e9 100644 --- a/docs/modules/getting_started/examples/code/superset.yaml +++ b/docs/modules/superset/examples/getting_started/superset.yaml @@ -6,7 +6,7 @@ metadata: spec: image: productVersion: 1.5.1 - stackableVersion: 3.0.0 + stackableVersion: 23.1.0 credentialsSecret: simple-superset-credentials loadExamplesOnInit: true nodes: diff --git a/docs/modules/getting_started/images/superset-dashboard.png b/docs/modules/superset/images/getting_started/superset-dashboard.png similarity index 100% rename from docs/modules/getting_started/images/superset-dashboard.png rename to docs/modules/superset/images/getting_started/superset-dashboard.png diff --git a/docs/modules/ROOT/images/superset-databases.png b/docs/modules/superset/images/getting_started/superset-databases.png similarity index 100% rename from docs/modules/ROOT/images/superset-databases.png rename to docs/modules/superset/images/getting_started/superset-databases.png diff --git a/docs/modules/getting_started/images/superset-login.png b/docs/modules/superset/images/getting_started/superset-login.png similarity index 100% rename from docs/modules/getting_started/images/superset-login.png rename to docs/modules/superset/images/getting_started/superset-login.png diff --git a/docs/modules/getting_started/images/superset-databases.png b/docs/modules/superset/images/superset-databases.png similarity index 100% rename from docs/modules/getting_started/images/superset-databases.png rename to docs/modules/superset/images/superset-databases.png diff --git a/docs/modules/ROOT/pages/commandline_args.adoc b/docs/modules/superset/pages/commandline_args.adoc similarity index 100% rename from docs/modules/ROOT/pages/commandline_args.adoc rename to docs/modules/superset/pages/commandline_args.adoc diff --git a/docs/modules/ROOT/pages/configuration.adoc b/docs/modules/superset/pages/configuration.adoc similarity index 100% rename from docs/modules/ROOT/pages/configuration.adoc rename to docs/modules/superset/pages/configuration.adoc diff --git a/docs/modules/ROOT/pages/env_var_args.adoc b/docs/modules/superset/pages/env_var_args.adoc similarity index 100% rename from docs/modules/ROOT/pages/env_var_args.adoc rename to docs/modules/superset/pages/env_var_args.adoc diff --git a/docs/modules/getting_started/pages/first_steps.adoc b/docs/modules/superset/pages/getting_started/first_steps.adoc similarity index 74% rename from docs/modules/getting_started/pages/first_steps.adoc rename to docs/modules/superset/pages/getting_started/first_steps.adoc index 8386a943..93335300 100644 --- a/docs/modules/getting_started/pages/first_steps.adoc +++ b/docs/modules/superset/pages/getting_started/first_steps.adoc @@ -1,6 +1,6 @@ = First steps -Once you have followed the steps in xref:installation.adoc[] for the Operator and its dependencies, you will now go through the steps to set up and connect to a Superset instance. +Once you have followed the steps in xref:getting_started/installation.adoc[] for the Operator and its dependencies, you will now go through the steps to set up and connect to a Superset instance. == Database for the Superset metadata @@ -9,22 +9,22 @@ Superset metadata (slices, connections, tables, dashboards etc.) is stored in an For testing purposes, you can spin up a PostgreSQL database with the following commands: [source,bash] -include::example$code/getting_started.sh[tag=add-bitnami-repo] +include::example$getting_started/getting_started.sh[tag=add-bitnami-repo] [source,bash] -include::example$code/getting_started.sh[tag=install-bitnami-psql] +include::example$getting_started/getting_started.sh[tag=install-bitnami-psql] == Secret with Superset credentials A secret with the necessary credentials must be created: this contains database connection credentials as well as an admin account for Superset itself. Create a file called `superset-credentials.yaml`: [source,yaml] -include::example$code/superset-credentials.yaml[] +include::example$getting_started/superset-credentials.yaml[] And apply it: [source,bash] -include::example$code/getting_started.sh[tag=apply-superset-credentials] +include::example$getting_started/getting_started.sh[tag=apply-superset-credentials] The `connections.secretKey` will be used for securely signing the session cookies and can be used for any other security related needs by extensions. It should be a long random string of bytes. @@ -40,12 +40,12 @@ Please note that the admin user will be disabled if you use a non-default authen A Superset node must be created as a custom resource, create file called `superset.yaml`: [source,yaml] -include::example$code/superset.yaml[] +include::example$getting_started/superset.yaml[] And apply it: [source,bash] -include::example$code/getting_started.sh[tag=apply-superset-cluster] +include::example$getting_started/getting_started.sh[tag=apply-superset-cluster] `metadata.name` contains the name of the Superset cluster. @@ -80,7 +80,7 @@ A Kubernetes job is created which starts a pod to initialize the database. This You can use kubectl to wait on the resource: [source,bash] -include::example$code/getting_started.sh[tag=wait-supersetdb] +include::example$getting_started/getting_started.sh[tag=wait-supersetdb] == Using Superset @@ -90,20 +90,20 @@ browser. The Superset port which defaults to `8088` can be forwarded to the local host: [source,bash] -include::example$code/getting_started.sh[tag=port-forwarding] +include::example$getting_started/getting_started.sh[tag=port-forwarding] Then it can be opened in the browser with `http://localhost:8088`. Enter the admin credentials from the Kubernetes secret: -image::superset-login.png[Login screen of Superset] +image::getting_started/superset-login.png[Login screen of Superset] If the examples were loaded then some dashboards are already available: -image::superset-dashboard.png[Superset dashboard showing birth names] +image::getting_started/superset-dashboard.png[Superset dashboard showing birth names] Great! You have set up a Superset instance and connected to it! == What's next -Look at the xref:ROOT:usage.adoc[Usage page] to find out more about configuring your Superset instance or have a look at the Superset documentation to link:https://superset.apache.org/docs/creating-charts-dashboards/creating-your-first-dashboard[create your first dashboard]. +Look at the xref:usage.adoc[Usage page] to find out more about configuring your Superset instance or have a look at the Superset documentation to link:https://superset.apache.org/docs/creating-charts-dashboards/creating-your-first-dashboard[create your first dashboard]. diff --git a/docs/modules/getting_started/pages/index.adoc b/docs/modules/superset/pages/getting_started/index.adoc similarity index 78% rename from docs/modules/getting_started/pages/index.adoc rename to docs/modules/superset/pages/getting_started/index.adoc index ead0af3b..e90d3382 100644 --- a/docs/modules/getting_started/pages/index.adoc +++ b/docs/modules/superset/pages/getting_started/index.adoc @@ -19,5 +19,5 @@ Resource sizing depends on cluster type(s), usage and scope, but as a starting p The Guide is divided into two steps: -* xref:installation.adoc[Installing the Operators]. -* xref:first_steps.adoc[Setting up the Superset instance and connecting to it]. +* xref:getting_started/installation.adoc[Installing the Operators]. +* xref:getting_started/first_steps.adoc[Setting up the Superset instance and connecting to it]. diff --git a/docs/modules/superset/pages/getting_started/installation.adoc b/docs/modules/superset/pages/getting_started/installation.adoc new file mode 100644 index 00000000..c67ea7b4 --- /dev/null +++ b/docs/modules/superset/pages/getting_started/installation.adoc @@ -0,0 +1,55 @@ += Installation + +On this page you will install the Stackable Superset Operator as well as the commons and secret Operator which are +required by all Stackable Operators. + +== Stackable Operators + +There are 2 ways to run Stackable Operators + +. Using xref:management:stackablectl:index.adoc[] +. Using Helm + +=== stackablectl + +`stackablectl` is the command line tool to interact with Stackable operators and our recommended way to install +Operators. Follow the xref:management:stackablectl:installation.adoc[installation steps] for your platform. + +After you have installed `stackablectl`, run the following command to install all Operators necessary for Superset: + +[source,bash] +---- +include::example$getting_started/getting_started.sh[tag=stackablectl-install-operators] +---- + +The tool will show + +---- +[INFO ] Installing commons operator +[INFO ] Installing secret operator +[INFO ] Installing superset operator +---- + +TIP: Consult the xref:management:stackablectl:quickstart.adoc[] to learn more about how to use `stackablectl`. For +example, you can use the `--cluster kind` flag to create a Kubernetes cluster with link:https://kind.sigs.k8s.io/[kind]. + +=== Helm + +You can also use Helm to install the Operators. Add the Stackable Helm repository: +[source,bash] +---- +include::example$getting_started/getting_started.sh[tag=helm-add-repo] +---- + +Then install the Stackable Operators: +[source,bash] +---- +include::example$getting_started/getting_started.sh[tag=helm-install-operators] +---- + +Helm will deploy the Operators in a Kubernetes Deployment and apply the CRDs for the Superset service (as well as the +CRDs for the required operators). You are now ready to deploy Superset in Kubernetes. + +== What's next + +xref:getting_started/first_steps.adoc[Deploy a Superset instance and connect to it]. \ No newline at end of file diff --git a/docs/modules/ROOT/pages/index.adoc b/docs/modules/superset/pages/index.adoc similarity index 100% rename from docs/modules/ROOT/pages/index.adoc rename to docs/modules/superset/pages/index.adoc diff --git a/docs/modules/ROOT/pages/usage.adoc b/docs/modules/superset/pages/usage.adoc similarity index 89% rename from docs/modules/ROOT/pages/usage.adoc rename to docs/modules/superset/pages/usage.adoc index 79f14e6a..52882350 100644 --- a/docs/modules/ROOT/pages/usage.adoc +++ b/docs/modules/superset/pages/usage.adoc @@ -9,7 +9,7 @@ The default setting is to manually set up users via the Webinterface. === LDAP -Superset supports xref:nightly@home:concepts:authentication.adoc[authentication] of users against an LDAP server. This requires setting up an xref:nightly@home:concepts:authentication.adoc#authenticationclass[AuthenticationClass] for the LDAP server. +Superset supports xref:concepts:authentication.adoc[authentication] of users against an LDAP server. This requires setting up an xref:concepts:authentication.adoc#authenticationclass[AuthenticationClass] for the LDAP server. The AuthenticationClass is then referenced in the SupersetCluster resource as follows: [source,yaml] @@ -33,7 +33,7 @@ spec: Users that log in with LDAP are assigned to a default https://superset.apache.org/docs/security/#roles[Role] which is specified with the `userRegistrationRole` property. -You can follow the xref:nightly@home:tutorials:authentication_with_openldap.adoc[] tutorial to learn how to set up an AuthenticationClass for an LDAP server, as well as consulting the xref:nightly@home:reference:authenticationclass.adoc[] reference. +You can follow the xref:tutorials:authentication_with_openldap.adoc[] tutorial to learn how to set up an AuthenticationClass for an LDAP server, as well as consulting the xref:reference:authenticationclass.adoc[] reference. == Authorization Superset has a concept called `Roles` which allows you to grant user permissions based on roles. @@ -64,7 +64,7 @@ spec: == Connecting Apache Druid Clusters -The operator can automatically connect Superset to Apache Druid clusters managed by the https://docs.stackable.tech/druid/index.html[Stackable Druid Cluster]. +The operator can automatically connect Superset to Apache Druid clusters managed by the xref:druid:index.adoc[Stackable Druid Cluster]. To do so, create a `DruidConnection` resource: @@ -99,7 +99,7 @@ image::superset-databases.png[Superset databases showing the connected Druid clu == Monitoring The managed Superset instances are automatically configured to export Prometheus metrics. See -xref:home:operators:monitoring.adoc[] for more details. +xref:operators:monitoring.adoc[] for more details. == Configuration & Environment Overrides @@ -199,7 +199,7 @@ The Superset operator currently does not support using https://kubernetes.io/doc // The "nightly" version is needed because the "include" directive searches for // files in the "stable" version by default. // TODO: remove the "nightly" version after the next platform release (current: 22.09) -include::nightly@home:concepts:stackable_resource_requests.adoc[] +include::concepts:stackable_resource_requests.adoc[] If no resource requests are configured explicitly, the Superset operator uses the following defaults: diff --git a/docs/modules/superset/partials/nav.adoc b/docs/modules/superset/partials/nav.adoc new file mode 100644 index 00000000..cc98b8fa --- /dev/null +++ b/docs/modules/superset/partials/nav.adoc @@ -0,0 +1,5 @@ +* xref:superset:getting_started/index.adoc[] +** xref:superset:getting_started/installation.adoc[] +** xref:superset:getting_started/first_steps.adoc[] +* xref:superset:configuration.adoc[] +* xref:superset:usage.adoc[] diff --git a/docs/modules/ROOT/partials/supported-versions.adoc b/docs/modules/superset/partials/supported-versions.adoc similarity index 100% rename from docs/modules/ROOT/partials/supported-versions.adoc rename to docs/modules/superset/partials/supported-versions.adoc diff --git a/docs/templating_vars.yaml b/docs/templating_vars.yaml index d264e3bd..db069854 100644 --- a/docs/templating_vars.yaml +++ b/docs/templating_vars.yaml @@ -1,8 +1,8 @@ --- helm: - repo_name: stackable-dev - repo_url: https://repo.stackable.tech/repository/helm-dev/ + repo_name: stackable-stable + repo_url: https://repo.stackable.tech/repository/helm-stable/ versions: - commons: 0.5.0-nightly - secret: 0.7.0-nightly - superset: 0.8.0-nightly + commons: 23.1.0 + secret: 23.1.0 + superset: 23.1.0 diff --git a/rust/crd/Cargo.toml b/rust/crd/Cargo.toml index 74cd9865..bdd7b60e 100644 --- a/rust/crd/Cargo.toml +++ b/rust/crd/Cargo.toml @@ -5,7 +5,7 @@ edition = "2021" license = "OSL-3.0" name = "stackable-superset-crd" repository = "https://github.com/stackabletech/superset-operator" -version = "0.8.0-nightly" +version = "23.1.0" publish = false [dependencies] diff --git a/rust/operator-binary/Cargo.toml b/rust/operator-binary/Cargo.toml index e6c44c19..1e273b91 100644 --- a/rust/operator-binary/Cargo.toml +++ b/rust/operator-binary/Cargo.toml @@ -3,7 +3,7 @@ name = "stackable-superset-operator" authors = ["Stackable GmbH "] description = "Stackable Operator for Apache Superset" license = "OSL-3.0" -version = "0.8.0-nightly" +version = "23.1.0" edition = "2021" repository = "https://github.com/stackabletech/superset-operator" publish = false diff --git a/tests/test-definition.yaml b/tests/test-definition.yaml index 6f2517a0..938f8261 100644 --- a/tests/test-definition.yaml +++ b/tests/test-definition.yaml @@ -2,12 +2,12 @@ dimensions: - name: superset values: - - 1.3.2-stackable3.0.0 - - 1.4.1-stackable3.0.0 - - 1.5.1-stackable3.0.0 + - 1.3.2-stackable23.1.0 + - 1.4.1-stackable23.1.0 + - 1.5.1-stackable23.1.0 - name: superset-latest values: - - 1.5.1-stackable3.0.0 + - 1.5.1-stackable23.1.0 - name: ldap-authentication values: - no-tls