Skip to content

Conversation

@BacLuc
Copy link

@BacLuc BacLuc commented Oct 24, 2025

At Nunki we have some requests where people would like to deploy AppCat services to APPUiO.
Maybe these docs are well enough that they can do it by themselves.

Checklist

  • Try to isolate changes into separate PRs (to build a better changelog).
  • Categorize the PR by setting a good title and adding one of the labels:
    how-to, tutorial, reference, explanation, cicd, dependency
    as they show up in the changelog

    I cannot set a label.
  • Link this PR to related issues if applicable. No issue available.

Copy link
Member

@simu simu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall (I've noted it a couple times inline already): Please keep the documentation sources to one sentence per line. This makes reviewing and making review suggestions much easier (suggestions are easier to write & read with one sentence per line).

Also, IMO documenting AppFlow in the APPUiO end user docs doesn't make sense currently since an APPUiO user which created her account using a social login (GitHub) through the self-signup flow won't even have access to control.vshn.net.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure whether this is a good fit for the APPUiO end user docs (since APPUiO as a product encourages self-service via K8s API). Currently, users who signed up for APPUiO via social login / self sign-up don't even have access to control.vshn.net.

IMO this would make more sense somewhere in the VSHN AppFlow user documentation.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See other comment. For users with AppFlow it is way more convenient. Customers who don't have access to AppFlow see the feature and might want to buy it. We will keep the AppFlow docs here.


== Add the https://products.vshn.ch/appcat/index.html[VSHN Application Catalog] claim

To provision Nextcloud, we need a https://products.vshn.ch/appcat/nextcloud.html[VSHNNextcloud] claim. The documentation for VSHNNextcloud can be found here: https://docs.appcat.ch/vshn-managed/nextcloud/index.html[Nextcloud by VSHN].
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please keep the docs at one sentence per line. That makes reviewing (in particular when making suggestions or reviewing changes later on) much easier. Antora/Asciidoc will only insert paragraph breaks for empty lines.

Nicer formatting for the 2nd sentence might be:

Suggested change
To provision Nextcloud, we need a https://products.vshn.ch/appcat/nextcloud.html[VSHNNextcloud] claim. The documentation for VSHNNextcloud can be found here: https://docs.appcat.ch/vshn-managed/nextcloud/index.html[Nextcloud by VSHN].
To provision Nextcloud, we need a https://products.vshn.ch/appcat/nextcloud.html[VSHNNextcloud] claim.
The documentation for VSHNNextcloud can be found at https://docs.appcat.ch/vshn-managed/nextcloud/index.html[Nextcloud by VSHN].

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Comment on lines 50 to 51
If you are a VSHN customer, you can generate the pipeline to deploy Nextcloud in
xref:#appflow-helm[AppFlow].
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please keep the sources at one sentence per line.

Suggested change
If you are a VSHN customer, you can generate the pipeline to deploy Nextcloud in
xref:#appflow-helm[AppFlow].
If you are a VSHN customer, you can generate the pipeline to deploy Nextcloud in xref:#appflow-helm[AppFlow].

For the pipeline to work, you need to add a kubeconfig to your pipeline.
First, you need to make sure you have the `oc` utility. You can download it from
the https://console.cloudscale-lpg-2.appuio.cloud/command-line-tools[OpenShift console command line tools].
Then you can show the command to create your kubeconfig in the https://oauth-openshift.apps.cloudscale-lpg-2.appuio.cloud/oauth/token/display?code=sha256~xhC3o8qafyrrISMXZhKRt9uhIf-687n7LCHL6jpYl5k&state=[OpenShift console].
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is probably your token :) -- should be expired by now I assume.

You want the following link here: https://oauth-openshift.apps.cloudscale-lpg-2.appuio.cloud/oauth/token/request

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Uupsi, thank you.
The token is as get parameter in there and not determined via the authentication.
I rotated the token.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Replaced with web login

