changes to the Notiication obligation: to as Array, support for Decis… #1246
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: publish | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| build-rfc: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Set up Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: "3.1" | |
| - uses: actions/setup-python@v7 | |
| with: | |
| python-version: "3.10" | |
| - name: Install kramdown-rfc2629 | |
| run: gem install kramdown-rfc2629 | |
| - name: Install xml2rfc | |
| run: pip install xml2rfc | |
| - name: Convert working version of Authz API 1.0 to rfc xml | |
| run: kramdown-rfc2629 api/authorization-api-1_0.md > api/authorization-api-1_0.xml | |
| - name: Fix RFC9110 xrefs in generated XML | |
| run: | | |
| echo "Checking for RFC9110 xrefs in api/authorization-api-1_0.xml" | |
| grep -n 'target="RFC9110"' api/authorization-api-1_0.xml || echo "none found" | |
| # Replace any <xref target="RFC9110" section="...">text</xref> with a ulink to the RFC HTML+fragment.perl -0777 -pe 's#<xref\s+([^>]*?)target="RFC9110"([^>]*?)section="([^"]+)"([^>]*?)>(.*?)</xref>#<ulink url="https://www.rfc-editor.org/rfc/rfc9110.html#section-$3">$5</ulink>#igs' -i api/authorization-api-1_0.xml | |
| echo "Replacement done. Sample lines:" | |
| grep -n 'rfc9110.html' api/authorization-api-1_0.xml | head -n 5 || true | |
| - name: Render Authz API 1.0 HTML | |
| run: xml2rfc api/authorization-api-1_0.xml --html -o authorization-api-1_0.html | |
| - name: Render Index HTML (this is the current working draft of the spec) | |
| run: xml2rfc api/authorization-api-1_0.xml --html -o index.html | |
| - name: Render Authz API 1.0 Text | |
| run: xml2rfc api/authorization-api-1_0.xml --text | |
| - name: Upload Authz API 1.0 artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: authorization-api-1_0 | |
| path: | | |
| index.html | |
| authorization-api-1_0.html | |
| api/authorization-api-1_0.xml | |
| - name: Convert Authz Design Patterns to rfc xml | |
| run: kramdown-rfc2629 patterns/AuthorizationDesignPatterns.md > patterns/AuthorizationDesignPatterns.xml | |
| - name: Render Authz Design Patterns HTML | |
| run: xml2rfc patterns/AuthorizationDesignPatterns.xml --html -o patterns.html | |
| - name: Render Authz Design Patterns Text | |
| run: xml2rfc patterns/AuthorizationDesignPatterns.xml --text | |
| - name: Upload Authz Design Patterns artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: patterns-doc | |
| path: | | |
| patterns.html | |
| patterns/AuthorizationDesignPatterns.xml | |
| - name: Upload Authz API 1.0 original submission artifact (version 0_0) | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: authorization-api-0_0 | |
| path: | | |
| archive/authorization-api-0_0.html | |
| - name: Convert COAZ Framework to rfc xml | |
| run: kramdown-rfc2629 profiles/authzen-coaz-framework-1_0.md > profiles/authzen-coaz-framework-1_0.xml | |
| - name: Render COAZ Framework HTML | |
| run: xml2rfc profiles/authzen-coaz-framework-1_0.xml --html -o authzen-coaz-framework-1_0.html | |
| - name: Render COAZ Framework Text | |
| run: xml2rfc profiles/authzen-coaz-framework-1_0.xml --text | |
| - name: Upload COAZ Framework artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: coaz-framework | |
| path: | | |
| authzen-coaz-framework-1_0.html | |
| profiles/authzen-coaz-framework-1_0.xml | |
| - name: Convert COAZ-MCP Binding to rfc xml | |
| run: kramdown-rfc2629 profiles/authzen-coaz-mcp-binding-1_0.md > profiles/authzen-coaz-mcp-binding-1_0.xml | |
| - name: Render COAZ-MCP Binding HTML | |
| run: xml2rfc profiles/authzen-coaz-mcp-binding-1_0.xml --html -o authzen-coaz-mcp-binding-1_0.html | |
| - name: Render COAZ-MCP Binding Text | |
| run: xml2rfc profiles/authzen-coaz-mcp-binding-1_0.xml --text | |
| - name: Upload COAZ-MCP Binding artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: coaz-mcp-binding | |
| path: | | |
| authzen-coaz-mcp-binding-1_0.html | |
| profiles/authzen-coaz-mcp-binding-1_0.xml | |
| - name: Convert MCP Profile to rfc xml | |
| run: kramdown-rfc2629 profiles/authzen-mcp-profile-1_0.md > profiles/authzen-mcp-profile-1_0.xml | |
| - name: Render MCP Profile HTML | |
| run: xml2rfc profiles/authzen-mcp-profile-1_0.xml --html -o authzen-mcp-profile-1_0.html | |
| - name: Render MCP Profile Text | |
| run: xml2rfc profiles/authzen-mcp-profile-1_0.xml --text | |
| - name: Upload MCP Profile artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: mcp-profile | |
| path: | | |
| authzen-mcp-profile-1_0.html | |
| profiles/authzen-mcp-profile-1_0.xml | |
| - name: Convert Access Request Approval Profile to rfc xml | |
| run: kramdown-rfc2629 profiles/authzen-access-request-approval/authzen-access-request-approval-profile-1_0.md > profiles/authzen-access-request-approval/authzen-access-request-approval-profile-1_0.xml | |
| - name: Render Access Request Approval Profile HTML | |
| run: xml2rfc profiles/authzen-access-request-approval/authzen-access-request-approval-profile-1_0.xml --html -o authzen-access-request-approval-profile-1_0.html | |
| - name: Render Access Request Approval Profile Text | |
| run: xml2rfc profiles/authzen-access-request-approval/authzen-access-request-approval-profile-1_0.xml --text | |
| - name: Upload Access Request Approval Profile artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: access-request-approval-profile | |
| path: | | |
| authzen-access-request-approval-profile-1_0.html | |
| profiles/authzen-access-request-approval/authzen-access-request-approval-profile-1_0.xml | |
| - name: Convert Obligations Profile to rfc xml | |
| run: kramdown-rfc2629 profiles/authzen-obligations-profile-1_0.md > profiles/authzen-obligations-profile-1_0.xml | |
| - name: Render Obligations Profile HTML | |
| run: xml2rfc profiles/authzen-obligations-profile-1_0.xml --html -o authzen-obligations-profile-1_0.html | |
| - name: Render Obligations Profile Text | |
| run: xml2rfc profiles/authzen-obligations-profile-1_0.xml --text | |
| - name: Upload Obligations Profile artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: obligations-profile | |
| path: | | |
| authzen-obligations-profile-1_0.html | |
| profiles/authzen-obligations-profile-1_0.xml | |
| - name: Convert Authorization API 1.0 Certification Scenario to rfc xml | |
| run: kramdown-rfc2629 certification/authorization-api-1_0-scenario.md > certification/authorization-api-1_0-scenario.xml | |
| - name: Render Certification Scenario HTML | |
| run: xml2rfc certification/authorization-api-1_0-scenario.xml --html -o authorization-api-1_0-certification-scenario.html | |
| - name: Render Certification Scenario Text | |
| run: xml2rfc certification/authorization-api-1_0-scenario.xml --text | |
| - name: Upload Certification Scenario artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: certification-scenario | |
| path: | | |
| authorization-api-1_0-certification-scenario.html | |
| certification/authorization-api-1_0-scenario.xml | |
| publish-to-pages: | |
| if: github.ref == 'refs/heads/main' | |
| needs: [build-rfc] | |
| runs-on: ubuntu-latest | |
| permissions: | |
| pages: write | |
| id-token: write | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v8 | |
| with: | |
| pattern: authorization-api-* | |
| path: . | |
| merge-multiple: true | |
| - name: Download artifact - pattern document | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: patterns-doc | |
| - name: Download artifact - COAZ framework | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: coaz-framework | |
| - name: Download artifact - COAZ-MCP binding | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: coaz-mcp-binding | |
| - name: Download artifact - MCP profile | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: mcp-profile | |
| - name: Download artifact - Access Request Approval profile | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: access-request-approval-profile | |
| - name: Download artifact - Obligations profile | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: obligations-profile | |
| - name: Download artifact - Certification Scenario | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: certification-scenario | |
| - name: Upload pages artifact | |
| uses: actions/upload-pages-artifact@v5 | |
| with: | |
| path: . | |
| - name: Deploy to GitHub Pages | |
| id: deployment | |
| uses: actions/deploy-pages@v5 |