Skip to content

Commit

Permalink
Merge branch 'main' into MTA-5533
Browse files Browse the repository at this point in the history
  • Loading branch information
SamyOubouaziz authored Feb 3, 2025
2 parents 800a405 + 4b93348 commit 1fb65f3
Show file tree
Hide file tree
Showing 82 changed files with 898 additions and 532 deletions.
56 changes: 42 additions & 14 deletions bin/check-review-dates.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@
import logging
from slack_sdk import WebClient
from datetime import timedelta, date, datetime
import json

DEFAULT_VAL_FREQ = 6
FILEPATH = "./" ## for local testing use "../" and shift filepath_list[] indexes +1

def convert_to_date_and_delta(val_date, val_freq):
"Converts validation date string to datetime and validation frequency string (months) to timedelta."
Expand All @@ -15,6 +17,26 @@ def convert_to_date_and_delta(val_date, val_freq):
# handles the case where validation format is incorrect
return None, None

def get_prod_cat_ref():
"Makes a dictionary where keys are product slugs and values are their category label and product label"

product_categories = {}

# Load the menu file
with open(FILEPATH + 'menu/navigation.json', 'r') as file:
data = json.load(file) # Parse the JSON content into a Python dictionary or list

for grouping in data:
for category in grouping["items"]:
category_label = category["label"]
for product in category["items"]:
product_label = product["label"]
product_slug = product["slug"]

product_categories[product_slug] = [category_label, product_label]

return(product_categories)

def needs_review(val_date, val_freq):
"Returns true if doc needs to be reviewed, based on val date and frequency"
val_date_conv, val_freq_conv = convert_to_date_and_delta(val_date, val_freq)
Expand Down Expand Up @@ -60,32 +82,38 @@ def process_files(directory):
docs_to_review.append(filepath)
return docs_to_review

def get_doc_cat_name(filepath):
"Returns a document-to-review's category and tidied-up filepath, based on its raw filepath."
def get_doc_cat_name(filepath, prod_cat_ref):
"Returns a document-to-review's category and tidied-up filepath, based on its raw filepath and the prod_cat_ref dict."
trimmed_filepath = filepath[2:-4]
filepath_list = trimmed_filepath.split("/")

if filepath_list[0] == "tutorials":
category = filepath_list[0]
category_product = "Tutorials"
elif filepath_list[0] == "faq":
category = filepath_list[1]
category_product = "FAQ"
else:
category = ' '.join(filepath_list[0:2])

return category, trimmed_filepath
# catches everything in pages
category = prod_cat_ref.get(filepath_list[1], ["Unknown", "Unknown"])[0]
product = prod_cat_ref.get(filepath_list[1], ["Unknown", "Unknown"])[1]
category_product = category + ": " + product

return category_product, trimmed_filepath

def organize_docs_by_category(docs_to_review):
"Organizes docs to review by category into a dictionary."
print("Organizing docs by category")
dict_by_cat = {}


# one shot: make a dict of all products and their categories, based on menu file
prod_cat_ref = get_prod_cat_ref()

for filepath in docs_to_review:
category, trimmed_filepath = get_doc_cat_name(filepath)
category_product, trimmed_filepath = get_doc_cat_name(filepath, prod_cat_ref)

if category not in dict_by_cat:
dict_by_cat[category] = [trimmed_filepath]
if category_product not in dict_by_cat:
dict_by_cat[category_product] = [trimmed_filepath]
else:
dict_by_cat[category].append(trimmed_filepath)
dict_by_cat[category_product].append(trimmed_filepath)

# sort the dictionary alphabetically by category
dict_by_cat_sorted = {key: value for key, value in sorted(dict_by_cat.items())}
Expand All @@ -98,7 +126,7 @@ def prep_message(docs_to_review_by_cat):
message = ":wave: Hi doc team, here are some docs to review: \n \n"

for key in docs_to_review_by_cat:
message += "*" + key.title() + "*" + "\n"
message += "*" + key + "*" + "\n"
for doc in docs_to_review_by_cat[key]:
message += doc + "\n"
message += "\n"
Expand All @@ -116,7 +144,7 @@ def send_message(message):
)

def main():
docs_to_review = process_files(".")
docs_to_review = process_files(FILEPATH)
docs_to_review_by_cat = organize_docs_by_category(docs_to_review)
message = prep_message(docs_to_review_by_cat)
if os.environ.get("DRY_RUN") != "true":
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ category: containers
product: kubernetes
---

