<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Thu Feb 08 23:24:55 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary add field=key&field=summary to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>FOLIO Jira</title>
    <link>https://folio-org.atlassian.net</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>1001.0.0-SNAPSHOT</version>
        <build-number>100246</build-number>
        <build-date>07-02-2024</build-date>
    </build-info>

<item>
            <title>[FOLIO-3008] Upload build-generated HTML API docs to S3</title>
                <link>https://folio-org.atlassian.net/browse/FOLIO-3008</link>
                <project id="10290" key="FOLIO">FOLIO</project>
                    <description>&lt;p&gt;For mod-search we&apos;re using OpenAPI 3.0 as API specification (vs RAML as most of the modules) and we want to upload our API documentation to &lt;a href=&quot;https://dev.folio.org/reference/api/&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://dev.folio.org/reference/api/&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;We&apos;re able to generate the API doc during build time, the CI process should pick the page (for now it is &lt;tt&gt;target/docs/index.html&lt;/tt&gt;) and upload it to S3.&lt;/p&gt;

&lt;p&gt;Sample generated page &lt;span class=&quot;nobr&quot;&gt;&lt;a href=&quot;/rest/api/3/attachment/content/64356&quot; title=&quot;index.html attached to FOLIO-3008&quot; data-attachment-type=&quot;file&quot; data-attachment-name=&quot;index.html&quot; data-media-services-type=&quot;file&quot; data-media-services-id=&quot;1662bea5-6f5a-46ea-9cef-a6dc722865bb&quot; rel=&quot;noreferrer&quot;&gt;index.html&lt;sup&gt;&lt;img class=&quot;rendericon&quot; src=&quot;/images/icons/link_attachment_7.gif&quot; height=&quot;7&quot; width=&quot;7&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/sup&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;</description>
                <environment></environment>
        <key id="81964">FOLIO-3008</key>
            <summary>Upload build-generated HTML API docs to S3</summary>
                <type id="10003" iconUrl="https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10318?size=medium">Task</type>
                                            <priority id="10001" iconUrl="https://dev.folio.org/assets/jira-priority/jira-p2.svg">P2</priority>
                        <status id="6" iconUrl="https://folio-org.atlassian.net/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10003">Done</resolution>
                                                        <assignee accountid="61cd0ca0bce5e00069e98be7">David Crossley</assignee>
                                                                <reporter accountid="557058:89dc6567-baed-429c-bebb-dfcc7e5dcc50">Bohdan Suprun</reporter>
                                    <labels>
                            <label>devdoc</label>
                            <label>oas</label>
                            <label>raml</label>
                    </labels>
                <created>Wed, 10 Feb 2021 07:14:30 +0000</created>
                <updated>Fri, 19 Feb 2021 03:20:09 +0000</updated>
                            <resolved>Tue, 16 Feb 2021 05:52:37 +0000</resolved>
                                                                    <component>Continuous Integration</component>
                    <component>Documentation</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                <comments>
                                                            <comment id="198970" author="61cd0ca0bce5e00069e98be7" created="Fri, 12 Feb 2021 07:45:02 +0000"  >&lt;p&gt;There are various tasks to achieve this.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;1) Prepare the list of files, and upload to S3&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;This should be relatively easy, and we will get this done first. So at least the docs get published promptly.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;2) Display the module and its files at dev.f.o site&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;This is the more difficult part &#8211; making the dev.f.o site aware that there is a module with api docs to be added to the table. The website must only do minimal build processing. So need a separate process to regularly gather the various lists of files, assemble a data file, and commit it to git at the website&apos;s &lt;a href=&quot;https://github.com/folio-org/folio-org.github.io/tree/master/_data&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;_data&lt;/a&gt; directory.&lt;/p&gt;

&lt;p&gt;Leaving Part 2 to separate tickets 
    &lt;span class=&quot;jira-issue-macro resolved&quot; data-jira-key=&quot;FOLIO-2922&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/FOLIO-2922&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;Automate the configuration of API documentation&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10318?size=medium&quot; /&gt;
            FOLIO-2922
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-success jira-macro-single-issue-export-pdf&quot;&gt;Closed&lt;/span&gt;
            &lt;/span&gt;
 and 
    &lt;span class=&quot;jira-issue-macro resolved&quot; data-jira-key=&quot;FOLIO-3018&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/FOLIO-3018&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;Utilise the new configuration data to display dev.f.o/reference/api&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10318?size=medium&quot; /&gt;
            FOLIO-3018
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-success jira-macro-single-issue-export-pdf&quot;&gt;Closed&lt;/span&gt;
            &lt;/span&gt;
.&lt;/p&gt;</comment>
                                                            <comment id="198972" author="61cd0ca0bce5e00069e98be7" created="Fri, 12 Feb 2021 07:47:54 +0000"  >&lt;p&gt;So these are the components needed to enable part 1.&lt;/p&gt;

