Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/line-length.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ jobs:
uses: actions/checkout@v4

- name: Validate I-D line length
run: if grep -nE '.{73,}' IETF-RFC.md | grep ' '; then echo "Found lines exceeding the limit"; exit -1; else echo "Validation completed successfully"; fi
run: if grep -nhE '.{73,}' IETF-*.md | grep ' '; then echo "Found lines exceeding the limit"; exit -1; else echo "Validation completed successfully"; fi

22 changes: 13 additions & 9 deletions .github/workflows/rfc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,16 @@ jobs:
run: gem install --no-document kramdown-rfc

- name: Bump I-D version
run: perl -pe 's/open-cloud-mesh-(\d+)/"open-cloud-mesh-" . sprintf("%02d", $1 + 1)/e' -i IETF-RFC.md || exit -1
run: |
for doc in IETF-*.md; do
git diff --quiet ${doc} || perl -pe 's/(docname: draft.*-)(\d+)/$1 . sprintf("%02d", $2 + 1)/ge' -i ${doc} || exit -1
done

- name: Convert Markdown to XML and save output
id: convert
run: |
kramdown-rfc IETF-RFC.md > IETF-RFC.xml 2> /tmp/result || true
for doc in IETF-*.md; do
kramdown-rfc ${doc} > ${doc}.xml 2>> /tmp/result || true
cat /tmp/result
echo "result<<EOF" >> $GITHUB_OUTPUT
cat /tmp/result >> $GITHUB_OUTPUT
Expand All @@ -33,26 +37,26 @@ jobs:
- uses: actions/upload-artifact@v4
with:
name: rfc-md
path: IETF-RFC.md
path: IETF-*.md

- uses: actions/upload-artifact@v4
with:
name: rfc-xml
path: IETF-RFC.xml
path: IETF-*.xml