The Scaleway Block Volume Container Storage Interface (CSI) driver **v0.2** will reach its end of support on **January 31, 2025**.
The Scaleway Block Volume Container Storage Interface (CSI) driver **v0.2** will reach its end of support on **February 28, 2025**.

To ensure continued compatibility, **we recommend upgrading to the latest version (v0.3)** as soon as possible.

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Periodic report duplication
status: fixed
author:
fullname: 'Join the #transactional-email channel on Slack.'
url: 'https://slack.scaleway.com'
date: 2025-01-29
category: managed-services
product: transactional-email
---

We have resolved an issue where some clients received multiple reports per Project. The periodic report is now being sent correctly, as expected.

Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
title: DKIM Enhancement - Stronger Signature
status: security
author:
fullname: 'Join the #transactional-email channel on Slack.'
url: 'https://slack.scaleway.com'
date: 2025-01-29
category: managed-services
product: transactional-email
---

We have enhanced the security of DKIM (DomainKeys Identified Mail) signatures by including additional headers. This improvement strengthens email authentication, reduces the risk of spoofing, and enhances deliverability across various email providers.
The following headers are now included in the DKIM signature:
The following headers are now included in the DKIM signature:
- List-ID
- List-Help
- List-Owner
- List-Post
- List-Subscribe
- List-Unsubscribe
- List-Unsubscribe-Post
- Message-ID

Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Environmental footprint calculator is now in Public Beta allowing you to track and understand the environmental impact of your cloud resources
status: added
author:
fullname: 'Join the #environmental-footprint channel on Slack.'
url: 'https://slack.scaleway.com'
date: 2025-01-30
category: environmental-footprint
product: environmental-footprint
---

The Environmental Footprint calculator is currently available for Elastic Metal offers. The calculator will progressively integrate all Scaleway products. Refer to the [Environmental Footprint documentation](/environmental-footprint/)  for more information.

Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ category: serverless
product: functions
---

The PHP Runtime for Serverless Functions now supports [more extensions](/serverless-functions/reference-content/functions-runtimes-configuration/).
The PHP Runtime for Serverless Functions now supports [more extensions](/serverless-functions/reference-content/functions-runtimes/).
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ product: functions
NodeJS 18 is now in general availability.


For more information please refer to our [dedicated documentation](/serverless-functions/reference-content/functions-lifecycle/).
For more information please refer to our [dedicated documentation](/serverless-functions/reference-content/functions-runtimes/).
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ product: functions

- Golang and Go113 will reach end of support. We recommend you update to go1.17 or a newer version.

For more information please refer to our [dedicated documentation](/serverless-functions/reference-content/functions-lifecycle/).
For more information please refer to our [dedicated documentation](/serverless-functions/reference-content/functions-runtimes/).
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ product: functions
- NodeJS 8 and NodeJS 10 will reach end of support. We recommend you update to Node 14 or a newer node version.
- NodeJS 17 will reach end of support. We recommend you update to NodeJS 18.

For more information please refer to our [dedicated documentation](/serverless-functions/reference-content/functions-lifecycle/).
For more information please refer to our [dedicated documentation](/serverless-functions/reference-content/functions-runtimes/).
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ product: functions
- Python and Python 2.7 will reach end of support. We recommend you update to a newer version of Python.
- Python 3 will reach end of support. We recommend you update to Python 3.7.

For more information please refer to our [dedicated documentation](/serverless-functions/reference-content/functions-lifecycle/).
For more information please refer to our [dedicated documentation](/serverless-functions/reference-content/functions-runtimes/).
4 changes: 2 additions & 2 deletions faq/account.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -61,13 +61,13 @@ If you do not have access to certain Organization resources, you might not have

Contact an Organization owner or a member with the necessary permissions to request rights to the resources you require access to.

# How can I report spam content that I received?
## How can I report spam content that I received?

You can report spam easily by installing the Signal Spam plugin, which is available for web browsers, email clients, and iOS devices. The plugin, represented by an owl-shaped button, allows you to flag unwanted emails or malicious URLs (such as phishing or scams) directly from your inbox.

When you report spam, your information is processed in real-time and shared with authorized entities that can take appropriate actions, such as identifying spammers, enforcing legal measures, and blacklisting harmful URLs. While Signal Spam does not filter emails or act as an antivirus, your reports help improve security measures and contribute to a safer online environment.

