Skip to content

Commit e039446

Browse files
committed
merge main and finalise index
2 parents 90a75b2 + 771cce2 commit e039446

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+628
-196
lines changed

.github/CODEOWNERS

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
* @bcumming @msimberg @RMeli
22
docs/access/jupyterlab.md @rsarm
3-
docs/services/firecrest @jpdorsch @ekouts
3+
docs/services/firecrest.md @jpdorsch @ekouts @theely @iB0nes
4+
docs/services/devportal.md @jpdorsch @ekouts @theely @iB0nes
45
docs/services/kubernetes @eliaoggian
56
docs/software/communication @Madeeks @msimberg
67
docs/software/devtools/linaro @jgphpc

.github/actions/spelling/allow.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,8 @@ NICs
7676
NVMe
7777
Nordend
7878
OpenFabrics
79+
OAuth
80+
OIDC
7981
OSS
8082
OSSs
8183
OTP
@@ -293,6 +295,7 @@ subtables
293295
supercomputing
294296
superlu
295297
sysadmin
298+
simberg
296299
tarball
297300
tcl
298301
tcsh
@@ -354,3 +357,4 @@ jobscript
354357
Scalasca
355358
tracefile
356359
Vampir
360+
XAmz

.github/actions/spelling/patterns.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ Säntis
1414
ScaLAPACK
1515
VSCode
1616
aarch64
17+
WSO2
1718

1819
# markdown figure
1920
!\[.*\]\(.*\)
@@ -41,3 +42,6 @@ https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0
4142

4243
# img tag
4344
<img.*>
45+
46+
# @name (e.g. github handles)
47+
@[A-Za-z0-9-_]+

docs/services/firecrest.md renamed to docs/access/firecrest.md

Lines changed: 9 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33

44
FirecREST is a RESTful API for programmatically accessing High-Performance Computing resources, developed at CSCS.
55

6-
Users can make use of FirecREST to automate access to HPC, enabling [CI/CD pipelines](https://eth-cscs.github.io/firecrest-v2/use_cases/CI-pipeline/), [workflow managers](https://github.com/eth-cscs/firecrest/tree/master/examples/airflow-operators), and other tools against HPC resources.
6+
Users can make use of FirecREST to automate access to HPC, enabling [CI/CD pipelines](https://eth-cscs.github.io/firecrest-v2/use_cases/CI-pipeline/), [workflow orchestrators](https://eth-cscs.github.io/firecrest-v2/use_cases/workflow-orchestrator/), and other tools against HPC resources.
77

8-
Additionally, scientific platform developers can integrate FirecREST into [web-enabled portals](https://my.hpcp.cscs.ch) and [applications](https://github.com/eth-cscs/firecrest/tree/master/examples/UI-client-credentials), allowing them to securely access authenticated and authorized CSCS services such as job submission and data transfer on HPC systems.
8+
Additionally, scientific platform developers can integrate FirecREST into [web-enabled portals](https://eth-cscs.github.io/firecrest-ui/home/) and [web UI applications](https://eth-cscs.github.io/firecrest-v2/use_cases/UI-client-credentials/), allowing them to securely access authenticated and authorized CSCS services such as job submission and data transfer on HPC systems.
99

1010
Users can make HTTP requests to perform the following operations:
1111

@@ -55,7 +55,7 @@ FirecREST is available for all three major [Alps platforms][ref-alps-platforms],
5555

5656
### Clients and access tokens
5757

58-
For authenticating requests to FirecREST, **client applications** use an **access token** instead of directly using the user's credentials.
58+
For authenticating requests to FirecREST, [client applications][ref-devportal-application] use an **access token** instead of directly using the user's credentials.
5959
The access token is a signed JSON Web Token ([JWT](https://jwt.io/introduction)) which contains user information and is only valid for a short time (5 minutes).
6060
Behind the API, all commands launched by the client will use the account of the user that registered the client, inheriting their access rights.
6161

@@ -65,77 +65,14 @@ Every client has a client ID (Consumer Key) and a secret (Consumer Secret) that
6565
```
6666
curl -s -X POST https://auth.cscs.ch/auth/realms/firecrest-clients/protocol/openid-connect/token \
6767
--data "grant_type=client_credentials" \
68-
--data "client_id=<your_client>" \
69-
--data "client_secret=<your_secret>"
68+
--data "client_id=<client_id>" \
69+
--data "client_secret=<client_secret>"
7070
```
7171

7272
You can manage your client application on the [CSCS Developer Portal][ref-devportal].
7373

74-
[](){#ref-devportal}
75-
### CSCS Developer Portal
7674

77-
The [Developer Portal](https://developer.cscs.ch) facilitates CSCS users to manage subscriptions to an API at CSCS (such as FirecREST v1/v2).
78-
79-
Start by browsing to [developer.cscs.ch](https://developer.cscs.ch), then sign in by clicking the "SIGN-IN" button on the top right hand corner of the page.
80-
81-
Once logged in, you will see a list of APIs that are available to your user.
82-
83-
!!! Warning
84-
You might not see version 1 or version 2 of some API. You will be able to see all the versions when you *subscribe* your Application to the API.
85-
86-
### Creating an Application
87-
88-
Click on the "Applications" button at the top of the screen to manage your Applications.
89-
90-
![FirecREST Main Page](../images/firecrest/f7t-apis.png)
91-
92-
To create a new application, click on the "ADD NEW APPLICATION" button at the top of the Applications page, and complete the mandatory fields (marked with `*`).
93-
Make sure to give the application a unique name and select the number of requests per minute.
94-
When finished, click on the "Save" button.
95-
96-
!!! note
97-
To subscribe to an API you need at least one application, for which it is possible to use the DefaultApplication.
98-
99-
!!! note
100-
The quota of requests per minute will be shared by all subscribers to the Application over all APIs.
101-
102-
### Configuring Production Keys
103-
104-
Once the Application is created, create the Production Keys (`Client ID` and `Client Secret`) by clicking on "Production Keys"
105-
106-
![FirecREST production keys](../images/firecrest/f7t-keys.png)
107-
108-
109-
Use this if this is your first FirecREST application, or if you wish to create new keys.
110-
111-
* click on the "Generate Keys" button at the bottom of the page
112-
113-
![FirecREST existing keys](../images/firecrest/f7t-generate-keys.png)
114-
115-
Once the keys are generated, you will see the pair "Consumer Key" and "Consumer Secret".
116-
117-
![FirecREST keys](../images/firecrest/f7t-keys-overview.png)
118-
119-
!!! warning
120-
Store this pair of credentials securely, these are the access keys to your resources at CSCS.
121-
122-
### Subscribe to an API
123-
124-
Once you have set up your Application, is time to subscribe it to an API.
125-
126-
To do so:
127-
128-
* (8a) click on the "Subscriptions" option on the left panel
129-
* (8b) click the :fontawesome-solid-circle-plus: "Subscribe APIS" button
130-
* (8c) choose the API you want to subscribe to by clicking the "Subscribe" button
131-
132-
![FirecREST subscriptions](../images/firecrest/f7t-api-subscriptions.png)
133-
134-
Back on the Subscription Management page, you can review your active subscriptions and APIs that your Application has access to.
135-
136-
![FirecREST subscription management](../images/firecrest/f7t-api-subscriptions-management.png)
137-
138-
To use your Application to access FirecREST, follow the [API documentation](https://eth-cscs.github.io/firecrest-v2/openapi).
75+
To use your client credentials to access FirecREST, follow the [API documentation](https://eth-cscs.github.io/firecrest-v2/openapi).
13976

14077
## Getting Started
14178

@@ -443,8 +380,9 @@ A staging area is used for external transfers and downloading/uploading a file f
443380

444381
## Further Information
445382

446-
* [FirecREST UI for HPC Platform](https://my.hpcp.cscs.ch)
447-
* [FirecREST UI for ML Platform](https://my.mlp.cscs.ch)
383+
* [HPC Platform Dashboard](https://my.hpcp.cscs.ch)
384+
* [ML Platform Dashboard](https://my.mlp.cscs.ch)
385+
* [C&W Platform Dashboard](https://my.cwp.cscs.ch)
448386
* [FirecREST OpenAPI Specification](https://eth-cscs.github.io/firecrest-v2/openapi)
449387
* [FirecREST Official Docs](https://eth-cscs.github.io/firecrest-v2)
450388
* [Documentation of pyFirecREST](https://pyfirecrest.readthedocs.io/)

docs/access/index.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,12 @@ This documentation guides users through the process of accessing CSCS systems an
2626

2727
[:octicons-arrow-right-24: SSH][ref-ssh]
2828

29+
- :material-fire-circle: __FirecREST__
30+
31+
FirecREST is a RESTful API for programmatically accessing High-Performance Computing resources.
32+
33+
[:octicons-arrow-right-24: FirecREST][ref-firecrest]
34+
2935
- :simple-jupyter: __JupyterLab__
3036

3137
JupyterLab is a feature-rich notebook authoring application and editing environment.

docs/build-install/applications/index.md

Lines changed: 0 additions & 17 deletions
This file was deleted.

docs/build-install/index.md

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,3 @@ Modern HPC applications and software stacks are often very complicated, and ther
1717

1818
</div>
1919

20-
<div class="grid cards" markdown>
21-
22-
- :fontawesome-solid-earth-americas: __[Community codes][ref-software-installation-guides]__ – guides on how to install commonly requested or difficult to install software.
23-
24-
</div>
25-

docs/contributing/index.md

Lines changed: 65 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,51 @@
44
This documentation is developed using the [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/) framework, and the source code for the docs is publicly available on [GitHub](https://github.com/eth-cscs/cscs-docs).
55
This means that everybody, CSCS staff and the CSCS user community can contribute to the documentation.
66

7+
## Making suggestions or small changes
8+
9+
If you have a suggestion, comment or small change to make when reading the documentation, there are three ways to reach out.
10+
11+
1. **Edit the page inline**: click on the :material-pencil: icon on the top right hand corner of each page, and make the change inline. When you click "commit", and create a pull request, which will then be reviewed by the CSCS docs team.
12+
1. **Create a GitHub issue**: create an issue on the [issue page](https://github.com/eth-cscs/cscs-docs/issues) on the GitHub repository.
13+
1. **Create a CSCS service desk ticket**: create a ticket on the CSCS service desk.
14+
This is useful if you don't have a GitHub account, or would prefer not to use Github.
15+
16+
## Before starting
17+
18+
The CSCS documentation takes contributions from all CSCS staff, with a _core team_ of maintainers responsible for ensuring that the overall documentation is well organised, that pages are well written and up to date, and that contributions are reviewed and merged as quickly as possible.
19+
20+
??? question "Who are the core team?"
21+
The docs core team are:
22+
23+
* Ben Cumming (@bcumming);
24+
* Mikael Simberg (@msimberg);
25+
* and Rocco Meli (@RMeli).
26+
27+
We are volunteers for this role, who care about the quality of CSCS documentation!
28+
29+
!!! tip "Before contributing"
30+
Please read the [guidelines][] and [style guide][] before making any contribution.
31+
Consistency and common practices make it easier for users to read and navigate the documentation, make it easier for regular contributors to write, and avoid style debates.
32+
We try to strike a balance between following the guidelines and letting authors write in a style that is comfortable for them.
33+
34+
To speed up the merge process and avoid lengthy style discussions, we reserve the right to make changes to pull requests to bring it into line with the guidelines.
35+
The core team will also update pages when they are out of date or when the style guidelines change.
36+
!!! tip "Before making large contributions"
37+
If you plan to make large changes, like adding documentation for a new tool/service or refactoring existing documentation, __reach out to the core team__ before starting.
38+
39+
This will mean that the changes are consistent with other parts of the documentation, streamline the review process, and to avoid misunderstandings.
40+
41+
### Code owners
42+
43+
Many sections have individual staff that follow them.
44+
This is codified in the [CODEOWNERS](https://github.com/eth-cscs/cscs-docs/blob/main/.github/CODEOWNERS) file in the repository.
45+
The code owners are notified when there is a change to their pages, and can review the changes.
46+
47+
If you want to follow changes to a page or section, add your name to the CODEOWNERS.
48+
49+
!!! note
50+
Review from code owners is not required to merge, however the core team will try to get a timely review from code owners whenever possible.
51+
752
## Getting started
853

954
We use the GitHub fork and pull request model for development:
@@ -52,18 +97,22 @@ Then navigate to GitHub, and create a pull request.
5297

5398
## Review process
5499

55-
Documentation is maintained by everybody - so don't be afraid to jump in and make changes or fixes where you see the need or the potential.
100+
After you have made a pull request, a CI/CD pipeline will run the [spell checker][ref-contributing-spelling] and build a copy of the docs with the PR changes.
101+
A temporary "TDS" copy of the docs is deployed, to allow reviewers to see the finished documentation, at the address `https://docs.tds.cscs.ch/$PR`, where `PR` is the number of the pull request.
56102

57-
If you plan to make significant changes, please discuss them with an [issue](https://github.com/eth-cscs/cscs-docs/issues) beforehand, to ensure the changes will fit into the larger documentation structure.
103+
To make changes based on reviewer feedback, make a new commit on your branch, and push it to your fork.
104+
The PR will automatically be updated, the spell checker will run again, and the TDS documentation site will be rebuilt.
58105

59-
If you think your documentation update could affect specific stakeholders, ping them for a review.
60-
The same applies if you are not getting get a timely reply for your pull request.
61-
You can get some hints of whom to contact by looking at [CODEOWNERS](https://github.com/eth-cscs/cscs-docs/blob/main/.github/CODEOWNERS).
106+
!!! tip
107+
If you think your documentation update could affect specific stakeholders, ping them for a review.
108+
You can get some hints of whom to contact by looking at [CODEOWNERS](https://github.com/eth-cscs/cscs-docs/blob/main/.github/CODEOWNERS).
109+
If they don't reply in a timely manner, reach out to the core docs team to expedite the process.
62110

63111
!!! note
64112
To minimise the overhead of the contributing to the documentation and speed up "time-to-published-docs" we do not have a formal review process.
65113
We will start simple, and add more formality as needed.
66114

115+
[](){#ref-contributing-spelling}
67116
### Spell checker
68117

69118
A spell checker workflow runs on all PRs to help catch simple typos.
@@ -173,6 +222,17 @@ Screenshots can help readers follow steps on guides. Think if you need to show t
173222

174223
Often, screenshots can quickly become obsolete, so you may want to complement (or maybe even replace) some with text descriptions.
175224

225+
!!! tip
226+
Screen shots take up space in the git repository.
227+
228+
It might be "only a few hundred kilobytes" for a picture, but over the lifetime of the git repository this adds up to slow down source code cloning and CI/CD pipelines.
229+
230+
!!! tip
231+
Avoid using screen shots that do not directly contribute to the documentation.
232+
233+
For example, showing a screen shot with markers that are used to explain non-trivial steps that a user should follow is good documentation.
234+
On the other hand, a screenshot that says "this is a screenshot of the tool" adds no value, and draws the readers attention away from documentation.
235+
176236
#### Diagrams
177237

178238
Diagrams can help readers understand more abstract concepts like processes or architectures. We suggest you use [mermaid](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/creating-diagrams#creating-mermaid-diagrams). Such format makes diagrams easy to maintain and removes the need to commit image files in the repository.
-47.6 KB
Binary file not shown.
199 KB
Loading

0 commit comments

Comments
 (0)