# Create a PR to the repo with the results
- uses: peter-evans/create-pull-request@v6
with:
branch: rfc/gen-${{ github.sha }}
base: develop
add-paths: |
IETF-RFC.md
IETF-RFC.xml
commit-message: 'CI: regenerate IETF-RFC.xml for Datatracker'
IETF-*.md
IETF-*.xml
commit-message: 'CI: regenerate IETF XML files for Datatracker'
signoff: true
title: 'Regenerate IETF-RFC.xml'
title: 'Regenerate IETF XML files'
body: |
This autogenerated PR bumps the IETF version of the I-D and prepares the IETF-RFC.xml file for submission to the [IETF Datatracker](https://datatracker.ietf.org/submit).
This autogenerated PR bumps the IETF version of the I-Ds that were modified, and prepares the xml files for submission to the [IETF Datatracker](https://datatracker.ietf.org/submit).

The conversion produced the output below:
```
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Please follow these guidelines before opening an issue:
* Make sure your issue is not a duplicate.
* Make sure your issue is relevant to the specification.

To contribute to the Internet Draft, please do all edits in `IETF-RFC.md` only. A [GitHub action](https://github.com/cs3org/OCM-API/actions/workflows/rfc.yml) is available to prepare a new version of the `IETF-RFC.xml` file for submission to the IETF Datatracker.
To contribute to the Internet Draft, please do all edits in the markdown files only. A [GitHub action](https://github.com/cs3org/OCM-API/actions/workflows/rfc.yml) is available to prepare a new version of the `IETF-RFC.xml` file for submission to the IETF Datatracker.

To preview the changes of your PR, you can change the repo and branch in the API docs URL.
For instance to see the proposed changes of https://github.com/cs3org/OCM-API/pull/41, use:
Expand Down
1,553 changes: 1,553 additions & 0 deletions IETF-OCM-IP.md

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions IETF-RFC.md → IETF-OCM.md
Original file line number Diff line number Diff line change
Expand Up @@ -2270,9 +2270,9 @@ Andreas Klotz, Matthias Knoll, Christian Kracher, Mario Lassnig,
Claudius Laumanns, Anthony Leroy, Patrick Maier, Vladislav Makarenko,
Anna Manou, Rita Meneses, Zheng Meyer-Zhao, Crystal Michelle Chua,
Yoann Moulin, Daniel Müller, Frederik Müller, Rasmus Munk,
Michał Orzechowski, Jacek Pawel Kitowski, Iosif Peterfi,
Alessandro Petraro, Rene Ranger, Angelo Romasanta, David Rousse,
Carla Sauvanaud, Klaus Scheibenberger, Marcin Sieprawski,
Michał Orzechowski, Jacek Pawel Kitowski, Enrique Pérez Arnaud, Iosif
Peterfi, Alessandro Petraro, Rene Ranger, Angelo Romasanta, David
Rousse, Carla Sauvanaud, Klaus Scheibenberger, Marcin Sieprawski,
Tilo Steiger, C.D. Tiwari, Alejandro Unger and Tom Wezepoel.

Work on this document has been partially funded over the years by
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ This repository contains the text of the [Open Cloud Mesh IETF Draft](https://da
The documents are available as follows:

* **Latest official version, 1.3.0**: [RFC-formatted Draft](https://github.com/cs3org/OCM-API/blob/v1.3.0/IETF-RFC.md) | [API spec](https://cs3org.github.io/OCM-API/docs.html?branch=v1.3.0&repo=OCM-API&user=cs3org)
* Development branch: [RFC-formatted Draft](IETF-RFC.md) | [API spec](https://cs3org.github.io/OCM-API/docs.html?branch=develop&repo=OCM-API&user=cs3org)
* Development branch: [Main RFC-formatted Draft](IETF-OCM.md) | [Interoperable Protocol RFC-formatted Draft](IETF-OCM-IP.md) | [API spec](https://cs3org.github.io/OCM-API/docs.html?branch=develop&repo=OCM-API&user=cs3org)

[SemVer](https://semver.org) versioning applies to OCM, and backwards compatibility is supported unless stated otherwise by an implementation.

Expand Down
21 changes: 10 additions & 11 deletions spec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,8 @@ info:
title: Open Cloud Mesh API
description: >
Open Cloud Mesh OpenAPI Specification.
The semantic of the Protocol Specification is detailed in the
[IETF-RFC.md](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md)
document, published at the [IETF Datatracker](https://datatracker.ietf.org/doc/draft-ietf-ocm-open-cloud-mesh).
The semantic of the Protocol Specification is detailed in the OCM Internet-Draft document
published at the [IETF Datatracker](https://datatracker.ietf.org/doc/draft-ietf-ocm-open-cloud-mesh).
version: 1.3.0
x-logo:
url: logo.png
Expand All @@ -26,7 +25,7 @@ paths:
summary: Discovery endpoint
description: >
Following [RFC8615], this endpoint returns the properties and
capabilities offered by an OCM Server. See [OCM API Discovery](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md#ocm-api-discovery)
capabilities offered by an OCM Server. See [OCM API Discovery](https://datatracker.ietf.org/doc/html/draft-ietf-ocm-open-cloud-mesh#ocm-api-discovery)
for more details.
responses:
"200":
Expand Down Expand Up @@ -97,7 +96,7 @@ paths:
summary: Share Creation Notification endpoint
description: >
This endpoint is used by a Sending Server to notify a Receiving Server that
a new Share has been created. See [Share Creation Notification](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md#share-creation-notification)
a new Share has been created. See [Share Creation Notification](https://datatracker.ietf.org/doc/html/draft-ietf-ocm-open-cloud-mesh#share-creation-notification)
for more details.
requestBody:
content:
Expand Down Expand Up @@ -179,7 +178,7 @@ paths:
description: >
This optional endpoint is used to inform the other party about a change
that concerns a previously known entity, such as a Share or a trusted User.
See [Share Acceptance Notification](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md#share-acceptance-notification)
See [Share Acceptance Notification](https://datatracker.ietf.org/doc/html/draft-ietf-ocm-open-cloud-mesh#share-acceptance-notification)
for more details.
requestBody:
content:
Expand Down Expand Up @@ -245,7 +244,7 @@ paths:
summary: Invitation Acceptance endpoint
description: >
This optional endpoint is used to inform the Sender that an Invitation was accepted.
See [Invite flow](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md#invite-flow)
See [Invite flow](https://datatracker.ietf.org/doc/html/draft-ietf-ocm-open-cloud-mesh#invite-flow)
for more details.
requestBody:
content:
Expand All @@ -258,30 +257,30 @@ paths:
responses:
"200":
description: Invitation Acceptance Request successful (see [Invite Acceptance
Response](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md#invite-acceptance-response-details))
Response](https://datatracker.ietf.org/doc/html/draft-ietf-ocm-open-cloud-mesh#invite-acceptance-response-details))
content:
application/json:
schema:
$ref: "#/components/schemas/AcceptedInviteResponse"
"400":
description: The Invitation Token is invalid or does not exist (see [Invite
Acceptance
Response](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md#invite-acceptance-response-details))
Response](https://datatracker.ietf.org/doc/html/draft-ietf-ocm-open-cloud-mesh#invite-acceptance-response-details))
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"403":
description: Invite Receiver OCM Server is not trusted to accept this Invite
(see [Invite Acceptance
Response](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md#invite-acceptance-response-details))
Response](https://datatracker.ietf.org/doc/html/draft-ietf-ocm-open-cloud-mesh#invite-acceptance-response-details))
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"409":
description: Invitation already accepted (see [Invite Acceptance
Response](https://github.com/cs3org/OCM-API/blob/develop/IETF-RFC.md#invite-acceptance-response-details))
Response](https://datatracker.ietf.org/doc/html/draft-ietf-ocm-open-cloud-mesh#invite-acceptance-response-details))
content:
application/json:
schema:
Expand Down
Loading