To get started, install the plugin or follow the official reporting path at [Signal Spam](https://www.signal-spam.fr/en/parcours-signalant/) for further support.
To get started, install the [plugin](https://www.signal-spam.fr/en/nos-modules/) (available for Firefox, Chrome, Safari, and Opera browers and Mac Mail, Outlook, and Thunderbird mail clients) or follow the official reporting path at [Signal Spam](https://www.signal-spam.fr/en/parcours-signalant/) for further support.


## I would like to delete my Scaleway account and data
Expand Down
2 changes: 1 addition & 1 deletion faq/databases-for-postgresql-and-mysql.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta:
content:
h1: Managed Database for PostgreSQL and MySQL
dates:
validation: 2024-01-29
validation: 2025-01-29
category: managed-databases
productIcon: PostgresqlMysqlProductIcon
---
Expand Down
6 changes: 6 additions & 0 deletions faq/serverless-containers.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,12 @@ Scaleway Serverless Containers does not currently support Scaleway VPC or Privat

To add network restrictions on your resource, refer to the [list of prefixes used at Scaleway](https://www.scaleway.com/en/peering/). Serverless resources do not have dedicated or predictable IP addresses.

### Can I connect to my container using SSH?

No, it is not possible to connect to Serverless Containers using SSH. Serverless Containers is a fully managed, and stateless compute environment that does not provide direct access to the underlying infrastructure due to several features, such as autoscaling.

For monitoring and debugging purposes, you can inspect your container, and interact with it using [Scaleway Cockpit](/serverless-containers/how-to/monitor-container/).

### How can I attach Block Storage to a Serverless Container?

Scaleway Serverless Containers do not currently support attaching Block Storage. These containers are designed to be
Expand Down
4 changes: 2 additions & 2 deletions faq/serverless-functions.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ Refer to our dedicated page about [Serverless Functions limitations and configur

Serverless Functions enables you to deploy functions using popular languages: `Go`, `Node`, `Python`, `PHP`, and `Rust`.

Refer to our dedicated page about [Serverless Functions Runtimes Lifecycle](/serverless-functions/reference-content/functions-lifecycle/)
Refer to our dedicated page about [Serverless Functions Runtimes Lifecycle](/serverless-functions/reference-content/functions-runtimes/)

### Why does my function have an instance running after deployment, even with min-scale 0?

Expand Down Expand Up @@ -210,7 +210,7 @@ Check out our [serverless-examples repository](https://github.com/scaleway/serve
### How to migrate runtimes?

There are no constraints when changing a function runtime, you simply need to choose the runtime version you want.
Upgrading a runtime is highly recommended in case of deprecation, and for runtimes that have reached end-of-support or end-of-life. See the [functions runtimes lifecycle documentation](/serverless-functions/reference-content/functions-lifecycle/) for more information.
Upgrading a runtime is highly recommended in case of deprecation, and for runtimes that have reached end-of-support or end-of-life. See the [functions runtimes lifecycle documentation](/serverless-functions/reference-content/functions-runtimes/) for more information.

## Network and storage

Expand Down
8 changes: 8 additions & 0 deletions faq/serverless-jobs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,14 @@ Scaleway Serverless Jobs does not currently support Scaleway VPC or Private Netw

To add network restrictions on your resource, consult the [list of prefixes used at Scaleway](https://www.scaleway.com/en/peering/). Serverless resources do not have dedicated or predictable IP addresses.

### Can I connect to my job using SSH?

No, it is not possible to connect to Serverless Jobs using SSH. Serverless Jobs is a fully managed, and stateless compute environment that does not provide direct access to the underlying infrastructure.

For monitoring and debugging purposes, you can inspect your job, and interact with it using [Scaleway Cockpit](/serverless-jobs/how-to/monitor-job/).

To inject specific commands into a job run, you can add a [startup command](/serverless-jobs/concepts/#startup-command) to a job.

### How can I store data in my Serverless resource?

Serverless resources are by default [stateless](/serverless-functions/concepts/#stateless), local storage is ephemeral.
Expand Down
2 changes: 1 addition & 1 deletion macros/serverless/difference-jobs-functions-containers.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ Choose Scaleway [Serverless Functions](/serverless-functions/quickstart/):
- For stateless workloads.

<Message type="note">
Serverless Functions can only be written in languages [available as runtimes](/serverless-functions/reference-content/functions-lifecycle/#available-runtimes).
Serverless Functions can only be written in languages [available as runtimes](/serverless-functions/reference-content/functions-runtimes/#available-runtimes).
</Message>

### Serverless Containers
Expand Down
20 changes: 14 additions & 6 deletions menu/navigation.json
Original file line number Diff line number Diff line change
Expand Up @@ -2282,6 +2282,18 @@
},
{
"items": [
{
"label": "Dealing with Database Instance unavailability",
"slug": "database-instance-unavailable"
},
{
"label": "Dealing with Database Instance connectivity issues",
"slug": "database-instance-connectivity-issues"
},
{
"label": "Dealing with Database Instance performance issues",
"slug": "database-instance-performance-issues"
},
{
"label": "Dealing with disk_full state in a Database Instance",
"slug": "disk-full"
Expand Down Expand Up @@ -3735,17 +3747,13 @@
{
"items": [
{
"label": "Functions lifecycle",
"slug": "functions-lifecycle"
"label": "Functions runtimes",
"slug": "functions-runtimes"
},
{
"label": "Functions limitations",
"slug": "functions-limitations"
},
{
"label": "Functions runtimes configuration",
"slug": "functions-runtimes-configuration"
},
{
"label": "Methods to deploy Serverless Functions",
"slug": "deploy-function"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ content:
paragraph: Learn how to access a Mac mini using remote desktop clients on macOS, Windows, and Linux.
tags: apple-silicon, connection, mac-mini, mac-mini
dates:
validation: 2024-07-22
validation: 2025-01-30
posted: 2021-05-26
categories:
- bare-metal
Expand Down
2 changes: 1 addition & 1 deletion pages/apple-silicon/how-to/connect-to-mac-mini-ssh.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ content:
paragraph: This page explains how to connect to a Scaleway Mac mini using SSH, providing step-by-step instructions and necessary requirements.
tags: apple-silicon, connection, mac-mini, mac-mini-m1
dates:
validation: 2024-07-22
validation: 2025-01-30
posted: 2021-05-26
categories:
- bare-metal
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ content:
paragraph: This page explains how to install the Homebrew package manager to a Scaleway Mac mini.
tags: apple-silicon, connection, mac-mini, mac-mini-m1
dates:
validation: 2024-07-22
validation: 2025-01-30
posted: 2021-05-26
categories:
- bare-metal
Expand Down
2 changes: 1 addition & 1 deletion pages/apple-silicon/how-to/shutdown-mac-mini.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ content:
paragraph: This guide provides instructions on how to properly shutdown a Scaleway Mac mini.
tags: mac-mini, mac-mini-m1, apple-silicon, shutdown
dates:
validation: 2024-07-22
validation: 2025-01-30
posted: 2021-05-26
categories:
- bare-metal
Expand Down
2 changes: 1 addition & 1 deletion pages/apple-silicon/how-to/update-os-mac-mini.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ content:
paragraph: This page explains how to update the operating system of a Scaleway Mac mini.
tags: apple-silicon, connection, mac-mini, mac-mini-m1
dates:
validation: 2024-07-22
validation: 2025-01-30
posted: 2021-05-26
categories:
- bare-metal
Expand Down
2 changes: 1 addition & 1 deletion pages/apple-silicon/how-to/upgrade-macos-to-beta.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ content:
paragraph: This page explains how to upgrade the macOS of a Scaleway Mac mini to a beta version.
tags: apple-silicon mac-mini beta macos
dates:
validation: 2024-07-30
validation: 2025-01-30
posted: 2024-07-30
categories:
- bare-metal
Expand Down
2 changes: 1 addition & 1 deletion pages/apple-silicon/quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ content:
paragraph: This page shows you how to get started with Scaleway's Apple silicon.
tags: apple-silicon mac-mini- mac mini mac-mini ios
dates:
validation: 2024-07-25
validation: 2025-01-30
posted: 2021-05-26
categories:
- bare-metal
Expand Down
2 changes: 1 addition & 1 deletion pages/dedibox-ip-failover/how-to/assign-failover-ip.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ content:
paragraph: This page explains how to assign a failover IP for Scaleway Dedibox servers.
tags: dedibox failover failover-ip
dates:
validation: 2024-07-22
validation: 2025-01-30
posted: 2021-07-29
categories:
- dedibox-network
Expand Down
Loading

0 comments on commit 1fb65f3

Please sign in to comment.