&lt;p&gt;Considering all potential OpenAPI-based modules, not just mod-search. Also the solution could be relevant for RAML-based modules too. So not limiting.&lt;/p&gt;

&lt;p&gt;The directory name for the build-generated files will be &lt;tt&gt;target/apidocs/&lt;/tt&gt;&lt;br/&gt;
In the future, modules might generate other &quot;docs&quot;, so use a specific name &quot;apidocs&quot;. All files in that directory will be uploaded as API documentation.&lt;/p&gt;

&lt;p&gt;Modules could have multiple documentation files, generated from the separate API description files. For example, &lt;a href=&quot;https://github.com/folio-org/mod-password-validator/tree/master/src/main/resources/swagger.api&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;mod-password-validator&lt;/a&gt; currently has two (password-validator.yaml and validator-registry.yaml).&lt;/p&gt;

&lt;p&gt;The filenames of the build-generated documentation will match the source filenames of their input &quot;API description&quot; files. So not &quot;index.html&quot; but instead corresponding &quot;password-validator.html&quot; and &quot;validator-registry.html&quot; names.&lt;br/&gt;
Note how column 1 of the table at &lt;a href=&quot;https://dev.folio.org/reference/api/#mod-password-validator&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://dev.folio.org/reference/api/#mod-password-validator&lt;/a&gt; uses the name of each source &quot;API description&quot; file, and directly links to its git source.&lt;/p&gt;

&lt;p&gt;The module&apos;s Jenkinsfile will have a property &lt;tt&gt;doUploadApidocs&lt;/tt&gt;. When &quot;true&quot; then FOLIO CI will inspect its build output &quot;apidocs&quot; directory, and assemble a data file listing of all documentation files. Then proceed to upload that listing and the files to the module&apos;s S3 space.&lt;/p&gt;</comment>
                                                            <comment id="198974" author="61cd0ca0bce5e00069e98be7" created="Mon, 15 Feb 2021 06:21:46 +0000"  >&lt;p&gt;The Part 1 is done now.&lt;/p&gt;

&lt;p&gt;The upload happens on merge to mainline branch and on release.&lt;/p&gt;</comment>
                                                            <comment id="198975" author="61cd0ca0bce5e00069e98be7" created="Tue, 16 Feb 2021 04:43:18 +0000"  >&lt;p&gt;Verified via the merge of &lt;a href=&quot;https://github.com/folio-org/mod-search/pull/22&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/folio-org/mod-search/pull/22&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Deployed to:&lt;br/&gt;
&lt;a href=&quot;https://s3.amazonaws.com/foliodocs/api/mod-search/u/files-upload.txt&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://s3.amazonaws.com/foliodocs/api/mod-search/u/files-upload.txt&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;https://s3.amazonaws.com/foliodocs/api/mod-search/u/mod-search.html&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://s3.amazonaws.com/foliodocs/api/mod-search/u/mod-search.html&lt;/a&gt;&lt;/p&gt;</comment>
                                                            <comment id="198977" author="61cd0ca0bce5e00069e98be7" created="Wed, 17 Feb 2021 04:25:27 +0000"  >&lt;p&gt;Part 2 to display in the &lt;a href=&quot;https://dev.folio.org/reference/api/&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;API Docs&lt;/a&gt; tables will be done later. See tickets 
    &lt;span class=&quot;jira-issue-macro resolved&quot; data-jira-key=&quot;FOLIO-2922&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/FOLIO-2922&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;Automate the configuration of API documentation&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10318?size=medium&quot; /&gt;
            FOLIO-2922
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-success jira-macro-single-issue-export-pdf&quot;&gt;Closed&lt;/span&gt;
            &lt;/span&gt;
 and 
    &lt;span class=&quot;jira-issue-macro resolved&quot; data-jira-key=&quot;FOLIO-3018&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/FOLIO-3018&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;Utilise the new configuration data to display dev.f.o/reference/api&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10318?size=medium&quot; /&gt;
            FOLIO-3018
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-success jira-macro-single-issue-export-pdf&quot;&gt;Closed&lt;/span&gt;
            &lt;/span&gt;
.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                            <outwardlinks description="blocks">
                                        <issuelink>
            <issuekey id="28716">MSEARCH-51</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="81855">FOLIO-2898</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="81999">FOLIO-3018</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="82008">FOLIO-3028</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="81925">FOLIO-2922</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="64356" name="index.html" size="719246" author="557058:89dc6567-baed-429c-bebb-dfcc7e5dcc50" created="Wed, 10 Feb 2021 07:16:25 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummarycf">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10057" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Development Team</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10155"><![CDATA[FOLIO DevOps]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10063" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>PO Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10019" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i02buf:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="1881">DevOps Sprint 108</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10024" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>[CHART] Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 12 Feb 2021 07:45:02 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10025" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>[CHART] Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>