<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:06:01 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 append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[SERVER-24315] Enable rsync on Linux Repos</title>
                <link>https://jira.mongodb.org/browse/SERVER-24315</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;It would be great, if you could enable rsync as a protocol for mongodb yum/deb repositories in order to easily mirror them locally. This is needed quite frequently due to company policies that keep datacenter machines isolated from the internet. &lt;/p&gt;</description>
                <environment></environment>
        <key id="290318">SERVER-24315</key>
            <summary>Enable rsync on Linux Repos</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/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="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="matt.lord">Matt Lord</assignee>
                                    <reporter username="schlitzered">stephan.schultchen</reporter>
                        <labels>
                            <label>repositories</label>
                    </labels>
                <created>Tue, 31 May 2016 11:49:53 +0000</created>
                <updated>Wed, 6 Mar 2019 23:04:13 +0000</updated>
                            <resolved>Wed, 6 Mar 2019 23:02:26 +0000</resolved>
                                                                    <component>Packaging</component>
                                        <votes>3</votes>
                                    <watches>9</watches>
                                                                                                                <comments>
                            <comment id="2173543" author="jglenn9k" created="Wed, 6 Mar 2019 23:04:13 +0000"  >&lt;p&gt;Thanks!&lt;/p&gt;</comment>
                            <comment id="2173538" author="matt.lord" created="Wed, 6 Mar 2019 23:02:26 +0000"  >&lt;p&gt;I&apos;m going to close this as done (let me know if you disagree). We can&apos;t enable the rsync protocol because the repos live in S3 and it&apos;s not an option there, but you can achieve the underlying goal of mirroring our repos locally this way:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;$ aws s3 sync --no-sign-request s3://repo.mongodb.org/ &amp;lt;local path&amp;gt;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;

&lt;p&gt;The &lt;a href=&quot;https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;awscli is available for all platforms&lt;/a&gt;, is &lt;a href=&quot;https://github.com/aws/aws-cli&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;free and open source software&lt;/a&gt;, and when using the &lt;a href=&quot;https://docs.aws.amazon.com/cli/latest/reference/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;--no-sign-request&lt;/tt&gt;&lt;/a&gt; option no AWS credentials are needed.&lt;/p&gt;</comment>
                            <comment id="2167015" author="matt.lord" created="Fri, 1 Mar 2019 03:18:06 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=mcdaniel&quot; class=&quot;user-hover&quot; rel=&quot;mcdaniel&quot;&gt;mcdaniel&lt;/a&gt;, you can solve the underlying pain and sync/mirror the entire repo this way (with &lt;tt&gt;--no-sign-request&lt;/tt&gt;, no AWS credentials are required):&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;$ aws s3 sync --no-sign-request s3://repo.mongodb.org/ &amp;lt;local path&amp;gt;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;
&lt;p&gt;You can also just sync various sub-sections if you prefer, e.g.:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;$ aws s3 sync --no-sign-request s3://repo.mongodb.org/yum/redhat/7 &amp;lt;local path&amp;gt;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;
&lt;p&gt;&lt;a href=&quot;https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;The awscli is available in many ways&lt;/a&gt;. And you can find &lt;a href=&quot;https://github.com/aws/aws-cli&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;the source on GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Is this a workable solution for you?&lt;/p&gt;</comment>
                            <comment id="2162097" author="mcdaniel" created="Mon, 25 Feb 2019 20:09:53 +0000"  >&lt;p&gt;Thank you Matt! Would it be possible to get a time estimate?&lt;/p&gt;</comment>
                            <comment id="2156474" author="matt.lord" created="Tue, 19 Feb 2019 23:20:29 +0000"  >&lt;p&gt;Thank you again for the helpful feedback, &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=mcdaniel&quot; class=&quot;user-hover&quot; rel=&quot;mcdaniel&quot;&gt;mcdaniel&lt;/a&gt;! I&apos;ll get this on our backlog and discuss with the team.&#160;&lt;/p&gt;</comment>
                            <comment id="2155917" author="mcdaniel" created="Tue, 19 Feb 2019 18:15:59 +0000"  >&lt;p&gt;Thanks for the quick response!&#160;Exactly, without being updated when a new release came out it would be difficult to keep the repo syncs up to date, that is if I were to reposync each cross section individually. Being able to mirror&#160;&lt;a href=&quot;https://repo.mongodb.org/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://repo.mongodb.org&lt;/a&gt;&#160;in its entirety would be ideal. Please let me know if you find any options!&lt;/p&gt;</comment>
                            <comment id="2153628" author="matt.lord" created="Fri, 15 Feb 2019 18:41:52 +0000"  >&lt;p&gt;Thank you, &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=mcdaniel&quot; class=&quot;user-hover&quot; rel=&quot;mcdaniel&quot;&gt;mcdaniel&lt;/a&gt;! That&apos;s a good point. There&apos;s a difference between sync&apos;ing a repo &#8211; e.g. RHEL7-x86_64-mongodb-4.0 &#8211;&#160;and mirroring the full suite of repos available on a host. What you really want to do is mirror &lt;a href=&quot;https://repo.mongodb.org/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://repo.mongodb.org&lt;/a&gt;&#160;in its entirety?&lt;/p&gt;

