Modified: libcloud/site/trunk/generated/blog/page/15/index.html URL: http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/page/15/index.html?rev=1797582&r1=1797581&r2=1797582&view=diff ============================================================================== --- libcloud/site/trunk/generated/blog/page/15/index.html (original) +++ libcloud/site/trunk/generated/blog/page/15/index.html Sun Jun 4 14:37:45 2017 @@ -47,7 +47,7 @@ - <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' rel='stylesheet' type='text/css' /> + <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' rel='stylesheet' type='text/css' /> </head> @@ -97,111 +97,6 @@ <div class="post"> - <h2><a href="/blog/2011/09/01/libcloud-on-floss-weekly.html">Episode about Libcloud on FLOSS Weekly podcast</a></h2> - - - - - - <span class="post-date-author">By Tomaz Muraus <span style="display:none">(<a href="https://plus.google.com/+TomazMuraus?rel=author">Google+</a>)</span>on Sep 01, 2011</span> - - <div class="post-content"> - <p>Tomaz Muraus has been guest on a <a href="http://twit.tv/show/floss-weekly/">FLOSS weekly podcast</a> where he talked -about Apache Libcloud.</p> - -<p>For a recording and show notes, please see the official show page - -<a href="http://twit.tv/show/floss-weekly/181">FLOSS Weekly 181</a>.</p> - - </div> - - <div class="row section post-meta"> - <div class="col-md-12 post-tags"> - <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/podcasts.html" rel="tag">podcasts</a></p> - </div> - </div> -</div> - - - - - <div class="post"> - - <h2><a href="/blog/2011/07/04/libcloud-0-5-2-released.html">Libcloud 0.5.2 released</a></h2> - - - - - - <span class="post-date-author">By Tomaz Muraus <span style="display:none">(<a href="https://plus.google.com/+TomazMuraus?rel=author">Google+</a>)</span>on Jul 04, 2011</span> - - <div class="post-content"> - <p>Hello all,</p> - -<p>I would like to announce Libcloud 0.5.2. This release primary fixes two bugs -which were introduced in Libcloud 0.5.0 and improves listing of the objects -in the containers which contain more objects that fit into a single -response.</p> - -<h3>Notable changes, bug-fixes and improvements</h3> - -<p><strong>Compute</strong></p> - -<ul> -<li>Fix a regression in the <code>deploy_node()</code> method and make it more robust</li> -<li>Fix a regression in the Nimbus driver create_node() method</li> -<li>Improved node name and tag handling in the Amazon EC2 driver</li> -<li>Improved pricing and response handling in the OpenStack driver</li> -<li>New driver for SkaliCloud (skalicloud.com)</li> -<li>New driver for ServerLove (serverlove.com)</li> -</ul> - -<p><strong>Storage</strong></p> - -<ul> -<li>Fix handling of the containers with a lot of objects. Now an iterator -object is returned when user calls <code>list_container_objects()</code> method -and this object transparently handles pagination.</li> -</ul> - -<p>For a full list of changes, please check the CHANGES file < -https://github.com/apache/libcloud/blob/0.5.2/CHANGES>.</p> - -<h3>Download</h3> - -<p>Libcloud 0.5.2 can be downloaded from -http://libcloud.apache.org/downloads.html or installed using pip - pip -install apache-libcloud</p> - -<p>It is possible that the file hasn't been synced to all the mirrors yet so if -this is the case, please use the apache mirror - -http://www.apache.org/dist/libcloud</p> - -<h3>Documentation*</h3> - -<p>API documentation can be found at https://libcloud.apache.org/apidocs/0.5.2/</p> - -<h3>Bugs / Issues</h3> - -<p>If you find any bug or issue, please report it on our issue tracker < -https://issues.apache.org/jira/browse/LIBCLOUD>. Don't forget to attach an -example and / or test which reproduces your problem.</p> - -<p>Source: <a href="http://mail-archives.apache.org/mod_mbox/libcloud-dev/201107.mbox/%3CCAJMHEm+-=3nxszj+n+bogmyzgsxdjqou_2ajbuns77nmnse...@mail.gmail.com%3E">release announcement</a>.</p> - - </div> - - <div class="row section post-meta"> - <div class="col-md-12 post-tags"> - <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/release%20announcement.html" rel="tag">release announcement</a></p> - </div> - </div> -</div> - - - - - <div class="post"> - <h2><a href="/blog/2011/06/06/libcloud-sprint-will-be-held-at-europython-2011.html">Libcloud sprint will be held at EuroPython 2011</a></h2> @@ -360,6 +255,99 @@ please refer to the <a href="http://mail + + <div class="post"> + + <h2><a href="/blog/2011/01/17/libcloud-0-4-2-released.html">Libcloud 0.4.2 released</a></h2> + + + + + + <span class="post-date-author">By Jerry Chen on Jan 17, 2011</span> + + <div class="post-content"> + <p>The Apache Software Foundation and the Apache Libcloud Project are +pleased to announce the release and immediate availability of version +0.4.2 of Apache Libcloud ("libcloud").</p> + +<p>Apache Libcloud is a pure python client library for interacting with +many of the popular cloud server providers. It was created to make it +easy for developers to build products that work between any of the +services that it supports.</p> + +<p>Apache Libcloud is available for download from: +<a href="http://incubator.apache.org/libcloud/downloads.html">http://incubator.apache.org/libcloud/downloads.html</a>.</p> + +<p>Major changes since the previous release:</p> + +<ul> +<li>New drivers for CloudSigma, Brightbox, Rackspace UK</li> +<li>Improvements to deployment capabilities</li> +<li>libcloud.security module for SSL certificate verification, see +http://wiki.apache.org/incubator/LibcloudSSL</li> +</ul> + + </div> + + <div class="row section post-meta"> + <div class="col-md-12 post-tags"> + <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/release%20announcement.html" rel="tag">release announcement</a>, <a href="/blog/tags/security%20release.html" rel="tag">security release</a></p> + </div> + </div> +</div> + + + + + <div class="post"> + + <h2><a href="/blog/2010/10/12/libcloud-0-4-0-released.html">Libcloud 0.4.0 released</a></h2> + + + + + + <span class="post-date-author">By Paul Querna <span style="display:none">(<a href="https://plus.google.com/114551141389167971892?rel=author">Google+</a>)</span>on Oct 12, 2010</span> + + <div class="post-content"> + <p>The Apache Software Foundation and the Apache Libcloud Project are pleased to +announce the release and immediate availability of version 0.4.0 of Apache +Libcloud ("libcloud").</p> + +<p>Apache Libcloud is a pure python client library for interacting with many of +the popular cloud server providers. It was created to make it easy for +developers to build products that work between any of the services that it +supports.</p> + +<p>Apache Libcloud is available for download from: +<a href="http://incubator.apache.org/libcloud/downloads.html">http://incubator.apache.org/libcloud/downloads.html</a>.</p> + +<p>Major changes since the previous release:</p> + +<ul> +<li>Removed dependency on Zope.Interface.</li> +<li>New driver for ElasticHosts.</li> +<li>Bug fixes and improvements for GoGrid, EC2, Linode, Slicehost, and +RimuHosting.</li> +</ul> + +<p>See the CHANGES file for more details: +<a href="https://svn.apache.org/repos/asf/incubator/libcloud/tags/0.4.0/CHANGES">https://svn.apache.org/repos/asf/incubator/libcloud/tags/0.4.0/CHANGES</a>.</p> + +<p>Source: <a href="http://mail-archives.us.apache.org/mod_mbox/www-announce/201010.mbox/%[email protected]%3E">release announcement</a>.</p> + + </div> + + <div class="row section post-meta"> + <div class="col-md-12 post-tags"> + <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/release%20announcement.html" rel="tag">release announcement</a></p> + </div> + </div> +</div> + + + </div> <p class="navigation"> @@ -384,7 +372,7 @@ please refer to the <a href="http://mail <div class="col-lg-3 col-lg-offset-1"> <h2>Archive</h1> <ul> - <li> <a href="/blog/archives/2017/04/"> April 2017</a> (3)</li><li> <a href="/blog/archives/2016/12/"> December 2016</a> (1)</li><li> <a href="/blog/archives/2016/11/"> November 2016</a> (1)</li><li> <a href="/blog/archives/2016/10/"> October 2016</a> (1)</li><li> <a href="/blog/archives/2016/09/"> September 2016</a> (1)</li><li> <a href="/blog/archives/2016/07/"> July 2016</a> (1)</li><li> <a href="/blog/archives/2016/06/"> June 2016</a> (1)</li><li> <a href="/blog/archives/2016/04/"> April 2016</a> (2)</li><li> <a href="/blog/archives/2016/02/"> February 2016</a> (2)</li><li> <a href="/blog/archives/2016/01/"> January 2016</a> (4)</li><li> <a href="/blog/archives/2015/12/"> December 2015</a> (1)</li><li> <a href="/blog/archives/2015/11/"> November 2015</a> (1)</li><li> <a href="/blog/archives/2015/10/"> October 2015</a> (2)</li><li> <a href="/blog/archives/2015/08/"> August 2015</a> (1)</li>< li> <a href="/blog/archives/2015/03/"> March 2015</a> (1)</li><li> <a href="/blog/archives/2015/02/"> February 2015</a> (1)</li><li> <a href="/blog/archives/2014/12/"> December 2014</a> (1)</li><li> <a href="/blog/archives/2014/11/"> November 2014</a> (1)</li><li> <a href="/blog/archives/2014/07/"> July 2014</a> (2)</li><li> <a href="/blog/archives/2014/06/"> June 2014</a> (1)</li><li> <a href="/blog/archives/2014/05/"> May 2014</a> (1)</li><li> <a href="/blog/archives/2014/04/"> April 2014</a> (1)</li><li> <a href="/blog/archives/2014/02/"> February 2014</a> (8)</li><li> <a href="/blog/archives/2014/01/"> January 2014</a> (4)</li><li> <a href="/blog/archives/2013/12/"> December 2013</a> (3)</li><li> <a href="/blog/archives/2013/11/"> November 2013</a> (2)</li><li> <a href="/blog/archives/2013/09/"> September 2013</a> (1)</li><li> <a href="/blog/archives/2013/08/"> August 2013</a> (1)</li><li> <a hre f="/blog/archives/2013/07/"> July 2013</a> (1)</li><li> <a href="/blog/archives/2013/03/"> March 2013</a> (1)</li><li> <a href="/blog/archives/2013/02/"> February 2013</a> (1)</li><li> <a href="/blog/archives/2012/12/"> December 2012</a> (2)</li><li> <a href="/blog/archives/2012/11/"> November 2012</a> (2)</li><li> <a href="/blog/archives/2012/09/"> September 2012</a> (1)</li><li> <a href="/blog/archives/2012/08/"> August 2012</a> (1)</li><li> <a href="/blog/archives/2012/07/"> July 2012</a> (1)</li><li> <a href="/blog/archives/2012/05/"> May 2012</a> (2)</li><li> <a href="/blog/archives/2012/04/"> April 2012</a> (1)</li><li> <a href="/blog/archives/2012/02/"> February 2012</a> (1)</li><li> <a href="/blog/archives/2011/12/"> December 2011</a> (2)</li><li> <a href="/blog/archives/2011/11/"> November 2011</a> (3)</li><li> <a href="/blog/archives/2011/10/"> October 2011</a> (1)</li><li> <a href="/blog/a rchives/2011/09/"> September 2011</a> (1)</li><li> <a href="/blog/archives/2011/07/"> July 2011</a> (1)</li><li> <a href="/blog/archives/2011/06/"> June 2011</a> (1)</li><li> <a href="/blog/archives/2011/05/"> May 2011</a> (1)</li><li> <a href="/blog/archives/2011/02/"> February 2011</a> (1)</li><li> <a href="/blog/archives/2011/01/"> January 2011</a> (1)</li><li> <a href="/blog/archives/2010/10/"> October 2010</a> (1)</li><li> <a href="/blog/archives/2010/05/"> May 2010</a> (1)</li><li> <a href="/blog/archives/2010/02/"> February 2010</a> (1)</li> + <li> <a href="/blog/archives/2017/04/"> April 2017</a> (1)</li><li> <a href="/blog/archives/2016/12/"> December 2016</a> (1)</li><li> <a href="/blog/archives/2016/11/"> November 2016</a> (1)</li><li> <a href="/blog/archives/2016/10/"> October 2016</a> (1)</li><li> <a href="/blog/archives/2016/09/"> September 2016</a> (1)</li><li> <a href="/blog/archives/2016/07/"> July 2016</a> (1)</li><li> <a href="/blog/archives/2016/06/"> June 2016</a> (1)</li><li> <a href="/blog/archives/2016/04/"> April 2016</a> (2)</li><li> <a href="/blog/archives/2016/02/"> February 2016</a> (2)</li><li> <a href="/blog/archives/2016/01/"> January 2016</a> (4)</li><li> <a href="/blog/archives/2015/12/"> December 2015</a> (1)</li><li> <a href="/blog/archives/2015/11/"> November 2015</a> (1)</li><li> <a href="/blog/archives/2015/10/"> October 2015</a> (2)</li><li> <a href="/blog/archives/2015/08/"> August 2015</a> (1)</li>< li> <a href="/blog/archives/2015/03/"> March 2015</a> (1)</li><li> <a href="/blog/archives/2015/02/"> February 2015</a> (1)</li><li> <a href="/blog/archives/2014/12/"> December 2014</a> (1)</li><li> <a href="/blog/archives/2014/11/"> November 2014</a> (1)</li><li> <a href="/blog/archives/2014/07/"> July 2014</a> (2)</li><li> <a href="/blog/archives/2014/06/"> June 2014</a> (1)</li><li> <a href="/blog/archives/2014/05/"> May 2014</a> (1)</li><li> <a href="/blog/archives/2014/04/"> April 2014</a> (1)</li><li> <a href="/blog/archives/2014/02/"> February 2014</a> (8)</li><li> <a href="/blog/archives/2014/01/"> January 2014</a> (4)</li><li> <a href="/blog/archives/2013/12/"> December 2013</a> (3)</li><li> <a href="/blog/archives/2013/11/"> November 2013</a> (2)</li><li> <a href="/blog/archives/2013/09/"> September 2013</a> (1)</li><li> <a href="/blog/archives/2013/08/"> August 2013</a> (1)</li><li> <a hre f="/blog/archives/2013/07/"> July 2013</a> (1)</li><li> <a href="/blog/archives/2013/03/"> March 2013</a> (1)</li><li> <a href="/blog/archives/2013/02/"> February 2013</a> (1)</li><li> <a href="/blog/archives/2012/12/"> December 2012</a> (2)</li><li> <a href="/blog/archives/2012/11/"> November 2012</a> (2)</li><li> <a href="/blog/archives/2012/09/"> September 2012</a> (1)</li><li> <a href="/blog/archives/2012/08/"> August 2012</a> (1)</li><li> <a href="/blog/archives/2012/07/"> July 2012</a> (1)</li><li> <a href="/blog/archives/2012/05/"> May 2012</a> (2)</li><li> <a href="/blog/archives/2012/04/"> April 2012</a> (1)</li><li> <a href="/blog/archives/2012/02/"> February 2012</a> (1)</li><li> <a href="/blog/archives/2011/12/"> December 2011</a> (2)</li><li> <a href="/blog/archives/2011/11/"> November 2011</a> (3)</li><li> <a href="/blog/archives/2011/10/"> October 2011</a> (1)</li><li> <a href="/blog/a rchives/2011/09/"> September 2011</a> (1)</li><li> <a href="/blog/archives/2011/07/"> July 2011</a> (1)</li><li> <a href="/blog/archives/2011/06/"> June 2011</a> (1)</li><li> <a href="/blog/archives/2011/05/"> May 2011</a> (1)</li><li> <a href="/blog/archives/2011/02/"> February 2011</a> (1)</li><li> <a href="/blog/archives/2011/01/"> January 2011</a> (1)</li><li> <a href="/blog/archives/2010/10/"> October 2010</a> (1)</li><li> <a href="/blog/archives/2010/05/"> May 2010</a> (1)</li><li> <a href="/blog/archives/2010/02/"> February 2010</a> (1)</li> </ul> </div> </div> @@ -415,7 +403,7 @@ please refer to the <a href="http://mail </div><!-- /.container --> <!-- JavaScript --> - <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' type='text/javascript'></script> + <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' type='text/javascript'></script>
Modified: libcloud/site/trunk/generated/blog/page/16/index.html URL: http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/page/16/index.html?rev=1797582&r1=1797581&r2=1797582&view=diff ============================================================================== --- libcloud/site/trunk/generated/blog/page/16/index.html (original) +++ libcloud/site/trunk/generated/blog/page/16/index.html Sun Jun 4 14:37:45 2017 @@ -47,7 +47,7 @@ - <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' rel='stylesheet' type='text/css' /> + <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' rel='stylesheet' type='text/css' /> </head> @@ -97,99 +97,6 @@ <div class="post"> - <h2><a href="/blog/2011/01/17/libcloud-0-4-2-released.html">Libcloud 0.4.2 released</a></h2> - - - - - - <span class="post-date-author">By Jerry Chen on Jan 17, 2011</span> - - <div class="post-content"> - <p>The Apache Software Foundation and the Apache Libcloud Project are -pleased to announce the release and immediate availability of version -0.4.2 of Apache Libcloud ("libcloud").</p> - -<p>Apache Libcloud is a pure python client library for interacting with -many of the popular cloud server providers. It was created to make it -easy for developers to build products that work between any of the -services that it supports.</p> - -<p>Apache Libcloud is available for download from: -<a href="http://incubator.apache.org/libcloud/downloads.html">http://incubator.apache.org/libcloud/downloads.html</a>.</p> - -<p>Major changes since the previous release:</p> - -<ul> -<li>New drivers for CloudSigma, Brightbox, Rackspace UK</li> -<li>Improvements to deployment capabilities</li> -<li>libcloud.security module for SSL certificate verification, see -http://wiki.apache.org/incubator/LibcloudSSL</li> -</ul> - - </div> - - <div class="row section post-meta"> - <div class="col-md-12 post-tags"> - <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/release%20announcement.html" rel="tag">release announcement</a>, <a href="/blog/tags/security%20release.html" rel="tag">security release</a></p> - </div> - </div> -</div> - - - - - <div class="post"> - - <h2><a href="/blog/2010/10/12/libcloud-0-4-0-released.html">Libcloud 0.4.0 released</a></h2> - - - - - - <span class="post-date-author">By Paul Querna <span style="display:none">(<a href="https://plus.google.com/114551141389167971892?rel=author">Google+</a>)</span>on Oct 12, 2010</span> - - <div class="post-content"> - <p>The Apache Software Foundation and the Apache Libcloud Project are pleased to -announce the release and immediate availability of version 0.4.0 of Apache -Libcloud ("libcloud").</p> - -<p>Apache Libcloud is a pure python client library for interacting with many of -the popular cloud server providers. It was created to make it easy for -developers to build products that work between any of the services that it -supports.</p> - -<p>Apache Libcloud is available for download from: -<a href="http://incubator.apache.org/libcloud/downloads.html">http://incubator.apache.org/libcloud/downloads.html</a>.</p> - -<p>Major changes since the previous release:</p> - -<ul> -<li>Removed dependency on Zope.Interface.</li> -<li>New driver for ElasticHosts.</li> -<li>Bug fixes and improvements for GoGrid, EC2, Linode, Slicehost, and -RimuHosting.</li> -</ul> - -<p>See the CHANGES file for more details: -<a href="https://svn.apache.org/repos/asf/incubator/libcloud/tags/0.4.0/CHANGES">https://svn.apache.org/repos/asf/incubator/libcloud/tags/0.4.0/CHANGES</a>.</p> - -<p>Source: <a href="http://mail-archives.us.apache.org/mod_mbox/www-announce/201010.mbox/%[email protected]%3E">release announcement</a>.</p> - - </div> - - <div class="row section post-meta"> - <div class="col-md-12 post-tags"> - <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/release%20announcement.html" rel="tag">release announcement</a></p> - </div> - </div> -</div> - - - - - <div class="post"> - <h2><a href="/blog/2010/05/11/libcloud-0-3-1-released.html">Libcloud 0.3.1 released</a></h2> @@ -279,7 +186,7 @@ Cloud and SoftLayer.</li> <div class="col-lg-3 col-lg-offset-1"> <h2>Archive</h1> <ul> - <li> <a href="/blog/archives/2017/04/"> April 2017</a> (3)</li><li> <a href="/blog/archives/2016/12/"> December 2016</a> (1)</li><li> <a href="/blog/archives/2016/11/"> November 2016</a> (1)</li><li> <a href="/blog/archives/2016/10/"> October 2016</a> (1)</li><li> <a href="/blog/archives/2016/09/"> September 2016</a> (1)</li><li> <a href="/blog/archives/2016/07/"> July 2016</a> (1)</li><li> <a href="/blog/archives/2016/06/"> June 2016</a> (1)</li><li> <a href="/blog/archives/2016/04/"> April 2016</a> (2)</li><li> <a href="/blog/archives/2016/02/"> February 2016</a> (2)</li><li> <a href="/blog/archives/2016/01/"> January 2016</a> (4)</li><li> <a href="/blog/archives/2015/12/"> December 2015</a> (1)</li><li> <a href="/blog/archives/2015/11/"> November 2015</a> (1)</li><li> <a href="/blog/archives/2015/10/"> October 2015</a> (2)</li><li> <a href="/blog/archives/2015/08/"> August 2015</a> (1)</li>< li> <a href="/blog/archives/2015/03/"> March 2015</a> (1)</li><li> <a href="/blog/archives/2015/02/"> February 2015</a> (1)</li><li> <a href="/blog/archives/2014/12/"> December 2014</a> (1)</li><li> <a href="/blog/archives/2014/11/"> November 2014</a> (1)</li><li> <a href="/blog/archives/2014/07/"> July 2014</a> (2)</li><li> <a href="/blog/archives/2014/06/"> June 2014</a> (1)</li><li> <a href="/blog/archives/2014/05/"> May 2014</a> (1)</li><li> <a href="/blog/archives/2014/04/"> April 2014</a> (1)</li><li> <a href="/blog/archives/2014/02/"> February 2014</a> (8)</li><li> <a href="/blog/archives/2014/01/"> January 2014</a> (4)</li><li> <a href="/blog/archives/2013/12/"> December 2013</a> (3)</li><li> <a href="/blog/archives/2013/11/"> November 2013</a> (2)</li><li> <a href="/blog/archives/2013/09/"> September 2013</a> (1)</li><li> <a href="/blog/archives/2013/08/"> August 2013</a> (1)</li><li> <a hre f="/blog/archives/2013/07/"> July 2013</a> (1)</li><li> <a href="/blog/archives/2013/03/"> March 2013</a> (1)</li><li> <a href="/blog/archives/2013/02/"> February 2013</a> (1)</li><li> <a href="/blog/archives/2012/12/"> December 2012</a> (2)</li><li> <a href="/blog/archives/2012/11/"> November 2012</a> (2)</li><li> <a href="/blog/archives/2012/09/"> September 2012</a> (1)</li><li> <a href="/blog/archives/2012/08/"> August 2012</a> (1)</li><li> <a href="/blog/archives/2012/07/"> July 2012</a> (1)</li><li> <a href="/blog/archives/2012/05/"> May 2012</a> (2)</li><li> <a href="/blog/archives/2012/04/"> April 2012</a> (1)</li><li> <a href="/blog/archives/2012/02/"> February 2012</a> (1)</li><li> <a href="/blog/archives/2011/12/"> December 2011</a> (2)</li><li> <a href="/blog/archives/2011/11/"> November 2011</a> (3)</li><li> <a href="/blog/archives/2011/10/"> October 2011</a> (1)</li><li> <a href="/blog/a rchives/2011/09/"> September 2011</a> (1)</li><li> <a href="/blog/archives/2011/07/"> July 2011</a> (1)</li><li> <a href="/blog/archives/2011/06/"> June 2011</a> (1)</li><li> <a href="/blog/archives/2011/05/"> May 2011</a> (1)</li><li> <a href="/blog/archives/2011/02/"> February 2011</a> (1)</li><li> <a href="/blog/archives/2011/01/"> January 2011</a> (1)</li><li> <a href="/blog/archives/2010/10/"> October 2010</a> (1)</li><li> <a href="/blog/archives/2010/05/"> May 2010</a> (1)</li><li> <a href="/blog/archives/2010/02/"> February 2010</a> (1)</li> + <li> <a href="/blog/archives/2017/04/"> April 2017</a> (1)</li><li> <a href="/blog/archives/2016/12/"> December 2016</a> (1)</li><li> <a href="/blog/archives/2016/11/"> November 2016</a> (1)</li><li> <a href="/blog/archives/2016/10/"> October 2016</a> (1)</li><li> <a href="/blog/archives/2016/09/"> September 2016</a> (1)</li><li> <a href="/blog/archives/2016/07/"> July 2016</a> (1)</li><li> <a href="/blog/archives/2016/06/"> June 2016</a> (1)</li><li> <a href="/blog/archives/2016/04/"> April 2016</a> (2)</li><li> <a href="/blog/archives/2016/02/"> February 2016</a> (2)</li><li> <a href="/blog/archives/2016/01/"> January 2016</a> (4)</li><li> <a href="/blog/archives/2015/12/"> December 2015</a> (1)</li><li> <a href="/blog/archives/2015/11/"> November 2015</a> (1)</li><li> <a href="/blog/archives/2015/10/"> October 2015</a> (2)</li><li> <a href="/blog/archives/2015/08/"> August 2015</a> (1)</li>< li> <a href="/blog/archives/2015/03/"> March 2015</a> (1)</li><li> <a href="/blog/archives/2015/02/"> February 2015</a> (1)</li><li> <a href="/blog/archives/2014/12/"> December 2014</a> (1)</li><li> <a href="/blog/archives/2014/11/"> November 2014</a> (1)</li><li> <a href="/blog/archives/2014/07/"> July 2014</a> (2)</li><li> <a href="/blog/archives/2014/06/"> June 2014</a> (1)</li><li> <a href="/blog/archives/2014/05/"> May 2014</a> (1)</li><li> <a href="/blog/archives/2014/04/"> April 2014</a> (1)</li><li> <a href="/blog/archives/2014/02/"> February 2014</a> (8)</li><li> <a href="/blog/archives/2014/01/"> January 2014</a> (4)</li><li> <a href="/blog/archives/2013/12/"> December 2013</a> (3)</li><li> <a href="/blog/archives/2013/11/"> November 2013</a> (2)</li><li> <a href="/blog/archives/2013/09/"> September 2013</a> (1)</li><li> <a href="/blog/archives/2013/08/"> August 2013</a> (1)</li><li> <a hre f="/blog/archives/2013/07/"> July 2013</a> (1)</li><li> <a href="/blog/archives/2013/03/"> March 2013</a> (1)</li><li> <a href="/blog/archives/2013/02/"> February 2013</a> (1)</li><li> <a href="/blog/archives/2012/12/"> December 2012</a> (2)</li><li> <a href="/blog/archives/2012/11/"> November 2012</a> (2)</li><li> <a href="/blog/archives/2012/09/"> September 2012</a> (1)</li><li> <a href="/blog/archives/2012/08/"> August 2012</a> (1)</li><li> <a href="/blog/archives/2012/07/"> July 2012</a> (1)</li><li> <a href="/blog/archives/2012/05/"> May 2012</a> (2)</li><li> <a href="/blog/archives/2012/04/"> April 2012</a> (1)</li><li> <a href="/blog/archives/2012/02/"> February 2012</a> (1)</li><li> <a href="/blog/archives/2011/12/"> December 2011</a> (2)</li><li> <a href="/blog/archives/2011/11/"> November 2011</a> (3)</li><li> <a href="/blog/archives/2011/10/"> October 2011</a> (1)</li><li> <a href="/blog/a rchives/2011/09/"> September 2011</a> (1)</li><li> <a href="/blog/archives/2011/07/"> July 2011</a> (1)</li><li> <a href="/blog/archives/2011/06/"> June 2011</a> (1)</li><li> <a href="/blog/archives/2011/05/"> May 2011</a> (1)</li><li> <a href="/blog/archives/2011/02/"> February 2011</a> (1)</li><li> <a href="/blog/archives/2011/01/"> January 2011</a> (1)</li><li> <a href="/blog/archives/2010/10/"> October 2010</a> (1)</li><li> <a href="/blog/archives/2010/05/"> May 2010</a> (1)</li><li> <a href="/blog/archives/2010/02/"> February 2010</a> (1)</li> </ul> </div> </div> @@ -310,7 +217,7 @@ Cloud and SoftLayer.</li> </div><!-- /.container --> <!-- JavaScript --> - <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' type='text/javascript'></script> + <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' type='text/javascript'></script> Modified: libcloud/site/trunk/generated/blog/page/2/index.html URL: http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/page/2/index.html?rev=1797582&r1=1797581&r2=1797582&view=diff ============================================================================== --- libcloud/site/trunk/generated/blog/page/2/index.html (original) +++ libcloud/site/trunk/generated/blog/page/2/index.html Sun Jun 4 14:37:45 2017 @@ -47,7 +47,7 @@ - <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' rel='stylesheet' type='text/css' /> + <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' rel='stylesheet' type='text/css' /> </head> @@ -97,265 +97,6 @@ <div class="post"> - <h2><a href="/blog/2016/10/14/libcloud-1-3-0-released.html">Libcloud 1.3.0 released</a></h2> - - - - - - <span class="post-date-author">By Anthony Shaw on Oct 14, 2016</span> - - <div class="post-content"> - <p>We are pleased to announce the release of Libcloud 1.3.0.</p> - -<p>This release brings many new features, improvements, bug-fixes, and drivers.</p> - -<h3>Important changes</h3> - -<ul> -<li>RunAbove driver is now the OVH cloud driver because of changes in the -platform. Users will get a deprecated error message and pointed to the -website for more information.</li> -<li>Fixed support for SLES/OpenSUSE 12, now checks the default certificate -path (does not impact users using certifi).</li> -<li>DigitalOcean v1 API has been deprecated in favour of the new 2.0 API.</li> -</ul> - -<h3>Release highlights</h3> - -<h4>Rancher Driver</h4> - -<p>Mario Loria contributed a full Rancher driver for our container abstraction -interface. Documentation is available with examples of usage, you can use -the driver to deploy containers, services, stacks or operate and maintain -existing deployments! Thanks Mario.</p> - -<div class="highlight"><pre><code class="python"><span class="kn">from</span> <span class="nn">libcloud.container.types</span> <span class="kn">import</span> <span class="n">Provider</span> -<span class="kn">from</span> <span class="nn">libcloud.container.providers</span> <span class="kn">import</span> <span class="n">get_driver</span> -<span class="kn">from</span> <span class="nn">libcloud.container.base</span> <span class="kn">import</span> <span class="n">ContainerImage</span> - -<span class="n">driver</span> <span class="o">=</span> <span class="n">get_driver</span><span class="p">(</span><span class="n">Provider</span><span class="o">.</span><span class="n">RANCHER</span><span class="p">)</span> - -<span class="n">connection</span> <span class="o">=</span> <span class="n">driver</span><span class="p">(</span><span class="s">"MYRANCHERACCESSKEY"</span><span class="p">,</span> <span class="s">"MYRANCHERSECRETKEY"</span><span class="p">,</span> - <span class="n">host</span><span class="o">=</span><span class="s">"17.23.66.4"</span><span class="p">,</span> <span class="n">port</span><span class="o">=</span><span class="mi">443</span><span class="p">)</span> - -<span class="n">image</span> <span class="o">=</span> <span class="n">ContainerImage</span><span class="p">(</span><span class="s">"hastebin"</span><span class="p">,</span> <span class="s">"hastebin"</span><span class="p">,</span> <span class="s">"rlister/hastebin"</span><span class="p">,</span> <span class="s">"latest"</span><span class="p">,</span> - <span class="n">driver</span><span class="o">=</span><span class="bp">None</span><span class="p">)</span> - -<span class="n">new_service</span> <span class="o">=</span> <span class="n">connection</span><span class="o">.</span><span class="n">ex_deploy_service</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s">"excitingservice"</span><span class="p">,</span> <span class="n">image</span><span class="o">=</span><span class="n">image</span><span class="p">,</span> - <span class="n">environmentid</span><span class="o">=</span><span class="s">"1e2"</span><span class="p">,</span> - <span class="n">environment</span><span class="o">=</span><span class="p">{</span> - <span class="s">"STORAGE_TYPE"</span><span class="p">:</span> <span class="s">"file"</span> - <span class="p">})</span> -</code></pre></div> - -<h4>New API</h4> - -<p>As well as the direct <code>get_driver API</code>, there is now a short-hand API for -users to choose.</p> - -<div class="highlight"><pre><code class="python"><span class="kn">import</span> <span class="nn">libcloud</span> - -<span class="n">cls</span> <span class="o">=</span> <span class="n">libcloud</span><span class="o">.</span><span class="n">get_driver</span><span class="p">(</span><span class="n">libcloud</span><span class="o">.</span><span class="n">DriverType</span><span class="o">.</span><span class="n">COMPUTE</span><span class="p">,</span> <span class="n">libcloud</span><span class="o">.</span><span class="n">DriverType</span><span class="o">.</span><span class="n">COMPUTE</span><span class="o">.</span><span class="n">RACKSPACE</span><span class="p">)</span> -</code></pre></div> - -<p>Full change log can be found at <a href="https://libcloud.readthedocs.org/en/latest/changelog.html">here</a>.</p> - -<h3>Special thank you</h3> - -<p>I would like to wish a special thank you to all of our community contributors -for their ongoing support to the project.</p> - -<h3>Download</h3> - -<p>The release can can be downloaded from -<a href="https://libcloud.apache.org/downloads.html">https://libcloud.apache.org/downloads.html</a> or installed using pip:</p> - -<pre> -pip install apache-libcloud==1.3.0 -</pre> - -<h3>Upgrading</h3> - -<p>If you have installed Libcloud using pip you can also use it to upgrade it:</p> - -<pre> -pip install --upgrade apache-libcloud==1.3.0 -</pre> - -<h3>Upgrade notes</h3> - -<p>A page which describes backward incompatible or semi-incompatible -changes and how to preserve the old behavior when this is possible -can be found at <a href="https://libcloud.readthedocs.org/en/latest/upgrade_notes.html">https://libcloud.readthedocs.org/en/latest/upgrade_notes.html</a></p> - -<h3>Documentation</h3> - -<p>Regular and API documentation is available at <a href="https://libcloud.readthedocs.org/en/latest/">https://libcloud.readthedocs.org/en/latest/</a></p> - -<h3>Bugs / Issues</h3> - -<p>If you find any bug or issue, please report it on our issue tracker -<a href="https://issues.apache.org/jira/browse/LIBCLOUD">https://issues.apache.org/jira/browse/LIBCLOUD</a>. -Don't forget to attach an example and / or test which reproduces your -problem.</p> - -<h3>Thanks</h3> - -<p>Thanks to everyone who contributed and made this release possible! Full -list of people who contributed to this release can be found in the -<a href="https://libcloud.readthedocs.org/en/latest/changelog.html">CHANGES file</a>.</p> - - </div> - - <div class="row section post-meta"> - <div class="col-md-12 post-tags"> - <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/release%20announcement.html" rel="tag">release announcement</a></p> - </div> - </div> -</div> - - - - - <div class="post"> - - <h2><a href="/blog/2016/09/23/libcloud-1-2-1-released.html">Libcloud 1.2.1 released</a></h2> - - - - - - <span class="post-date-author">By Anthony Shaw on Sep 23, 2016</span> - - <div class="post-content"> - <p>We are pleased to announce the release of Libcloud 1.2.1.</p> - -<p>This release brings many new features, improvements, bug-fixes, and drivers.</p> - -<h2>Release highlights</h2> - -<h3>Changes in Apache Libcloud 1.2.1</h3> - -<ul> -<li>Fix issue enabling backups on Dimension Data driver</li> -</ul> - -<h3>Changes in Apache Libcloud 1.2.0</h3> - -<h4>General</h4> - -<ul> -<li>Fix caching of auth tokens in the Google Compute Engine drivers. Now we make -sure that the file is truncated before writing a new token. Not truncating the -file would cause issues if the new token is shorted then the existing one -which is cached in the file.</li> -</ul> - -<h4>Compute</h4> - -<ul> -<li>Fix image undeprecation in GCE</li> -<li>Added Managed Instance Groups in GCE</li> -<li>Allow undeprecation of an image in GCE</li> -<li>BUGFIX Values with wildcards failed signature validation in cloudstack</li> -<li>Added StorageState-Migrating to the cloudstack driver.</li> -<li>Update copy image logic to match create image in GCE driver.</li> -<li>Removed HD attribute from the Abiquo compute driver to support the 3.4 API</li> -<li>Add image and size details to list_nodes response in Dimension Data driver</li> -<li>Add support for changing VM admin password in VMware driver</li> -<li>Add Barcelona (Spain) region to the Aurora Compute driver.</li> -<li>Various improvements in the libvirt driver.</li> -</ul> - -<h4>Load balancer</h4> - -<ul> -<li>Add support for temporary IAM role credentials (token) to the AWS ELB driver.</li> -</ul> - -<h4>DNS</h4> - -<ul> -<li>Updated the 'extra' parameter in update_record() to be optional in aurora driver</li> -<li>Support for iterating over records and zones in the Aurora DNS driver</li> -<li>Add support for DS, PTR, SSFHFP and TLSA record type to the Aurora DNS driver.</li> -</ul> - -<h4>Container</h4> - -<ul> -<li>Add network mode and labels when creating containers within docker driver</li> -</ul> - -<h4>Storage</h4> - -<ul> -<li>Fix authentication issue in S3/China region, disabled multipart uploads as -not supported by region.</li> -</ul> - -<p>Full change log can be found at <a href="https://libcloud.readthedocs.org/en/latest/changelog.html">here</a>.</p> - -<h3>Special thank you</h3> - -<p>I would like to wish a special thank you to all of our community contributors -for their ongoing support to the project.</p> - -<h3>Download</h3> - -<p>The release can can be downloaded from -<a href="https://libcloud.apache.org/downloads.html">https://libcloud.apache.org/downloads.html</a> or installed using pip:</p> - -<pre> -pip install apache-libcloud==1.2.1 -</pre> - -<h3>Upgrading</h3> - -<p>If you have installed Libcloud using pip you can also use it to upgrade it:</p> - -<pre> -pip install --upgrade apache-libcloud==1.2.1 -</pre> - -<h3>Upgrade notes</h3> - -<p>A page which describes backward incompatible or semi-incompatible -changes and how to preserve the old behavior when this is possible -can be found at <a href="https://libcloud.readthedocs.org/en/latest/upgrade_notes.html">https://libcloud.readthedocs.org/en/latest/upgrade_notes.html</a></p> - -<h3>Documentation</h3> - -<p>Regular and API documentation is available at <a href="https://libcloud.readthedocs.org/en/latest/">https://libcloud.readthedocs.org/en/latest/</a></p> - -<h3>Bugs / Issues</h3> - -<p>If you find any bug or issue, please report it on our issue tracker -<a href="https://issues.apache.org/jira/browse/LIBCLOUD">https://issues.apache.org/jira/browse/LIBCLOUD</a>. -Don't forget to attach an example and / or test which reproduces your -problem.</p> - -<h3>Thanks</h3> - -<p>Thanks to everyone who contributed and made this release possible! Full -list of people who contributed to this release can be found in the -<a href="https://libcloud.readthedocs.org/en/latest/changelog.html">CHANGES file</a>.</p> - - </div> - - <div class="row section post-meta"> - <div class="col-md-12 post-tags"> - <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/release%20announcement.html" rel="tag">release announcement</a></p> - </div> - </div> -</div> - - - - - <div class="post"> - <h2><a href="/blog/2016/07/07/libcloud-1-1-0-released.html">Libcloud 1.1.0 released</a></h2> @@ -1020,6 +761,195 @@ list of people who contributed to this r + + <div class="post"> + + <h2><a href="/blog/2016/04/06/requests-support.html">Experimental support for the requests package</a></h2> + + + + + + <span class="post-date-author">By Anthony Shaw on Apr 06, 2016</span> + + <div class="post-content"> + <h2>Background</h2> + +<p>I've just pushed a branch of the latest version of libcloud using the popular <code>requests</code> package by Kenneth Reitz instead of our home-rolled HTTP client library.</p> + +<p>This article is for both users and developers of libcloud. If you want to give feedback, please join the developer mailing list.</p> + +<h2>Why?</h2> + +<ul> +<li>requests is the defacto standard - it would be in the standard library but agreed against to allow it to develop faster https://github.com/kennethreitz/requests/issues/2424</li> +<li>it works with python 2.6->3.5</li> +<li>Our SSL experience has a lot to be desired for Windows users, having to download the CA cert package and setting environment variables just to get SSL working</li> +<li>Developers can use requests_mock for deeper integration testing</li> +<li>less code to maintain</li> +<li>the role of libcloud is for cloud abstraction, we provide no value in writing and maintaining our own HTTP client library</li> +</ul> + +<h2>Benefits of requests</h2> + +<p>There are a number of benefits to having a requests package</p> + +<ul> +<li>The client library code is smaller, leaner and simpler.</li> +<li>Requests has built in decompression support, we no longer need to support this</li> +<li>Requests has built in RAW download, upload support, helping with our storage drivers</li> +</ul> + +<h2>Implications of the change</h2> + +<ul> +<li>There are no longer 2 classes (<code>LibcloudHTTPSConnection</code> and <code>LibcloudHTTPConnection</code>) to be provided to each driver, they are now 1 class - <code>LibcloudConnection</code>. You probably won't notice this because it is a property of the <code>Connection</code> class, but +if you are developing or extending functionality then it is implicated.</li> +<li>Unit tests will look slightly different (see below)</li> +<li>This change broke 4200 unit tests (out of 6340)! I've since fixed them all since they were coupled to the original implementation, but now I don't know if all of tests are valid.</li> +</ul> + +<h2>Testing with requests</h2> + +<p>Unit tests that were written like this:</p> + +<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="k">class</span> <span class="nc">DigitalOceanTests</span><span class="p">(</span><span class="n">LibcloudTestCase</span><span class="p">):</span> + + <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> + <span class="n">DigitalOceanBaseDriver</span><span class="o">.</span><span class="n">connectionCls</span><span class="o">.</span><span class="n">conn_classes</span> <span class="o">=</span> \ + <span class="p">(</span><span class="bp">None</span><span class="p">,</span> <span class="n">DigitalOceanMockHttp</span><span class="p">)</span> + <span class="n">DigitalOceanMockHttp</span><span class="o">.</span><span class="n">type</span> <span class="o">=</span> <span class="bp">None</span> + <span class="bp">self</span><span class="o">.</span><span class="n">driver</span> <span class="o">=</span> <span class="n">DigitalOceanBaseDriver</span><span class="p">(</span><span class="o">*</span><span class="n">DIGITALOCEAN_v1_PARAMS</span><span class="p">)</span> +</code></pre></div> + +<p>Because of the change have been modified to (I updated all of them - so this is just for future reference)</p> + +<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="k">class</span> <span class="nc">DigitalOceanTests</span><span class="p">(</span><span class="n">LibcloudTestCase</span><span class="p">):</span> + + <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> + <span class="n">DigitalOceanBaseDriver</span><span class="o">.</span><span class="n">connectionCls</span><span class="o">.</span><span class="n">conn_class</span> <span class="o">=</span> <span class="n">DigitalOceanMockHttp</span> + <span class="n">DigitalOceanMockHttp</span><span class="o">.</span><span class="n">type</span> <span class="o">=</span> <span class="bp">None</span> + <span class="bp">self</span><span class="o">.</span><span class="n">driver</span> <span class="o">=</span> <span class="n">DigitalOceanBaseDriver</span><span class="p">(</span><span class="o">*</span><span class="n">DIGITALOCEAN_v1_PARAMS</span><span class="p">)</span> +</code></pre></div> + +<h1>Check it out!</h1> + +<p>The package is on my personal apache site, you can download it and install it in a virtualenv for testing.</p> + +<p><code>pip install -e http://people.apache.org/~anthonyshaw/libcloud/1.0.0-rc2-requests/apache-libcloud-1.0.0-rc2-requests.zip@feature#egg=apache-libcloud</code></p> + +<p>The hashes are my <a href="http://people.apache.org/%7Eanthonyshaw/libcloud/1.0.0-rc2-requests/">apache space</a></p> + +<p>Have a look at the <a href="https://github.com/apache/libcloud/pull/728/files">PR and the change set</a> for a list of changes</p> + +<h1>What might break?</h1> + +<p>What I'm really looking for is for users of Libcloud to take 15 minutes, an existing (working) libcloud script, install this package in a virtualenv and just validate +that there are no regression bugs with this change.</p> + +<p>I'm particularly sceptical about the storage drivers.</p> + +<p>Once we have enough community feedback, we will propose a vote to merge this into trunk for future release.</p> + +<h2>Credit</h2> + +<p>Credit to dz0ny on IRC for contributing some of the requests patch.</p> + + </div> + + <div class="row section post-meta"> + <div class="col-md-12 post-tags"> + <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/API.html" rel="tag">API</a>, <a href="/blog/tags/tutorial.html" rel="tag">tutorial</a></p> + </div> + </div> +</div> + + + + + <div class="post"> + + <h2><a href="/blog/2016/02/16/new-drivers-deprecated-drivers.html">New compute drivers and deprecated drivers in 1.0</a></h2> + + + + + + <span class="post-date-author">By Anthony Shaw on Feb 16, 2016</span> + + <div class="post-content"> + <p>With Libcloud 1.0.0 around the corner, it's time to have a spring clean of the compute drivers. Granted, it's not spring everywhere -actually +I'm writing from Sydney, Australia where it's definitely summer.</p> + +<p>Looking at the 52 providers in the 0.21.0 release, I have identified 5 providers that are no longer available or open.</p> + +<ul> +<li>CloudFrames + +<ul> +<li>Looks dead - website doesn't work, can't see any references to this online.</li> +<li><code>libcloud.compute.drivers.cloudframes</code></li> +</ul></li> +<li>HP Public Cloud (Helion) + +<ul> +<li><a href="https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2566">Shut down on 31st of January 2016</a></li> +<li><code>libcloud.compute.drivers.hpcloud</code></li> +</ul></li> +<li>IBM SmartCloud Enterprise + +<ul> +<li><a href="http://www.theregister.co.uk/2013/10/31/ibm_to_shutter_smartcloud_enterprise_moves_customers_to_softlayer/">Shut down 2014, customers instructed to move to SoftLayer</a></li> +<li><code>libcloud.compute.drivers.ibm_sce</code></li> +</ul></li> +<li>Ninefold + +<ul> +<li><a href="http://www.itnews.com.au/news/ninefold-to-shut-down-411312">Ninefold shut down in January 2016</a></li> +<li><code>libcloud.compute.drivers.ninefold</code></li> +</ul></li> +<li>Opsource + +<ul> +<li>Dimension Data acquired OpSource in 2012, the Opsource driver is succeeded by the Dimension Data driver.</li> +<li><code>libcloud.compute.drivers.opsource</code></li> +</ul></li> +</ul> + +<h3>Handling deprecated drivers</h3> + +<p>For 1.0.0, we need a clean and user-friendly way of handling deprecated drivers as well as keeping the repository clean from legacy code.</p> + +<p>The most obvious implementation is that calls to <code>get_driver(Provider.NINEFOLD)</code> as an example will return a user error message saying +this provider is no longer supported with a link to a new article and an alternative solution.</p> + +<p>Currently, users trying to instantiate a HPE public cloud driver for example will get a connection error, which is not user friendly.</p> + +<h3>New compute drivers in 1.0.0-pre2</h3> + +<p>The upcoming release, so currently available in trunk contains some new compute drivers.</p> + +<ul> +<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/ntta.html">NTT America Public Cloud</a></li> +<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/internetsolutions.html">Internet Solutions Public Cloud</a></li> +<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/medone.html">Med-1 Public Cloud</a></li> +<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/indosat.html">Indosat Cloud</a></li> +<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/bsnl.html">BSNL IDC Cloud</a></li> +</ul> + +<p>Full change log can be found at <a href="https://github.com/apache/libcloud/blob/trunk/CHANGES.rst">here</a>.</p> + + </div> + + <div class="row section post-meta"> + <div class="col-md-12 post-tags"> + <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/announcement.html" rel="tag">announcement</a></p> + </div> + </div> +</div> + + + </div> <p class="navigation"> @@ -1044,7 +974,7 @@ list of people who contributed to this r <div class="col-lg-3 col-lg-offset-1"> <h2>Archive</h1> <ul> - <li> <a href="/blog/archives/2017/04/"> April 2017</a> (3)</li><li> <a href="/blog/archives/2016/12/"> December 2016</a> (1)</li><li> <a href="/blog/archives/2016/11/"> November 2016</a> (1)</li><li> <a href="/blog/archives/2016/10/"> October 2016</a> (1)</li><li> <a href="/blog/archives/2016/09/"> September 2016</a> (1)</li><li> <a href="/blog/archives/2016/07/"> July 2016</a> (1)</li><li> <a href="/blog/archives/2016/06/"> June 2016</a> (1)</li><li> <a href="/blog/archives/2016/04/"> April 2016</a> (2)</li><li> <a href="/blog/archives/2016/02/"> February 2016</a> (2)</li><li> <a href="/blog/archives/2016/01/"> January 2016</a> (4)</li><li> <a href="/blog/archives/2015/12/"> December 2015</a> (1)</li><li> <a href="/blog/archives/2015/11/"> November 2015</a> (1)</li><li> <a href="/blog/archives/2015/10/"> October 2015</a> (2)</li><li> <a href="/blog/archives/2015/08/"> August 2015</a> (1)</li>< li> <a href="/blog/archives/2015/03/"> March 2015</a> (1)</li><li> <a href="/blog/archives/2015/02/"> February 2015</a> (1)</li><li> <a href="/blog/archives/2014/12/"> December 2014</a> (1)</li><li> <a href="/blog/archives/2014/11/"> November 2014</a> (1)</li><li> <a href="/blog/archives/2014/07/"> July 2014</a> (2)</li><li> <a href="/blog/archives/2014/06/"> June 2014</a> (1)</li><li> <a href="/blog/archives/2014/05/"> May 2014</a> (1)</li><li> <a href="/blog/archives/2014/04/"> April 2014</a> (1)</li><li> <a href="/blog/archives/2014/02/"> February 2014</a> (8)</li><li> <a href="/blog/archives/2014/01/"> January 2014</a> (4)</li><li> <a href="/blog/archives/2013/12/"> December 2013</a> (3)</li><li> <a href="/blog/archives/2013/11/"> November 2013</a> (2)</li><li> <a href="/blog/archives/2013/09/"> September 2013</a> (1)</li><li> <a href="/blog/archives/2013/08/"> August 2013</a> (1)</li><li> <a hre f="/blog/archives/2013/07/"> July 2013</a> (1)</li><li> <a href="/blog/archives/2013/03/"> March 2013</a> (1)</li><li> <a href="/blog/archives/2013/02/"> February 2013</a> (1)</li><li> <a href="/blog/archives/2012/12/"> December 2012</a> (2)</li><li> <a href="/blog/archives/2012/11/"> November 2012</a> (2)</li><li> <a href="/blog/archives/2012/09/"> September 2012</a> (1)</li><li> <a href="/blog/archives/2012/08/"> August 2012</a> (1)</li><li> <a href="/blog/archives/2012/07/"> July 2012</a> (1)</li><li> <a href="/blog/archives/2012/05/"> May 2012</a> (2)</li><li> <a href="/blog/archives/2012/04/"> April 2012</a> (1)</li><li> <a href="/blog/archives/2012/02/"> February 2012</a> (1)</li><li> <a href="/blog/archives/2011/12/"> December 2011</a> (2)</li><li> <a href="/blog/archives/2011/11/"> November 2011</a> (3)</li><li> <a href="/blog/archives/2011/10/"> October 2011</a> (1)</li><li> <a href="/blog/a rchives/2011/09/"> September 2011</a> (1)</li><li> <a href="/blog/archives/2011/07/"> July 2011</a> (1)</li><li> <a href="/blog/archives/2011/06/"> June 2011</a> (1)</li><li> <a href="/blog/archives/2011/05/"> May 2011</a> (1)</li><li> <a href="/blog/archives/2011/02/"> February 2011</a> (1)</li><li> <a href="/blog/archives/2011/01/"> January 2011</a> (1)</li><li> <a href="/blog/archives/2010/10/"> October 2010</a> (1)</li><li> <a href="/blog/archives/2010/05/"> May 2010</a> (1)</li><li> <a href="/blog/archives/2010/02/"> February 2010</a> (1)</li> + <li> <a href="/blog/archives/2017/04/"> April 2017</a> (1)</li><li> <a href="/blog/archives/2016/12/"> December 2016</a> (1)</li><li> <a href="/blog/archives/2016/11/"> November 2016</a> (1)</li><li> <a href="/blog/archives/2016/10/"> October 2016</a> (1)</li><li> <a href="/blog/archives/2016/09/"> September 2016</a> (1)</li><li> <a href="/blog/archives/2016/07/"> July 2016</a> (1)</li><li> <a href="/blog/archives/2016/06/"> June 2016</a> (1)</li><li> <a href="/blog/archives/2016/04/"> April 2016</a> (2)</li><li> <a href="/blog/archives/2016/02/"> February 2016</a> (2)</li><li> <a href="/blog/archives/2016/01/"> January 2016</a> (4)</li><li> <a href="/blog/archives/2015/12/"> December 2015</a> (1)</li><li> <a href="/blog/archives/2015/11/"> November 2015</a> (1)</li><li> <a href="/blog/archives/2015/10/"> October 2015</a> (2)</li><li> <a href="/blog/archives/2015/08/"> August 2015</a> (1)</li>< li> <a href="/blog/archives/2015/03/"> March 2015</a> (1)</li><li> <a href="/blog/archives/2015/02/"> February 2015</a> (1)</li><li> <a href="/blog/archives/2014/12/"> December 2014</a> (1)</li><li> <a href="/blog/archives/2014/11/"> November 2014</a> (1)</li><li> <a href="/blog/archives/2014/07/"> July 2014</a> (2)</li><li> <a href="/blog/archives/2014/06/"> June 2014</a> (1)</li><li> <a href="/blog/archives/2014/05/"> May 2014</a> (1)</li><li> <a href="/blog/archives/2014/04/"> April 2014</a> (1)</li><li> <a href="/blog/archives/2014/02/"> February 2014</a> (8)</li><li> <a href="/blog/archives/2014/01/"> January 2014</a> (4)</li><li> <a href="/blog/archives/2013/12/"> December 2013</a> (3)</li><li> <a href="/blog/archives/2013/11/"> November 2013</a> (2)</li><li> <a href="/blog/archives/2013/09/"> September 2013</a> (1)</li><li> <a href="/blog/archives/2013/08/"> August 2013</a> (1)</li><li> <a hre f="/blog/archives/2013/07/"> July 2013</a> (1)</li><li> <a href="/blog/archives/2013/03/"> March 2013</a> (1)</li><li> <a href="/blog/archives/2013/02/"> February 2013</a> (1)</li><li> <a href="/blog/archives/2012/12/"> December 2012</a> (2)</li><li> <a href="/blog/archives/2012/11/"> November 2012</a> (2)</li><li> <a href="/blog/archives/2012/09/"> September 2012</a> (1)</li><li> <a href="/blog/archives/2012/08/"> August 2012</a> (1)</li><li> <a href="/blog/archives/2012/07/"> July 2012</a> (1)</li><li> <a href="/blog/archives/2012/05/"> May 2012</a> (2)</li><li> <a href="/blog/archives/2012/04/"> April 2012</a> (1)</li><li> <a href="/blog/archives/2012/02/"> February 2012</a> (1)</li><li> <a href="/blog/archives/2011/12/"> December 2011</a> (2)</li><li> <a href="/blog/archives/2011/11/"> November 2011</a> (3)</li><li> <a href="/blog/archives/2011/10/"> October 2011</a> (1)</li><li> <a href="/blog/a rchives/2011/09/"> September 2011</a> (1)</li><li> <a href="/blog/archives/2011/07/"> July 2011</a> (1)</li><li> <a href="/blog/archives/2011/06/"> June 2011</a> (1)</li><li> <a href="/blog/archives/2011/05/"> May 2011</a> (1)</li><li> <a href="/blog/archives/2011/02/"> February 2011</a> (1)</li><li> <a href="/blog/archives/2011/01/"> January 2011</a> (1)</li><li> <a href="/blog/archives/2010/10/"> October 2010</a> (1)</li><li> <a href="/blog/archives/2010/05/"> May 2010</a> (1)</li><li> <a href="/blog/archives/2010/02/"> February 2010</a> (1)</li> </ul> </div> </div> @@ -1075,7 +1005,7 @@ list of people who contributed to this r </div><!-- /.container --> <!-- JavaScript --> - <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' type='text/javascript'></script> + <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' type='text/javascript'></script> Modified: libcloud/site/trunk/generated/blog/page/3/index.html URL: http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/page/3/index.html?rev=1797582&r1=1797581&r2=1797582&view=diff ============================================================================== --- libcloud/site/trunk/generated/blog/page/3/index.html (original) +++ libcloud/site/trunk/generated/blog/page/3/index.html Sun Jun 4 14:37:45 2017 @@ -47,7 +47,7 @@ - <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' rel='stylesheet' type='text/css' /> + <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' rel='stylesheet' type='text/css' /> </head> @@ -97,195 +97,6 @@ <div class="post"> - <h2><a href="/blog/2016/04/06/requests-support.html">Experimental support for the requests package</a></h2> - - - - - - <span class="post-date-author">By Anthony Shaw on Apr 06, 2016</span> - - <div class="post-content"> - <h2>Background</h2> - -<p>I've just pushed a branch of the latest version of libcloud using the popular <code>requests</code> package by Kenneth Reitz instead of our home-rolled HTTP client library.</p> - -<p>This article is for both users and developers of libcloud. If you want to give feedback, please join the developer mailing list.</p> - -<h2>Why?</h2> - -<ul> -<li>requests is the defacto standard - it would be in the standard library but agreed against to allow it to develop faster https://github.com/kennethreitz/requests/issues/2424</li> -<li>it works with python 2.6->3.5</li> -<li>Our SSL experience has a lot to be desired for Windows users, having to download the CA cert package and setting environment variables just to get SSL working</li> -<li>Developers can use requests_mock for deeper integration testing</li> -<li>less code to maintain</li> -<li>the role of libcloud is for cloud abstraction, we provide no value in writing and maintaining our own HTTP client library</li> -</ul> - -<h2>Benefits of requests</h2> - -<p>There are a number of benefits to having a requests package</p> - -<ul> -<li>The client library code is smaller, leaner and simpler.</li> -<li>Requests has built in decompression support, we no longer need to support this</li> -<li>Requests has built in RAW download, upload support, helping with our storage drivers</li> -</ul> - -<h2>Implications of the change</h2> - -<ul> -<li>There are no longer 2 classes (<code>LibcloudHTTPSConnection</code> and <code>LibcloudHTTPConnection</code>) to be provided to each driver, they are now 1 class - <code>LibcloudConnection</code>. You probably won't notice this because it is a property of the <code>Connection</code> class, but -if you are developing or extending functionality then it is implicated.</li> -<li>Unit tests will look slightly different (see below)</li> -<li>This change broke 4200 unit tests (out of 6340)! I've since fixed them all since they were coupled to the original implementation, but now I don't know if all of tests are valid.</li> -</ul> - -<h2>Testing with requests</h2> - -<p>Unit tests that were written like this:</p> - -<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="k">class</span> <span class="nc">DigitalOceanTests</span><span class="p">(</span><span class="n">LibcloudTestCase</span><span class="p">):</span> - - <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> - <span class="n">DigitalOceanBaseDriver</span><span class="o">.</span><span class="n">connectionCls</span><span class="o">.</span><span class="n">conn_classes</span> <span class="o">=</span> \ - <span class="p">(</span><span class="bp">None</span><span class="p">,</span> <span class="n">DigitalOceanMockHttp</span><span class="p">)</span> - <span class="n">DigitalOceanMockHttp</span><span class="o">.</span><span class="n">type</span> <span class="o">=</span> <span class="bp">None</span> - <span class="bp">self</span><span class="o">.</span><span class="n">driver</span> <span class="o">=</span> <span class="n">DigitalOceanBaseDriver</span><span class="p">(</span><span class="o">*</span><span class="n">DIGITALOCEAN_v1_PARAMS</span><span class="p">)</span> -</code></pre></div> - -<p>Because of the change have been modified to (I updated all of them - so this is just for future reference)</p> - -<div class="highlight"><pre><code class="python language-python" data-lang="python"><span class="k">class</span> <span class="nc">DigitalOceanTests</span><span class="p">(</span><span class="n">LibcloudTestCase</span><span class="p">):</span> - - <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> - <span class="n">DigitalOceanBaseDriver</span><span class="o">.</span><span class="n">connectionCls</span><span class="o">.</span><span class="n">conn_class</span> <span class="o">=</span> <span class="n">DigitalOceanMockHttp</span> - <span class="n">DigitalOceanMockHttp</span><span class="o">.</span><span class="n">type</span> <span class="o">=</span> <span class="bp">None</span> - <span class="bp">self</span><span class="o">.</span><span class="n">driver</span> <span class="o">=</span> <span class="n">DigitalOceanBaseDriver</span><span class="p">(</span><span class="o">*</span><span class="n">DIGITALOCEAN_v1_PARAMS</span><span class="p">)</span> -</code></pre></div> - -<h1>Check it out!</h1> - -<p>The package is on my personal apache site, you can download it and install it in a virtualenv for testing.</p> - -<p><code>pip install -e http://people.apache.org/~anthonyshaw/libcloud/1.0.0-rc2-requests/apache-libcloud-1.0.0-rc2-requests.zip@feature#egg=apache-libcloud</code></p> - -<p>The hashes are my <a href="http://people.apache.org/%7Eanthonyshaw/libcloud/1.0.0-rc2-requests/">apache space</a></p> - -<p>Have a look at the <a href="https://github.com/apache/libcloud/pull/728/files">PR and the change set</a> for a list of changes</p> - -<h1>What might break?</h1> - -<p>What I'm really looking for is for users of Libcloud to take 15 minutes, an existing (working) libcloud script, install this package in a virtualenv and just validate -that there are no regression bugs with this change.</p> - -<p>I'm particularly sceptical about the storage drivers.</p> - -<p>Once we have enough community feedback, we will propose a vote to merge this into trunk for future release.</p> - -<h2>Credit</h2> - -<p>Credit to dz0ny on IRC for contributing some of the requests patch.</p> - - </div> - - <div class="row section post-meta"> - <div class="col-md-12 post-tags"> - <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/API.html" rel="tag">API</a>, <a href="/blog/tags/tutorial.html" rel="tag">tutorial</a></p> - </div> - </div> -</div> - - - - - <div class="post"> - - <h2><a href="/blog/2016/02/16/new-drivers-deprecated-drivers.html">New compute drivers and deprecated drivers in 1.0</a></h2> - - - - - - <span class="post-date-author">By Anthony Shaw on Feb 16, 2016</span> - - <div class="post-content"> - <p>With Libcloud 1.0.0 around the corner, it's time to have a spring clean of the compute drivers. Granted, it's not spring everywhere -actually -I'm writing from Sydney, Australia where it's definitely summer.</p> - -<p>Looking at the 52 providers in the 0.21.0 release, I have identified 5 providers that are no longer available or open.</p> - -<ul> -<li>CloudFrames - -<ul> -<li>Looks dead - website doesn't work, can't see any references to this online.</li> -<li><code>libcloud.compute.drivers.cloudframes</code></li> -</ul></li> -<li>HP Public Cloud (Helion) - -<ul> -<li><a href="https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2566">Shut down on 31st of January 2016</a></li> -<li><code>libcloud.compute.drivers.hpcloud</code></li> -</ul></li> -<li>IBM SmartCloud Enterprise - -<ul> -<li><a href="http://www.theregister.co.uk/2013/10/31/ibm_to_shutter_smartcloud_enterprise_moves_customers_to_softlayer/">Shut down 2014, customers instructed to move to SoftLayer</a></li> -<li><code>libcloud.compute.drivers.ibm_sce</code></li> -</ul></li> -<li>Ninefold - -<ul> -<li><a href="http://www.itnews.com.au/news/ninefold-to-shut-down-411312">Ninefold shut down in January 2016</a></li> -<li><code>libcloud.compute.drivers.ninefold</code></li> -</ul></li> -<li>Opsource - -<ul> -<li>Dimension Data acquired OpSource in 2012, the Opsource driver is succeeded by the Dimension Data driver.</li> -<li><code>libcloud.compute.drivers.opsource</code></li> -</ul></li> -</ul> - -<h3>Handling deprecated drivers</h3> - -<p>For 1.0.0, we need a clean and user-friendly way of handling deprecated drivers as well as keeping the repository clean from legacy code.</p> - -<p>The most obvious implementation is that calls to <code>get_driver(Provider.NINEFOLD)</code> as an example will return a user error message saying -this provider is no longer supported with a link to a new article and an alternative solution.</p> - -<p>Currently, users trying to instantiate a HPE public cloud driver for example will get a connection error, which is not user friendly.</p> - -<h3>New compute drivers in 1.0.0-pre2</h3> - -<p>The upcoming release, so currently available in trunk contains some new compute drivers.</p> - -<ul> -<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/ntta.html">NTT America Public Cloud</a></li> -<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/internetsolutions.html">Internet Solutions Public Cloud</a></li> -<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/medone.html">Med-1 Public Cloud</a></li> -<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/indosat.html">Indosat Cloud</a></li> -<li><a href="http://libcloud.readthedocs.org/en/latest/compute/drivers/bsnl.html">BSNL IDC Cloud</a></li> -</ul> - -<p>Full change log can be found at <a href="https://github.com/apache/libcloud/blob/trunk/CHANGES.rst">here</a>.</p> - - </div> - - <div class="row section post-meta"> - <div class="col-md-12 post-tags"> - <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/announcement.html" rel="tag">announcement</a></p> - </div> - </div> -</div> - - - - - <div class="post"> - <h2><a href="/blog/2016/02/05/libcloud-containers-example.html">Using the container abstraction API in 1.0.0-pre1</a></h2> @@ -755,6 +566,170 @@ list of people who contributed to this r + + <div class="post"> + + <h2><a href="/blog/2016/01/19/libcloud-0-20-1-released.html">Libcloud 0.20.1 released</a></h2> + + + + + + <span class="post-date-author">By Eric Johnson on Jan 19, 2016</span> + + <div class="post-content"> + <p>We are pleased to announce the release of Libcloud 0.20.1.</p> + +<p>This is a bug-fix release in the 0.20 series.</p> + +<h3>Release highlights</h3> + +<ul> +<li>Allow for old and new style service accounts for GCE driver</li> +<li>Fix syntax error with DimensionDataStatus object</li> +<li>Fix bug in public IP addition command for DimensionData driver</li> +<li>Fix error with proxy_url with vCloud Compute driver.</li> +<li>Fix with hasattr for Rackspace DNS driver.</li> +</ul> + +<p>Full change log can be found at <a href="https://libcloud.readthedocs.org/en/latest/changelog.html">here</a>.</p> + +<h3>Download</h3> + +<p>The release can can be downloaded from +<a href="https://libcloud.apache.org/downloads.html">https://libcloud.apache.org/downloads.html</a> or installed using pip:</p> + +<pre> +pip install apache-libcloud==0.20.1 +</pre> + +<h3>Upgrading</h3> + +<p>If you have installed Libcloud using pip you can also use it to upgrade it:</p> + +<pre> +pip install --upgrade apache-libcloud==0.20.1 +</pre> + +<h3>Upgrade notes</h3> + +<p>A page which describes backward incompatible or semi-incompatible +changes and how to preserve the old behavior when this is possible +can be found at <a href="https://libcloud.readthedocs.org/en/latest/upgrade_notes.html">https://libcloud.readthedocs.org/en/latest/upgrade_notes.html</a></p> + +<h3>Documentation</h3> + +<p>Regular and API documentation is available at <a href="https://libcloud.readthedocs.org/en/latest/">https://libcloud.readthedocs.org/en/latest/</a></p> + +<h3>Bugs / Issues</h3> + +<p>If you find any bug or issue, please report it on our issue tracker +<a href="https://issues.apache.org/jira/browse/LIBCLOUD">https://issues.apache.org/jira/browse/LIBCLOUD</a>. +Don't forget to attach an example and / or test which reproduces your +problem.</p> + +<h3>Thanks</h3> + +<p>Thanks to everyone who contributed and made this release possible! Full +list of people who contributed to this release can be found in the +<a href="https://libcloud.readthedocs.org/en/latest/changelog.html">CHANGES file</a>.</p> + + </div> + + <div class="row section post-meta"> + <div class="col-md-12 post-tags"> + <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/release%20announcement.html" rel="tag">release announcement</a></p> + </div> + </div> +</div> + + + + + <div class="post"> + + <h2><a href="/blog/2016/01/14/notice-for-linode-users.html">Notice for Linode users</a></h2> + + + + + + <span class="post-date-author">By Tomaz Muraus <span style="display:none">(<a href="https://plus.google.com/+TomazMuraus?rel=author">Google+</a>)</span>on Jan 14, 2016</span> + + <div class="post-content"> + <p>This is an announcement for users of the Linode driver for Libcloud who might +have started experiencing issues recently.</p> + +<h2>Background</h2> + +<p>A couple of Libcloud users have reported that they have recently started +experiencing issues when talking to the Linode API using Libcloud. They have +received messages similar to the one shown below.</p> + +<pre> +socket.error: [Errno 104] Connection reset by peer +</pre> + +<p>It turns out that the issue is related to the used SSL / TLS version. For +compatibility and security reasons (Libcloud also supports older Python +versions), Libcloud uses TLS v1.0 by default.</p> + +<p>Linode recently dropped support for TLS v1.0 and it now only support TLS >= +v1.1. This means Libcloud won't work out of the box anymore.</p> + +<h2>Solution</h2> + +<p>If you are experiencing this issue, you should update your code to use TLS v1.2 +or TLS v1.1 as shown below.</p> + +<div class="highlight"><pre><code class="text language-text" data-lang="text">import ssl + +import libcloud.security +libcloud.security.SSL_VERSION = ssl.PROTOCOL_TLSv1_1 +# or even better if your system and Python version supports TLS v1.2 +libcloud.security.SSL_VERSION = ssl.PROTOCOL_TLSv1_2 + +# Instantiate and work with the Linode driver here... +</code></pre></div> + +<p>Keep in mind that for this to work you need to have a recent version of OpenSSL +installed on your system and you need to use Python >= 3.4 or Python 2.7.9.</p> + +<p>For more details please see recently updated <a href="https://libcloud.readthedocs.org/en/latest/other/ssl-certificate-validation.html#changing-used-ssl-tls-version">documentation</a>. If you are +still experiencing issues or have any questions, please feel free to reach +us via the mailing list or IRC.</p> + +<p>Note: Even if you are not experiencing any issues, it's generally a good idea +to use the highest version of TLS supported by your system and the provider you +use.</p> + +<h2>Quick note on ssl.PROTOCOL_SSLv23</h2> + +<p>Python uses <code>ssl.PROTOCOL_SSLv23</code> constant by default. When this constant is +used, it will let client known to pick the highest protocol version which both +the client and server support (it will be selecting between SSL v3.0, TLS v1.0, +TLS v1.1 and TLS v1.2).</p> + +<p>We use <code>ssl.PROTOCOL_TLSv1</code> instead of <code>ssl.PROTOCOL_SSLv23</code> for security +and compatibility reasons. SSL v3.0 is considered broken and unsafe and using +<code>ssl.PROTOCOL_SSLv23</code> can result in an increased risk for a downgrade attack.</p> + +<h3>Thanks</h3> + +<p>Special thanks to Jacob Riley, Steve V, Heath Naylor and everyone from +<a href="https://issues.apache.org/jira/browse/LIBCLOUD-791">LIBCLOUD-791</a> who helped debug and track down the root cause of this issue.</p> + + </div> + + <div class="row section post-meta"> + <div class="col-md-12 post-tags"> + <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a href="/blog/tags/linode.html" rel="tag">linode</a>, <a href="/blog/tags/announcement.html" rel="tag">announcement</a></p> + </div> + </div> +</div> + + + </div> <p class="navigation"> @@ -779,7 +754,7 @@ list of people who contributed to this r <div class="col-lg-3 col-lg-offset-1"> <h2>Archive</h1> <ul> - <li> <a href="/blog/archives/2017/04/"> April 2017</a> (3)</li><li> <a href="/blog/archives/2016/12/"> December 2016</a> (1)</li><li> <a href="/blog/archives/2016/11/"> November 2016</a> (1)</li><li> <a href="/blog/archives/2016/10/"> October 2016</a> (1)</li><li> <a href="/blog/archives/2016/09/"> September 2016</a> (1)</li><li> <a href="/blog/archives/2016/07/"> July 2016</a> (1)</li><li> <a href="/blog/archives/2016/06/"> June 2016</a> (1)</li><li> <a href="/blog/archives/2016/04/"> April 2016</a> (2)</li><li> <a href="/blog/archives/2016/02/"> February 2016</a> (2)</li><li> <a href="/blog/archives/2016/01/"> January 2016</a> (4)</li><li> <a href="/blog/archives/2015/12/"> December 2015</a> (1)</li><li> <a href="/blog/archives/2015/11/"> November 2015</a> (1)</li><li> <a href="/blog/archives/2015/10/"> October 2015</a> (2)</li><li> <a href="/blog/archives/2015/08/"> August 2015</a> (1)</li>< li> <a href="/blog/archives/2015/03/"> March 2015</a> (1)</li><li> <a href="/blog/archives/2015/02/"> February 2015</a> (1)</li><li> <a href="/blog/archives/2014/12/"> December 2014</a> (1)</li><li> <a href="/blog/archives/2014/11/"> November 2014</a> (1)</li><li> <a href="/blog/archives/2014/07/"> July 2014</a> (2)</li><li> <a href="/blog/archives/2014/06/"> June 2014</a> (1)</li><li> <a href="/blog/archives/2014/05/"> May 2014</a> (1)</li><li> <a href="/blog/archives/2014/04/"> April 2014</a> (1)</li><li> <a href="/blog/archives/2014/02/"> February 2014</a> (8)</li><li> <a href="/blog/archives/2014/01/"> January 2014</a> (4)</li><li> <a href="/blog/archives/2013/12/"> December 2013</a> (3)</li><li> <a href="/blog/archives/2013/11/"> November 2013</a> (2)</li><li> <a href="/blog/archives/2013/09/"> September 2013</a> (1)</li><li> <a href="/blog/archives/2013/08/"> August 2013</a> (1)</li><li> <a hre f="/blog/archives/2013/07/"> July 2013</a> (1)</li><li> <a href="/blog/archives/2013/03/"> March 2013</a> (1)</li><li> <a href="/blog/archives/2013/02/"> February 2013</a> (1)</li><li> <a href="/blog/archives/2012/12/"> December 2012</a> (2)</li><li> <a href="/blog/archives/2012/11/"> November 2012</a> (2)</li><li> <a href="/blog/archives/2012/09/"> September 2012</a> (1)</li><li> <a href="/blog/archives/2012/08/"> August 2012</a> (1)</li><li> <a href="/blog/archives/2012/07/"> July 2012</a> (1)</li><li> <a href="/blog/archives/2012/05/"> May 2012</a> (2)</li><li> <a href="/blog/archives/2012/04/"> April 2012</a> (1)</li><li> <a href="/blog/archives/2012/02/"> February 2012</a> (1)</li><li> <a href="/blog/archives/2011/12/"> December 2011</a> (2)</li><li> <a href="/blog/archives/2011/11/"> November 2011</a> (3)</li><li> <a href="/blog/archives/2011/10/"> October 2011</a> (1)</li><li> <a href="/blog/a rchives/2011/09/"> September 2011</a> (1)</li><li> <a href="/blog/archives/2011/07/"> July 2011</a> (1)</li><li> <a href="/blog/archives/2011/06/"> June 2011</a> (1)</li><li> <a href="/blog/archives/2011/05/"> May 2011</a> (1)</li><li> <a href="/blog/archives/2011/02/"> February 2011</a> (1)</li><li> <a href="/blog/archives/2011/01/"> January 2011</a> (1)</li><li> <a href="/blog/archives/2010/10/"> October 2010</a> (1)</li><li> <a href="/blog/archives/2010/05/"> May 2010</a> (1)</li><li> <a href="/blog/archives/2010/02/"> February 2010</a> (1)</li> + <li> <a href="/blog/archives/2017/04/"> April 2017</a> (1)</li><li> <a href="/blog/archives/2016/12/"> December 2016</a> (1)</li><li> <a href="/blog/archives/2016/11/"> November 2016</a> (1)</li><li> <a href="/blog/archives/2016/10/"> October 2016</a> (1)</li><li> <a href="/blog/archives/2016/09/"> September 2016</a> (1)</li><li> <a href="/blog/archives/2016/07/"> July 2016</a> (1)</li><li> <a href="/blog/archives/2016/06/"> June 2016</a> (1)</li><li> <a href="/blog/archives/2016/04/"> April 2016</a> (2)</li><li> <a href="/blog/archives/2016/02/"> February 2016</a> (2)</li><li> <a href="/blog/archives/2016/01/"> January 2016</a> (4)</li><li> <a href="/blog/archives/2015/12/"> December 2015</a> (1)</li><li> <a href="/blog/archives/2015/11/"> November 2015</a> (1)</li><li> <a href="/blog/archives/2015/10/"> October 2015</a> (2)</li><li> <a href="/blog/archives/2015/08/"> August 2015</a> (1)</li>< li> <a href="/blog/archives/2015/03/"> March 2015</a> (1)</li><li> <a href="/blog/archives/2015/02/"> February 2015</a> (1)</li><li> <a href="/blog/archives/2014/12/"> December 2014</a> (1)</li><li> <a href="/blog/archives/2014/11/"> November 2014</a> (1)</li><li> <a href="/blog/archives/2014/07/"> July 2014</a> (2)</li><li> <a href="/blog/archives/2014/06/"> June 2014</a> (1)</li><li> <a href="/blog/archives/2014/05/"> May 2014</a> (1)</li><li> <a href="/blog/archives/2014/04/"> April 2014</a> (1)</li><li> <a href="/blog/archives/2014/02/"> February 2014</a> (8)</li><li> <a href="/blog/archives/2014/01/"> January 2014</a> (4)</li><li> <a href="/blog/archives/2013/12/"> December 2013</a> (3)</li><li> <a href="/blog/archives/2013/11/"> November 2013</a> (2)</li><li> <a href="/blog/archives/2013/09/"> September 2013</a> (1)</li><li> <a href="/blog/archives/2013/08/"> August 2013</a> (1)</li><li> <a hre f="/blog/archives/2013/07/"> July 2013</a> (1)</li><li> <a href="/blog/archives/2013/03/"> March 2013</a> (1)</li><li> <a href="/blog/archives/2013/02/"> February 2013</a> (1)</li><li> <a href="/blog/archives/2012/12/"> December 2012</a> (2)</li><li> <a href="/blog/archives/2012/11/"> November 2012</a> (2)</li><li> <a href="/blog/archives/2012/09/"> September 2012</a> (1)</li><li> <a href="/blog/archives/2012/08/"> August 2012</a> (1)</li><li> <a href="/blog/archives/2012/07/"> July 2012</a> (1)</li><li> <a href="/blog/archives/2012/05/"> May 2012</a> (2)</li><li> <a href="/blog/archives/2012/04/"> April 2012</a> (1)</li><li> <a href="/blog/archives/2012/02/"> February 2012</a> (1)</li><li> <a href="/blog/archives/2011/12/"> December 2011</a> (2)</li><li> <a href="/blog/archives/2011/11/"> November 2011</a> (3)</li><li> <a href="/blog/archives/2011/10/"> October 2011</a> (1)</li><li> <a href="/blog/a rchives/2011/09/"> September 2011</a> (1)</li><li> <a href="/blog/archives/2011/07/"> July 2011</a> (1)</li><li> <a href="/blog/archives/2011/06/"> June 2011</a> (1)</li><li> <a href="/blog/archives/2011/05/"> May 2011</a> (1)</li><li> <a href="/blog/archives/2011/02/"> February 2011</a> (1)</li><li> <a href="/blog/archives/2011/01/"> January 2011</a> (1)</li><li> <a href="/blog/archives/2010/10/"> October 2010</a> (1)</li><li> <a href="/blog/archives/2010/05/"> May 2010</a> (1)</li><li> <a href="/blog/archives/2010/02/"> February 2010</a> (1)</li> </ul> </div> </div> @@ -810,7 +785,7 @@ list of people who contributed to this r </div><!-- /.container --> <!-- JavaScript --> - <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' type='text/javascript'></script> + <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' type='text/javascript'></script>
