<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Thu Feb 08 23:13:07 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-1407] Publish karma/nightmare coverage reports in Jenkins/integration with Sonarqube </title>
                <link>https://folio-org.atlassian.net/browse/FOLIO-1407</link>
                <project id="10290" key="FOLIO">FOLIO</project>
                    <description>&lt;p&gt;Karma coverage reports are generated during Jenkins builds as HTML and lcov.info , but are not published by Jenkins.    Publish the HTML report and possibly use lcov.info for integration with Sonarqube.&lt;/p&gt;</description>
                <environment></environment>
        <key id="80862">FOLIO-1407</key>
            <summary>Publish karma/nightmare coverage reports in Jenkins/integration with Sonarqube </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="10002" iconUrl="https://dev.folio.org/assets/jira-priority/jira-p3.svg">P3</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="5f9abc1eb45b2e007453f423">John Malconian</assignee>
                                                                <reporter accountid="5f9abc1eb45b2e007453f423">John Malconian</reporter>
                                    <labels>
                            <label>ci</label>
                            <label>sprint44</label>
                            <label>sprint45</label>
                            <label>sprint47</label>
                            <label>uitestingteam</label>
                    </labels>
                <created>Tue, 7 Aug 2018 15:08:38 +0000</created>
                <updated>Mon, 12 Nov 2018 14:24:53 +0000</updated>
                            <resolved>Sat, 29 Sep 2018 01:42:33 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                <comments>
                                                            <comment id="194993" author="5f9abc1eb45b2e007453f423" created="Tue, 7 Aug 2018 20:38:19 +0000"  >&lt;p&gt;I&apos;ve implemented the publishing of test coverage reports in Jenkins on a branch.   You can see an example in branch &apos;folio-1407-test&apos; of stripes-components here:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jenkins-aws.indexdata.com/job/folio-org/job/stripes-components/job/folio-1407-test/16/Karma_20Coverage_20Report/&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://jenkins-aws.indexdata.com/job/folio-org/job/stripes-components/job/folio-1407-test/16/Karma_20Coverage_20Report/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I attempted Sonarqube integration utilizing the output file, lcov.info, here:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://sonarcloud.io/component_measures?id=folio-org%3Astripes-components&amp;amp;metric=coverage&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://sonarcloud.io/component_measures?id=folio-org%3Astripes-components&amp;amp;metric=coverage&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It&apos;s difficult for me to discern at this point if the integration is doing what we want it to.    Please take a look, &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=712020%3A3d5df1a2-9ff6-4d03-b1b0-7d6b01378729&quot; class=&quot;user-hover&quot; rel=&quot;712020:3d5df1a2-9ff6-4d03-b1b0-7d6b01378729&quot; data-account-id=&quot;712020:3d5df1a2-9ff6-4d03-b1b0-7d6b01378729&quot; accountid=&quot;712020:3d5df1a2-9ff6-4d03-b1b0-7d6b01378729&quot; rel=&quot;noreferrer&quot;&gt;Jeffrey Cherewaty&lt;/a&gt;,  and let me know what you think. &lt;/p&gt;
</comment>
                                                            <comment id="194997" author="712020:3d5df1a2-9ff6-4d03-b1b0-7d6b01378729" created="Tue, 7 Aug 2018 21:07:06 +0000"  >&lt;p&gt;The HTML report artifact on Jenkins looks good &lt;img class=&quot;emoticon&quot; src=&quot;/images/icons/emoticons/thumbs_up.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;

&lt;p&gt;Looks like SonarCloud is including &lt;em&gt;every&lt;/em&gt; file in its coverage metrics, including the tests themselves. Example: &lt;tt&gt;lib/Accordion/tests/Accordion-test.js&lt;/tt&gt;. Istanbul doesn&apos;t measure test files by default, and I agree with that strategy (they&apos;d all be 100% all the time, not really useful).&lt;/p&gt;

&lt;p&gt;Is there a setting for SonarCloud to either...&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;only report on files that appear in &lt;tt&gt;lcov.info&lt;/tt&gt;?&lt;/li&gt;
	&lt;li&gt;or exclude files that end in &lt;tt&gt;-test.js&lt;/tt&gt;?&lt;/li&gt;
&lt;/ul&gt;
</comment>
                                                            <comment id="195000" author="5f9abc1eb45b2e007453f423" created="Tue, 7 Aug 2018 21:37:40 +0000"  >&lt;p&gt;Right.  The easiest method would be to exclude -test.js.   I will try that. &lt;/p&gt;</comment>
                                                            <comment id="195003" author="5f9abc1eb45b2e007453f423" created="Wed, 8 Aug 2018 15:54:31 +0000"  >&lt;p&gt;Tests should be excluded now.  &lt;a href=&quot;https://sonarcloud.io/component_measures?id=folio-org%3Astripes-components&amp;amp;metric=Coverage&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://sonarcloud.io/component_measures?id=folio-org%3Astripes-components&amp;amp;metric=Coverage&lt;/a&gt;&lt;/p&gt;</comment>
                                                            <comment id="195006" author="5f9abc1eb45b2e007453f423" created="Wed, 8 Aug 2018 15:58:46 +0000"  >&lt;p&gt;Couple of TODOs to myself so I don&apos;t forget - &lt;/p&gt;

&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;The Sonarqube scan should only be triggered on PR and master branch builds.&lt;/li&gt;
	&lt;li&gt;Set up a separate Github account for Sonarqube.   Sonarqube has a nasty habit of removing all previous PR comments when it adds a comment.    This may mitigate that.&lt;/li&gt;
&lt;/ul&gt;
</comment>
                                                            <comment id="195008" author="712020:3d5df1a2-9ff6-4d03-b1b0-7d6b01378729" created="Wed, 8 Aug 2018 16:43:48 +0000"  >&lt;p&gt;Looks like we can also exclude any &lt;tt&gt;.stories.js&lt;/tt&gt; or &lt;tt&gt;/stories/*.js&lt;/tt&gt; files.&lt;/p&gt;</comment>
                                                            <comment id="195012" author="5f9abc1eb45b2e007453f423" created="Sat, 29 Sep 2018 01:42:33 +0000"  >&lt;p&gt;This is enabled for all frontend components by default that generate lcov.info reports. &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                            <outwardlinks description="blocks">
                                        <issuelink>
            <issuekey id="10651">UXPROD-1052</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is blocked by">
                                        <issuelink>
            <issuekey id="36941">UITEST-39</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="71328">STCLI-71</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="80871">FOLIO-1421</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </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_10019" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|hzyrkn:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10024" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>[CHART] Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 7 Aug 2018 21:07:06 +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>