Skip to content

Commit

Permalink
Merge branch 'main' into davlgd-feature-image-update
Browse files Browse the repository at this point in the history
  • Loading branch information
juliamrch authored Jan 22, 2025
2 parents 52efd2a + 546f469 commit fa110d9
Show file tree
Hide file tree
Showing 10 changed files with 50 additions and 11 deletions.
1 change: 1 addition & 0 deletions .github/styles/config/vocabularies/Doc/accept.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ Gemfile
Glassfish
Gradle
gradle
Grafana
healthcheck
Heptapod
Hextra
Expand Down
12 changes: 6 additions & 6 deletions content/doc/addons/jenkins.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ You can find out more about Jenkins on [their website](https://www.jenkins.io).

Jenkins on Clever Cloud will allow your team to effortlessly setup CI/CD pipelines, executed on runners that deploy on Clever Cloud docker applications. This way, you will only pay for the CI/CD you really consume, to the second. You will also be able to access Jenkins interface by using the Clever Cloud SSO (Single Sign-On) Authentication.

{{< image "/images/jenkins/full-dashboard.png" "Jenkins Dashboard" >}}
{{< image "/developers/images/jenkins/full-dashboard.png" "Jenkins Dashboard" >}}

## Create Jenkins add-on

Expand Down Expand Up @@ -92,7 +92,7 @@ Let's configure a runner template for Java Maven projects:
- Set the docker image your jobs will use. For example `jenkins/jnlp-agent-maven`. Be sure to read the [section about Docker image requiremetns](#docker-image-requirements).
- Select the virtual machine size you need. For Java projects, let's use a M instance that has 4 vCPUs and 8 GiB of RAM.

{{< image "/images/jenkins/cloud-configuration.png" "Jenkins Cloud configuration" >}}
{{< image "/developers/images/jenkins/cloud-configuration.png" "Jenkins Cloud configuration" >}}

Once you configured everything, click on `Save` at the end. You should now have a runner template ready for Java Maven projects.

Expand Down Expand Up @@ -153,12 +153,12 @@ sleep 60
Now that the job is configured, we can start it by clicking on the `Build now` button in the left menu. A message saying that the build has been scheduled should be printed.
You should also see after a few seconds a pending Job in the `Build history`, on your left.

{{< image "/images/jenkins/jobs-history.png" "Jenkins jobs history" >}}
{{< image "/developers/images/jenkins/jobs-history.png" "Jenkins jobs history" >}}

At the same time, a new application should have been created in your organization, named `Jenkins agent <UUID>`. The application should be deploying and once it gets deployed, the job
will start to be executed.

{{< image "/images/jenkins/runner-deploying.png" "Jenkins runner deploying" >}}
{{< image "/developers/images/jenkins/runner-deploying.png" "Jenkins runner deploying" >}}

At some point the application should have deployed and you should be able to click on the Job's number in the `build history` list. From there, you can open the `Console Output`
which is basically your job logs.
Expand Down Expand Up @@ -242,15 +242,15 @@ it will be displayed as a notification and as a message in the `Manage Jenkins`
The Clever Cloud Jenkins dashboard also has an item informing you about available Jenkins updates.
{{< image "/images/jenkins/update-available-cc-dashboard.png" "Jenkins update available" >}}
{{< image "/developers/images/jenkins/update-available-cc-dashboard.png" "Jenkins update available" >}}
After Jenkins or some plugins were updated, Jenkins will need to restart.
### Update Jenkins
To update Jenkins, you can go into the `Manage Jenkins` administration page. If an update is available, it should ask you if you want to install it with a message looking like this:
{{< image "/images/jenkins/update-available.png" "Jenkins update message" >}}
{{< image "/developers/images/jenkins/update-available.png" "Jenkins update message" >}}
You can then click on the `Or upgrade automatically` button. It should start downloading and installing the update. You can enable the option `Restart Jenkins when installation is complete and no jobs are running` and Jenkins will restart automatically. After a few minutes, it should be available again.
Expand Down
2 changes: 2 additions & 0 deletions content/doc/addons/mongodb/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@ The process consists in three steps:

Encryption at rest is available on MongoDB. You can have more information on the [dedicated page]({{< ref "doc/administrate/encryption-at-rest.md" >}})

{{% content/dbMigration %}}

## Can I use Mongo Ops Manager on Clever Cloud?

To be able to use [Mongo Ops Manager](https://www.mongodb.com/products/ops-manager), you'll need a valid MongoDB Enterprise Advanced subscription and to deploy a [Linux version of their manager solution](https://www.mongodb.com/try/download/ops-manager). If you haven't purchased any license from MongoDB and you are using the Community version, you might be looking for a similar service for your databases.
Expand Down
2 changes: 2 additions & 0 deletions content/doc/addons/mysql/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ If you want to import your **SQL** dump, you can use several methods:

If you need to import a very large dump, contact [Clever Cloud Support](https://console.clever-cloud.com/ticket-center-choice).

{{% content/dbMigration %}}

## Direct access

{{< callout type="warning">}}
Expand Down
2 changes: 2 additions & 0 deletions content/doc/addons/postgresql/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ Some applications require a non-empty database to run properly. If you want to i
2. Command line tool for PostgreSQL administration like `psql`
3. Any PostgreSQL client such as [pgAdmin](https://www.pgadmin.org/)

{{% content/dbMigration %}}

## Direct access

A proxy serves all dedicated PostgreSQL databases. In some cases, this can add some latency between applications and their database. If this is an issue, you can generate a direct hostname and port for the add-on to bypass the proxy, using the "Generate direct hostname and port" button in the add-on dashboard.
Expand Down
2 changes: 2 additions & 0 deletions content/doc/addons/redis.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ The version currently installed by the add-on are the following :

A backup is a `tar.gz` archive containing both the `.rdb` and `.aof` files. You can extract this archive and run `redis-server` in the extracted folder to access data.

{{% content/dbMigration %}}

## Leader / follower topology

By default, all redis add-ons are configured as leaders. You can set up a redis add-on as a follower from the add-on panel (in the "Add-on information" tab). You need to set the leader
Expand Down
1 change: 0 additions & 1 deletion content/doc/applications/docker/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,6 @@ CMD ["sudo","/root/start.sh"]
We provide a few examples of dockerized applications on Clever Cloud.

* [Elixir App](https://github.com/CleverCloud/demo-docker-elixir/blob/master/Dockerfile)
* [Haskell App](https://github.com/CleverCloud/demo-haskell)
* [Hack / HHVM App](https://github.com/CleverCloud/demo-hhvm)
* [Seaside / Smalltalk App](https://github.com/CleverCloud/demo-seaside)
* [Rust App](https://github.com/CleverCloud/demo-rust)
Expand Down
27 changes: 24 additions & 3 deletions content/doc/find-help/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ For most of Cloud providers, the use of the file system is not a good practice.
Follow the [File System buckets documentation page]({{< ref "doc/addons/fs-bucket" >}}) to set up an FS Bucket for your application.
{{% /details %}}

{{% details title="Troubleshooting empty repository git error" closed="true" %}}
{{% details title="Empty repository git error" closed="true" %}}

In some cases, git may display this type of error message:

Expand Down Expand Up @@ -67,7 +67,7 @@ git push clever production:master

{{% /details %}}

{{% details title="Troubleshooting 'Not a git repository' error" closed="true" %}}
{{% details title="'Not a git repository' error" closed="true" %}}

```text
fatal: Not a git repository (or any of the parent directories)
Expand All @@ -79,7 +79,7 @@ You can add all your files with `$ git add .`, then you need to commit the files
You will finally push your code with `$ git push clever master`.
{{% /details %}}

{{% details title="Troubleshooting 'fatal: 'clever' does not appear to be a git repository'" closed="true" %}}
{{% details title="'fatal: 'clever' does not appear to be a git repository'" closed="true" %}}

"clever" is a name used in our examples to represent the Clever Cloud servers.
In order to be able to use the same name for yourself, you will need to create a git remote named clever like this:
Expand Down Expand Up @@ -155,6 +155,27 @@ You have to pay all of your pending invoices to recover your data.

{{% /details %}}

## Network

{{% details title="Backend Timeout Limits" closed="true" %}}

Clever Cloud uses [Sōzu](https://www.sozu.io) as its load balancer and reverse proxy. Sōzu enforces a 180-second timeout for all backend operations to prevent resource exhaustion from hanging requests.

For operations that may exceed the 180-second limit, implement one of these approaches:

1. Use long polling to send periodic status checks from the client
2. Create an asynchronous worker system: move long-running tasks to a background [worker]({{< ref "doc/develop/workers/" >}} "workers")
3. [Purchase a custom load balancer from Clever Cloud](https://www.clever-cloud.com/fr/contact/) with different timeouts

##### Additional considerations:

- Design your application architecture to handle timeouts gracefully
- Break up long-running operations into smaller tasks

Use your embedded [Grafana]({{< ref "doc/metrics/">}} "Grafana on Clever Cloud") to monitor resource usage when implementing any of these solutions.

{{% /details %}}

## Others issues

{{% details title="Missing GitHub organization on the application creation page" closed="true" %}}
Expand Down
2 changes: 1 addition & 1 deletion content/doc/quickstart/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ git push <remote-name> <branch-name>:master
{{< tab >}}
Once you have created your application with GitHub, each push on the `master` branch trigger a deployment. To deploy an other branch than `master`, go to the `information` panel of your application and select the default branch to use.

{{< image "/images/github-deployment-branch.png" "Github deployment branch select" >}}
{{< image "/developers/images/doc/github-deployment-branch.png" "Github deployment branch select" >}}

If you don't find your repository in the list fetched from GitHub, a workaround is to unlink your account in your profile here : <https://console.clever-cloud.com/users/me/information>, remove **Clever Cloud API** from your GitHub [Authorized OAuth Apps](https://github.com/settings../applications) and link again your GitHub account to your Clever Cloud account.

Expand Down
10 changes: 10 additions & 0 deletions layouts/shortcodes/content/dbMigration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## Migrate your database

Clever Cloud provides an add-on Migration/Upgrade tool. You can access it from the [Console](https://console.clever-cloud.com), in the left menu when an add-on is selected. It allows to choose a higher plan, a new version or another deployment zone.

A migration process creates new instances, moves your data into it and stops the old ones if the process ended correctly. In case of a failure during migration, new instances are deleted and you go back to the original ones.
The duration may vary depending on how much data your add-on has. Your database becomes read only for the entire duration.

If you want to restart your add-on or update to the last supported version of the current branch, migrate it to the same plan, version, zone.

- [More Clever Cloud Tips and Tricks](/developers/doc/best-practices/tips_and_tricks/)

0 comments on commit fa110d9

Please sign in to comment.