&lt;p&gt;I want to make sure I understand the specific want/need so that I can look at existing options/work-arounds and look into future work.&lt;/p&gt;</comment>
                            <comment id="2153437" author="mcdaniel" created="Fri, 15 Feb 2019 16:58:30 +0000"  >&lt;p&gt;With reposync you cant sync across different versions without manually adding them to the config files. That is I believe you can only sync at specific cross sections. I hope to sync new versions if they are introduced without having to manually check if there is a new version and adding it to the config. Any ideas?&lt;/p&gt;</comment>
                            <comment id="2133314" author="matt.lord" created="Thu, 31 Jan 2019 14:44:58 +0000"  >&lt;p&gt;The general need&#160;for local mirrored repos&#160;is quite common in large orgs as the machines in the DC don&apos;t have internet access.&lt;/p&gt;

&lt;p&gt;Can anyone help me understand why rsync is desired here over &lt;a href=&quot;http://manpages.ubuntu.com/manpages/bionic/man1/debmirror.1.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;debmirror&lt;/a&gt; and &lt;a href=&quot;https://access.redhat.com/solutions/23016&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;reposync&lt;/a&gt;, which both support using HTTP? These tools also have a big advantage in that you don&apos;t have to mirror every bit in the repo as usually an org is only interested in a small subset of the packages at the cross section between: MongoDB versions, OS variants, and hardware platforms.&lt;/p&gt;

&lt;p&gt;Can you help me understand the key reasons you want rsync protocol support?&lt;/p&gt;

&lt;p&gt;Thanks!&lt;/p&gt;</comment>
                            <comment id="2129529" author="mcdaniel" created="Mon, 28 Jan 2019 18:01:30 +0000"  >&lt;p&gt;Also in need of this. Any updates?&lt;/p&gt;</comment>
                            <comment id="1716703" author="jglenn9k" created="Fri, 3 Nov 2017 17:36:51 +0000"  >&lt;p&gt;Also need this.&lt;/p&gt;</comment>
                            <comment id="1286584" author="schlitzered" created="Tue, 7 Jun 2016 15:44:05 +0000"  >&lt;p&gt;our internal servers have no access to the internet, therefore we run mirrors of needed repositories. rsync is the tool/protocol of choice for syncing those mirrors.&lt;/p&gt;

&lt;p&gt;syncing mirrors via http/https is a strong pain point.&lt;/p&gt;</comment>
                            <comment id="1286482" author="samk" created="Tue, 7 Jun 2016 14:50:49 +0000"  >&lt;p&gt;Thanks for your suggestion. &lt;/p&gt;

&lt;p&gt;We&apos;re very committed to providing unfettered access to these repositories via HTTP and HTTPS, and don&apos;t have plans-&lt;del&gt;at the moment&lt;/del&gt;-of providing access to these repositories using other protocols.&lt;/p&gt;

&lt;p&gt;Could you please provide more information about your use case for this kind of access to help us understand and prioritize this feature.&lt;/p&gt;

&lt;p&gt;Regards,&lt;br/&gt;
sam&lt;/p&gt;</comment>
                            <comment id="1279441" author="schlitzered" created="Tue, 31 May 2016 12:13:08 +0000"  >&lt;p&gt;a ftp server would also be nice, if possible.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>14.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 7 Jun 2016 14:50:49 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        4 years, 49 weeks ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>jglenn9k</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            4 years, 49 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>mcdaniel</customfieldvalue>
            <customfieldvalue>jglenn9k</customfieldvalue>
            <customfieldvalue>matt.lord</customfieldvalue>
            <customfieldvalue>sam.kleinman</customfieldvalue>
            <customfieldvalue>schlitzered</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrk727:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hseaon:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrixlr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>