adapt it where needed.
For the pipeline to work, you need to add a kubeconfig to your pipeline.
First, you need to make sure you have the `oc` utility. You can download it from
the https://console.cloudscale-lpg-2.appuio.cloud/command-line-tools[OpenShift console command line tools].
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure it makes sense to link to a particular APPUiO zone here.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you have an APPUiO Account you have access to both clusters, not?
What would be your suggestion?

[source,shell]
----
KUBECONFIG=./config-for-pipeline
oc login ...
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why not just oc login --web --server https://api.<zone>.appuio.cloud:6443? That should pop up a login screen or immediately fetch a token via local browser integration.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just as info: Here is another way documented: https://portal.appuio.cloud/kubeconfig

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@BacLuc The linked docs are about connecting to the APPUiO control API (which is also just a kubernetes API). Not to an actual APPUiO cluster.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just as info: Here is another way documented: https://portal.appuio.cloud/kubeconfig

That has nothing to do with accessing a zone, that's for accessing the APPUiO Control API directly via kubectl instead of via portal.appuio.cloud

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Replaced with oc login --web


To keep track of what's deployed, we put this claim into our Git repository.
For that, you need to create a https://github.com/new[new Git repository] on GitHub.
Now, we store the claim from before under `helm/templates/nextcloud.yaml`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does https://docs.appcat.ch/references/argocd.html also apply if the claim is wrapped in a helm chart? Never tested that.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We let helm try to delete the resources in the deployments we did until now.
The helm uninstall fails in this case because of the deletion protection.
If you want to uninstall a helm chart with appcat claims you must disable the deletion protection before.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But then the app remains in an unsynced state? Because it tries to delete the claim but can't? It also sounds a bit dangerous having it hang in limbo the whole time.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If something in the UI changes this is outdated.
I would explain the necessary configuration options along with sensible default values.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Somewhat the same nitpick as with the other UI screenshot.
Although a good description would be preferred, in this case I would at least only select the relevant part of the page so it's better legible.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@@ -0,0 +1,14 @@
[#appflow-helm]
== Create application and environment with link:++https://www.vshn.ch/en/solutions/appflow/[Appflow]++[AppFlow]

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Until we found a sensible location for the AppFlow User documentation I guess it's acceptable to leave this here.

@BacLuc
Copy link
Author

BacLuc commented Oct 28, 2025

Overall (I've noted it a couple times inline already): Please keep the documentation sources to one sentence per line. This makes reviewing and making review suggestions much easier (suggestions are easier to write & read with one sentence per line).

Also, IMO documenting AppFlow in the APPUiO end user docs doesn't make sense currently since an APPUiO user which created her account using a social login (GitHub) through the self-signup flow won't even have access to control.vshn.net.

@martini-source and me decided that we will keep the small hint for AppFlow here.
We don't have a place for AppFlow docs yet, and here it's where its used now.
And this documentation is mostly for vshn customers who might only use appuio. And they have access to AppFlow.
But the documentation also works for APPUiO only customers, just not as good as for vshn customers.

@BacLuc BacLuc force-pushed the add-nextcloud-docs branch from c2296b2 to 3e63468 Compare October 28, 2025 14:12
@BacLuc BacLuc force-pushed the add-nextcloud-docs branch from 3e63468 to 1a884ad Compare October 28, 2025 14:24
@BacLuc
Copy link
Author

BacLuc commented Oct 29, 2025

@simu
If you want to reply now is the time.
Else i would merge and fix afterwards.

@BacLuc
Copy link
Author

BacLuc commented Oct 30, 2025

Sorry for all the trouble.
I integrated the docs into the README of the tutorial: https://github.com/vshn/appcat-demo-nextcloud-appuio-simple?tab=readme-ov-file#create-an-application-and-environment-with-AppFlow.

There was too much resistance against putting AppFlow into the APPUiO docs.

@BacLuc BacLuc closed this Oct 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants