Skip to content

Commit 771cce2

Browse files
jpdorschjdorsch
andauthored
Added devportal (#251)
In this PR: - added `services/devportal` as documentation for the Developer Portal (before attached to FirecREST docs) - Updated list of github users as `CODEOWNERS` of `firecrest` and `devportal` - Moved images from `firecrest` to `services` with the prefix `devportal-*` https://docs.tds.cscs.ch/251/services/devportal/#creating-an-application --------- Co-authored-by: jdorsch <[email protected]>
1 parent cc77fd0 commit 771cce2

21 files changed

+177
-77
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: 2 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

.github/actions/spelling/patterns.txt

Lines changed: 1 addition & 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
!\[.*\]\(.*\)

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.
-47.6 KB
Binary file not shown.
199 KB
Loading
104 KB
Loading

0 commit comments

Comments
 (0)