This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch gh-pages
in repository https://gitbox.apache.org/repos/asf/iceberg-rust.git
The following commit(s) were added to refs/heads/gh-pages by this push:
new 9ae89bf deploy: 001dfa7077618b258fb7d5dff451a9fcce04c031
9ae89bf is described below
commit 9ae89bf796e169a4900d18d3cf62f8fb8c82f4a4
Author: liurenjie1024 <[email protected]>
AuthorDate: Wed Jul 31 01:55:44 2024 +0000
deploy: 001dfa7077618b258fb7d5dff451a9fcce04c031
---
404.html | 2 +-
CONTRIBUTING.html | 9 +--
api.html | 2 +-
api/iceberg_test_utils/docker/index.html | 2 +-
.../docker/struct.DockerCompose.html | 6 +-
api/search-index.js | 2 +-
api/src/iceberg_test_utils/cmd.rs.html | 40 ++++++++++--
api/src/iceberg_test_utils/docker.rs.html | 58 ++++++++++++++---
download.html | 2 +-
index.html | 2 +-
install.html | 2 +-
introduction.html | 2 +-
print.html | 10 +--
index.html => reference/podman.html | 75 +++++++++-------------
reference/setup_gpg.html | 6 +-
release.html | 6 +-
searchindex.js | 2 +-
searchindex.json | 2 +-
18 files changed, 144 insertions(+), 86 deletions(-)
diff --git a/404.html b/404.html
index 7b59b74..b3554c9 100644
--- a/404.html
+++ b/404.html
@@ -89,7 +89,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html">API</a></li><li class="chapter-item expanded affix "><li
class="part-title">Developer Gui [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html">API</a></li><li class="chapter-item expanded affix "><li
class="part-title">Developer Gui [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
diff --git a/CONTRIBUTING.html b/CONTRIBUTING.html
index 2812447..26bd30e 100644
--- a/CONTRIBUTING.html
+++ b/CONTRIBUTING.html
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html">API</a></li><li class="chapter-item expanded affix "><li
class="part-title">Developer Gui [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html">API</a></li><li class="chapter-item expanded affix "><li
class="part-title">Developer Gui [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
@@ -266,10 +266,11 @@ refactor: Polish the implementation of read parquet
<pre><code class="language-shell">$ cargo version
cargo 1.69.0 (6e9a83356 2023-04-12)
</code></pre>
-<h4 id="install-docker"><a class="header" href="#install-docker">Install
docker</a></h4>
-<p>Currently, iceberg-rust uses docker to set up environment for integration
tests.</p>
-<p>You can learn how to install docker from <a
href="https://docs.docker.com/get-docker/">here</a>.</p>
+<h4 id="install-docker-or-podman"><a class="header"
href="#install-docker-or-podman">Install Docker or Podman</a></h4>
+<p>Currently, iceberg-rust uses Docker to set up environment for integration
tests. Podman is also supported.</p>
+<p>You can learn how to install Docker from <a
href="https://docs.docker.com/get-docker/">here</a>.</p>
<p>For macos users, you can install <a
href="https://orbstack.dev/">OrbStack</a> as a docker alternative.</p>
+<p>For podman users, refer to <a href="docs/contributing/podman.html">Using
Podman instead of Docker</a></p>
<h2 id="build"><a class="header" href="#build">Build</a></h2>
<ul>
<li>To compile the project: <code>make build</code></li>
diff --git a/api.html b/api.html
index 9ce60aa..7858865 100644
--- a/api.html
+++ b/api.html
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html" class="active">API</a></li><li class="chapter-item expanded
affix "><li class="part-title [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html" class="active">API</a></li><li class="chapter-item expanded
affix "><li class="part-title [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
diff --git a/api/iceberg_test_utils/docker/index.html
b/api/iceberg_test_utils/docker/index.html
index 2d4c2c5..f462271 100644
--- a/api/iceberg_test_utils/docker/index.html
+++ b/api/iceberg_test_utils/docker/index.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="API
documentation for the Rust `docker` mod in crate
`iceberg_test_utils`."><title>iceberg_test_utils::docker -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141
[...]
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="API
documentation for the Rust `docker` mod in crate
`iceberg_test_utils`."><title>iceberg_test_utils::docker -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141
[...]
\ No newline at end of file
diff --git a/api/iceberg_test_utils/docker/struct.DockerCompose.html
b/api/iceberg_test_utils/docker/struct.DockerCompose.html
index 9e41b71..c733032 100644
--- a/api/iceberg_test_utils/docker/struct.DockerCompose.html
+++ b/api/iceberg_test_utils/docker/struct.DockerCompose.html
@@ -1,9 +1,9 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="A utility
to manage the lifecycle of `docker compose`."><title>DockerCompose in
iceberg_test_utils::docker -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0
[...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="A utility
to manage the lifecycle of `docker compose`."><title>DockerCompose in
iceberg_test_utils::docker -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0
[...]
<p>It will start <code>docker compose</code> when calling the <code>run</code>
method and will be stopped via <a
href="https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html"
title="trait core::ops::drop::Drop"><code>Drop</code></a>.</p>
-</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-DockerCompose"
class="impl"><a class="src rightside"
href="../../src/iceberg_test_utils/docker.rs.html#31-92">source</a><a
href="#impl-DockerCompose" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.DockerCompose.html" titl [...]
+</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-DockerCompose"
class="impl"><a class="src rightside"
href="../../src/iceberg_test_utils/docker.rs.html#32-113">source</a><a
href="#impl-DockerCompose" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.DockerCompose.html" tit [...]
project_name: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html"
title="trait alloc::string::ToString">ToString</a>,
docker_compose_dir: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html"
title="trait alloc::string::ToString">ToString</a>,
-) -> Self</h4></section><section id="method.project_name" class="method"><a
class="src rightside"
href="../../src/iceberg_test_utils/docker.rs.html#39-41">source</a><h4
class="code-header">pub fn <a href="#method.project_name"
class="fn">project_name</a>(&self) -> &<a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></h4></section><section
id="method.run" class="method"><a class="src rightside"
href="../../src/iceberg_test_utils/docke [...]
+) -> Self</h4></section><section id="method.project_name" class="method"><a
class="src rightside"
href="../../src/iceberg_test_utils/docker.rs.html#40-42">source</a><h4
class="code-header">pub fn <a href="#method.project_name"
class="fn">project_name</a>(&self) -> &<a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></h4></section><section
id="method.run" class="method"><a class="src rightside"
href="../../src/iceberg_test_utils/docke [...]
T: 'static + ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.type_id" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a
href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href
[...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a
href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a
href="https:/ [...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow_mut" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a
href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a
href= [...]
diff --git a/api/search-index.js b/api/search-index.js
index 131725f..7e1ee1e 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -5,7 +5,7 @@ var searchIndex = new Map(JSON.parse('[\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","drop_namespace","drop_table","fmt","from","get_namespace","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[24,"iceberg_catalog_memory::catalog"],[25,"iceberg::catalog"],[26,"alloc::string"]
[...]
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_names
[...]
["iceberg_datafusion",{"t":"FNNNNHNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","from","from_datafusion_error","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[15,"iceberg_datafusion::catalog"],[16,"core::any"],[17,"datafusion_common::error"],[18,"iceberg::error"],[19,"datafusion::catalog::schema"],[20,"alloc::sync"],[21,"core::option"],[22,"alloc::string"],[23,"alloc::vec"],[24
[...]
-["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::convert"],[20,"core::result"],[21,"core::any"],[22,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{
[...]
+["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6
[...]
]'));
if (typeof exports !== 'undefined') exports.searchIndex = searchIndex;
else if (window.initSearch) window.initSearch(searchIndex);
diff --git a/api/src/iceberg_test_utils/cmd.rs.html
b/api/src/iceberg_test_utils/cmd.rs.html
index 3a4595f..1510178 100644
--- a/api/src/iceberg_test_utils/cmd.rs.html
+++ b/api/src/iceberg_test_utils/cmd.rs.html
@@ -39,6 +39,19 @@
<a href="#39" id="39">39</a>
<a href="#40" id="40">40</a>
<a href="#41" id="41">41</a>
+<a href="#42" id="42">42</a>
+<a href="#43" id="43">43</a>
+<a href="#44" id="44">44</a>
+<a href="#45" id="45">45</a>
+<a href="#46" id="46">46</a>
+<a href="#47" id="47">47</a>
+<a href="#48" id="48">48</a>
+<a href="#49" id="49">49</a>
+<a href="#50" id="50">50</a>
+<a href="#51" id="51">51</a>
+<a href="#52" id="52">52</a>
+<a href="#53" id="53">53</a>
+<a href="#54" id="54">54</a>
</pre></div><pre class="rust"><code><span class="comment">// Licensed to the
Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -69,15 +82,28 @@
}
}
-<span class="kw">pub fn </span>get_cmd_output(<span class="kw-2">mut
</span>cmd: Command, desc: <span class="kw">impl </span>ToString) -> String {
+<span class="kw">pub fn </span>get_cmd_output_result(<span class="kw-2">mut
</span>cmd: Command, desc: <span class="kw">impl </span>ToString) -> <span
class="prelude-ty">Result</span><String, String> {
<span class="kw">let </span>desc = desc.to_string();
<span class="macro">log::info!</span>(<span class="string">"Starting to
{}, command: {:?}"</span>, <span class="kw-2">&</span>desc, cmd);
- <span class="kw">let </span>output = cmd.output().unwrap();
- <span class="kw">if </span>output.status.success() {
- <span class="macro">log::info!</span>(<span class="string">"{}
succeed!"</span>, desc);
- String::from_utf8(output.stdout).unwrap()
- } <span class="kw">else </span>{
- <span class="macro">panic!</span>(<span class="string">"{} failed:
{:?}"</span>, desc, output.status);
+ <span class="kw">let </span>result = cmd.output();
+ <span class="kw">match </span>result {
+ <span class="prelude-val">Ok</span>(output) => {
+ <span class="kw">if </span>output.status.success() {
+ <span class="macro">log::info!</span>(<span class="string">"{}
succeed!"</span>, desc);
+ <span
class="prelude-val">Ok</span>(String::from_utf8(output.stdout).unwrap())
+ } <span class="kw">else </span>{
+ <span class="prelude-val">Err</span>(<span
class="macro">format!</span>(<span class="string">"{} failed with rc:
{:?}"</span>, desc, output.status))
+ }
+ }
+ <span class="prelude-val">Err</span>(err) => <span
class="prelude-val">Err</span>(<span class="macro">format!</span>(<span
class="string">"{} failed with error: {}"</span>, desc, { err })),
+ }
+}
+
+<span class="kw">pub fn </span>get_cmd_output(cmd: Command, desc: <span
class="kw">impl </span>ToString) -> String {
+ <span class="kw">let </span>result = get_cmd_output_result(cmd, desc);
+ <span class="kw">match </span>result {
+ <span class="prelude-val">Ok</span>(output_str) => output_str,
+ <span class="prelude-val">Err</span>(err) => <span
class="macro">panic!</span>(<span class="string">"{}"</span>, err),
}
}
</code></pre></div></section></main></body></html>
\ No newline at end of file
diff --git a/api/src/iceberg_test_utils/docker.rs.html
b/api/src/iceberg_test_utils/docker.rs.html
index f89a7df..fba12bd 100644
--- a/api/src/iceberg_test_utils/docker.rs.html
+++ b/api/src/iceberg_test_utils/docker.rs.html
@@ -114,6 +114,27 @@
<a href="#114" id="114">114</a>
<a href="#115" id="115">115</a>
<a href="#116" id="116">116</a>
+<a href="#117" id="117">117</a>
+<a href="#118" id="118">118</a>
+<a href="#119" id="119">119</a>
+<a href="#120" id="120">120</a>
+<a href="#121" id="121">121</a>
+<a href="#122" id="122">122</a>
+<a href="#123" id="123">123</a>
+<a href="#124" id="124">124</a>
+<a href="#125" id="125">125</a>
+<a href="#126" id="126">126</a>
+<a href="#127" id="127">127</a>
+<a href="#128" id="128">128</a>
+<a href="#129" id="129">129</a>
+<a href="#130" id="130">130</a>
+<a href="#131" id="131">131</a>
+<a href="#132" id="132">132</a>
+<a href="#133" id="133">133</a>
+<a href="#134" id="134">134</a>
+<a href="#135" id="135">135</a>
+<a href="#136" id="136">136</a>
+<a href="#137" id="137">137</a>
</pre></div><pre class="rust"><code><span class="comment">// Licensed to the
Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -131,9 +152,10 @@
// specific language governing permissions and limitations
// under the License.
-</span><span class="kw">use </span>std::process::Command;
+</span><span class="kw">use </span>std::net::IpAddr;
+<span class="kw">use </span>std::process::Command;
-<span class="kw">use </span><span
class="kw">crate</span>::cmd::{get_cmd_output, run_command};
+<span class="kw">use </span><span
class="kw">crate</span>::cmd::{get_cmd_output, get_cmd_output_result,
run_command};
<span class="doccomment">/// A utility to manage the lifecycle of `docker
compose`.
///
@@ -162,9 +184,22 @@
.arg(<span class="string">"--format"</span>)
.arg(<span class="string">"{{.OSType}}/{{.Architecture}}"</span>);
- get_cmd_output(cmd, <span class="string">"Get os
arch"</span>.to_string())
- .trim()
- .to_string()
+ <span class="kw">let </span>result = get_cmd_output_result(cmd, <span
class="string">"Get os arch"</span>.to_string());
+ <span class="kw">match </span>result {
+ <span class="prelude-val">Ok</span>(value) =>
value.trim().to_string(),
+ <span class="prelude-val">Err</span>(_err) => {
+ <span class="comment">// docker/podman do not consistently
place OSArch info in the same json path across OS and versions
+ // Below tries an alternative path if the above path fails
+ </span><span class="kw">let </span><span class="kw-2">mut
</span>alt_cmd = Command::new(<span class="string">"docker"</span>);
+ alt_cmd
+ .arg(<span class="string">"info"</span>)
+ .arg(<span class="string">"--format"</span>)
+ .arg(<span class="string">"{{.Version.OsArch}}"</span>);
+ get_cmd_output(alt_cmd, <span class="string">"Get os
arch"</span>.to_string())
+ .trim()
+ .to_string()
+ }
+ }
}
<span class="kw">pub fn </span>run(<span class="kw-2">&</span><span
class="self">self</span>) {
@@ -193,7 +228,7 @@
)
}
- <span class="kw">pub fn </span>get_container_ip(<span
class="kw-2">&</span><span class="self">self</span>, service_name: <span
class="kw">impl </span>AsRef<str>) -> String {
+ <span class="kw">pub fn </span>get_container_ip(<span
class="kw-2">&</span><span class="self">self</span>, service_name: <span
class="kw">impl </span>AsRef<str>) -> IpAddr {
<span class="kw">let </span>container_name = <span
class="macro">format!</span>(<span class="string">"{}-{}-1"</span>, <span
class="self">self</span>.project_name, service_name.as_ref());
<span class="kw">let </span><span class="kw-2">mut </span>cmd =
Command::new(<span class="string">"docker"</span>);
cmd.arg(<span class="string">"inspect"</span>)
@@ -201,9 +236,16 @@
.arg(<span
class="string">"{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}"</span>)
.arg(<span class="kw-2">&</span>container_name);
- get_cmd_output(cmd, <span class="macro">format!</span>(<span
class="string">"Get container ip of {container_name}"</span>))
+ <span class="kw">let </span>ip_result = get_cmd_output(cmd, <span
class="macro">format!</span>(<span class="string">"Get container ip of
{container_name}"</span>))
.trim()
- .to_string()
+ .parse::<IpAddr>();
+ <span class="kw">match </span>ip_result {
+ <span class="prelude-val">Ok</span>(ip) => ip,
+ <span class="prelude-val">Err</span>(e) => {
+ <span class="macro">log::error!</span>(<span
class="string">"Invalid IP, {e}"</span>);
+ <span class="macro">panic!</span>(<span class="string">"Failed
to parse IP for {container_name}"</span>)
+ }
+ }
}
}
diff --git a/download.html b/download.html
index e2612c8..3442b64 100644
--- a/download.html
+++ b/download.html
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html" class="active">Download</a></li><li class="chapter-item
expanded "><a href="api.html">API</a></li><li class="chapter-item expanded
affix "><li class="part-title [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html" class="active">Download</a></li><li class="chapter-item
expanded "><a href="api.html">API</a></li><li class="chapter-item expanded
affix "><li class="part-title [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
diff --git a/index.html b/index.html
index 24ca7f8..c8a669d 100644
--- a/index.html
+++ b/index.html
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html" class="active">Introduction</a></li><li
class="chapter-item expanded affix "><li class="part-title">User Guide</li><li
class="chapter-item expanded "><a href="install.html">Install</a></li><li
class="chapter-item expanded "><a href="download.html">Download</a></li><li
class="chapter-item expanded "><a href="api.html">API</a></li><li
class="chapter-item expanded affix "><li class="part-title [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html" class="active">Introduction</a></li><li
class="chapter-item expanded affix "><li class="part-title">User Guide</li><li
class="chapter-item expanded "><a href="install.html">Install</a></li><li
class="chapter-item expanded "><a href="download.html">Download</a></li><li
class="chapter-item expanded "><a href="api.html">API</a></li><li
class="chapter-item expanded affix "><li class="part-title [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
diff --git a/install.html b/install.html
index 4719dba..9dd10b3 100644
--- a/install.html
+++ b/install.html
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html" class="active">Install</a></li><li class="chapter-item
expanded "><a href="download.html">Download</a></li><li class="chapter-item
expanded "><a href="api.html">API</a></li><li class="chapter-item expanded
affix "><li class="part-title [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html" class="active">Install</a></li><li class="chapter-item
expanded "><a href="download.html">Download</a></li><li class="chapter-item
expanded "><a href="api.html">API</a></li><li class="chapter-item expanded
affix "><li class="part-title [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
diff --git a/introduction.html b/introduction.html
index 24ca7f8..c8a669d 100644
--- a/introduction.html
+++ b/introduction.html
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html" class="active">Introduction</a></li><li
class="chapter-item expanded affix "><li class="part-title">User Guide</li><li
class="chapter-item expanded "><a href="install.html">Install</a></li><li
class="chapter-item expanded "><a href="download.html">Download</a></li><li
class="chapter-item expanded "><a href="api.html">API</a></li><li
class="chapter-item expanded affix "><li class="part-title [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html" class="active">Introduction</a></li><li
class="chapter-item expanded affix "><li class="part-title">User Guide</li><li
class="chapter-item expanded "><a href="install.html">Install</a></li><li
class="chapter-item expanded "><a href="download.html">Download</a></li><li
class="chapter-item expanded "><a href="api.html">API</a></li><li
class="chapter-item expanded affix "><li class="part-title [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
diff --git a/print.html b/print.html
index ba8e4b7..c0cc7a1 100644
--- a/print.html
+++ b/print.html
@@ -89,7 +89,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html">API</a></li><li class="chapter-item expanded affix "><li
class="part-title">Developer Gui [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html">API</a></li><li class="chapter-item expanded affix "><li
class="part-title">Developer Gui [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
@@ -669,10 +669,11 @@ refactor: Polish the implementation of read parquet
<pre><code class="language-shell">$ cargo version
cargo 1.69.0 (6e9a83356 2023-04-12)
</code></pre>
-<h4 id="install-docker"><a class="header" href="#install-docker">Install
docker</a></h4>
-<p>Currently, iceberg-rust uses docker to set up environment for integration
tests.</p>
-<p>You can learn how to install docker from <a
href="https://docs.docker.com/get-docker/">here</a>.</p>
+<h4 id="install-docker-or-podman"><a class="header"
href="#install-docker-or-podman">Install Docker or Podman</a></h4>
+<p>Currently, iceberg-rust uses Docker to set up environment for integration
tests. Podman is also supported.</p>
+<p>You can learn how to install Docker from <a
href="https://docs.docker.com/get-docker/">here</a>.</p>
<p>For macos users, you can install <a
href="https://orbstack.dev/">OrbStack</a> as a docker alternative.</p>
+<p>For podman users, refer to <a href="docs/contributing/podman.html">Using
Podman instead of Docker</a></p>
<h2 id="build"><a class="header" href="#build">Build</a></h2>
<ul>
<li>To compile the project: <code>make build</code></li>
@@ -996,6 +997,7 @@ Thanks
On behalf of Apache Iceberg Community
</code></pre>
<p>Example: <a
href="https://lists.apache.org/thread/oy77n55brvk72tnlb2bjzfs9nz3cfd0s">https://lists.apache.org/thread/oy77n55brvk72tnlb2bjzfs9nz3cfd0s</a></p>
+<div style="break-before: page; page-break-before: always;"></div><h1
id="using-podman-instead-of-docker"><a class="header"
href="#using-podman-instead-of-docker">Using Podman instead of Docker</a></h1>
<div style="break-before: page; page-break-before: always;"></div><!--
~ Licensed to the Apache Software Foundation (ASF) under one
~ or more contributor license agreements. See the NOTICE file
diff --git a/index.html b/reference/podman.html
similarity index 73%
copy from index.html
copy to reference/podman.html
index 24ca7f8..31f14d8 100644
--- a/index.html
+++ b/reference/podman.html
@@ -3,7 +3,7 @@
<head>
<!-- Book generated using mdBook -->
<meta charset="UTF-8">
- <title>Introduction - Iceberg Rust</title>
+ <title>Using Podman instead of Docker - Iceberg Rust</title>
<!-- Custom HTML head -->
@@ -12,21 +12,21 @@
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="theme-color" content="#ffffff">
- <link rel="icon" href="favicon.svg">
- <link rel="shortcut icon" href="favicon.png">
- <link rel="stylesheet" href="css/variables.css">
- <link rel="stylesheet" href="css/general.css">
- <link rel="stylesheet" href="css/chrome.css">
- <link rel="stylesheet" href="css/print.css" media="print">
+ <link rel="icon" href="../favicon.svg">
+ <link rel="shortcut icon" href="../favicon.png">
+ <link rel="stylesheet" href="../css/variables.css">
+ <link rel="stylesheet" href="../css/general.css">
+ <link rel="stylesheet" href="../css/chrome.css">
+ <link rel="stylesheet" href="../css/print.css" media="print">
<!-- Fonts -->
- <link rel="stylesheet" href="FontAwesome/css/font-awesome.css">
- <link rel="stylesheet" href="fonts/fonts.css">
+ <link rel="stylesheet" href="../FontAwesome/css/font-awesome.css">
+ <link rel="stylesheet" href="../fonts/fonts.css">
<!-- Highlight.js Stylesheets -->
- <link rel="stylesheet" href="highlight.css">
- <link rel="stylesheet" href="tomorrow-night.css">
- <link rel="stylesheet" href="ayu-highlight.css">
+ <link rel="stylesheet" href="../highlight.css">
+ <link rel="stylesheet" href="../tomorrow-night.css">
+ <link rel="stylesheet" href="../ayu-highlight.css">
<!-- Custom theme stylesheets -->
@@ -35,7 +35,7 @@
<div id="body-container">
<!-- Provide site root to javascript -->
<script>
- var path_to_root = "";
+ var path_to_root = "../";
var default_theme = window.matchMedia("(prefers-color-scheme:
dark)").matches ? "navy" : "light";
</script>
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html" class="active">Introduction</a></li><li
class="chapter-item expanded affix "><li class="part-title">User Guide</li><li
class="chapter-item expanded "><a href="install.html">Install</a></li><li
class="chapter-item expanded "><a href="download.html">Download</a></li><li
class="chapter-item expanded "><a href="api.html">API</a></li><li
class="chapter-item expanded affix "><li class="part-title [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="../introduction.html">Introduction</a></li><li class="chapter-item
expanded affix "><li class="part-title">User Guide</li><li class="chapter-item
expanded "><a href="../install.html">Install</a></li><li class="chapter-item
expanded "><a href="../download.html">Download</a></li><li class="chapter-item
expanded "><a href="../api.html">API</a></li><li class="chapter-item expanded
affix "><li class="part-title">D [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
@@ -144,13 +144,13 @@
<h1 class="menu-title">Iceberg Rust</h1>
<div class="right-buttons">
- <a href="print.html" title="Print this book"
aria-label="Print this book">
+ <a href="../print.html" title="Print this book"
aria-label="Print this book">
<i id="print-button" class="fa fa-print"></i>
</a>
<a href="https://github.com/apache/iceberg-rust"
title="Git repository" aria-label="Git repository">
<i id="git-repository-button" class="fa
fa-github"></i>
</a>
- <a
href="https://github.com/apache/iceberg-rust/edit/main/website/src/introduction.md"
title="Suggest an edit" aria-label="Suggest an edit">
+ <a
href="https://github.com/apache/iceberg-rust/edit/main/website/src/reference/podman.md"
title="Suggest an edit" aria-label="Suggest an edit">
<i id="git-edit-button" class="fa fa-edit"></i>
</a>
@@ -179,33 +179,17 @@
<div id="content" class="content">
<main>
- <!--
- ~ Licensed to the Apache Software Foundation (ASF) under one
- ~ or more contributor license agreements. See the NOTICE file
- ~ distributed with this work for additional information
- ~ regarding copyright ownership. The ASF licenses this file
- ~ to you under the Apache License, Version 2.0 (the
- ~ "License"); you may not use this file except in compliance
- ~ with the License. You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing,
- ~ software distributed under the License is distributed on an
- ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- ~ KIND, either express or implied. See the License for the
- ~ specific language governing permissions and limitations
- ~ under the License.
--->
-<h1 id="iceberg-rust"><a class="header" href="#iceberg-rust">Iceberg
Rust</a></h1>
-<p>Iceberg Rust is a rust implementation for accessing iceberg tables.</p>
+ <h1 id="using-podman-instead-of-docker"><a
class="header" href="#using-podman-instead-of-docker">Using Podman instead of
Docker</a></h1>
</main>
<nav class="nav-wrapper" aria-label="Page navigation">
<!-- Mobile navigation buttons -->
+ <a rel="prev" href="../release.html"
class="mobile-nav-chapters previous" title="Previous chapter"
aria-label="Previous chapter" aria-keyshortcuts="Left">
+ <i class="fa fa-angle-left"></i>
+ </a>
- <a rel="next prefetch" href="install.html"
class="mobile-nav-chapters next" title="Next chapter" aria-label="Next chapter"
aria-keyshortcuts="Right">
+ <a rel="next prefetch"
href="../reference/setup_gpg.html" class="mobile-nav-chapters next" title="Next
chapter" aria-label="Next chapter" aria-keyshortcuts="Right">
<i class="fa fa-angle-right"></i>
</a>
@@ -215,8 +199,11 @@
</div>
<nav class="nav-wide-wrapper" aria-label="Page navigation">
+ <a rel="prev" href="../release.html" class="nav-chapters
previous" title="Previous chapter" aria-label="Previous chapter"
aria-keyshortcuts="Left">
+ <i class="fa fa-angle-left"></i>
+ </a>
- <a rel="next prefetch" href="install.html"
class="nav-chapters next" title="Next chapter" aria-label="Next chapter"
aria-keyshortcuts="Right">
+ <a rel="next prefetch" href="../reference/setup_gpg.html"
class="nav-chapters next" title="Next chapter" aria-label="Next chapter"
aria-keyshortcuts="Right">
<i class="fa fa-angle-right"></i>
</a>
</nav>
@@ -231,13 +218,13 @@
</script>
- <script src="elasticlunr.min.js"></script>
- <script src="mark.min.js"></script>
- <script src="searcher.js"></script>
+ <script src="../elasticlunr.min.js"></script>
+ <script src="../mark.min.js"></script>
+ <script src="../searcher.js"></script>
- <script src="clipboard.min.js"></script>
- <script src="highlight.js"></script>
- <script src="book.js"></script>
+ <script src="../clipboard.min.js"></script>
+ <script src="../highlight.js"></script>
+ <script src="../book.js"></script>
<!-- Custom JS scripts -->
diff --git a/reference/setup_gpg.html b/reference/setup_gpg.html
index a40f28a..951d2b7 100644
--- a/reference/setup_gpg.html
+++ b/reference/setup_gpg.html
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="../introduction.html">Introduction</a></li><li class="chapter-item
expanded affix "><li class="part-title">User Guide</li><li class="chapter-item
expanded "><a href="../install.html">Install</a></li><li class="chapter-item
expanded "><a href="../download.html">Download</a></li><li class="chapter-item
expanded "><a href="../api.html">API</a></li><li class="chapter-item expanded
affix "><li class="part-title">D [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="../introduction.html">Introduction</a></li><li class="chapter-item
expanded affix "><li class="part-title">User Guide</li><li class="chapter-item
expanded "><a href="../install.html">Install</a></li><li class="chapter-item
expanded "><a href="../download.html">Download</a></li><li class="chapter-item
expanded "><a href="../api.html">API</a></li><li class="chapter-item expanded
affix "><li class="part-title">D [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
@@ -314,7 +314,7 @@ svn ci -m "add gpg key for YOUR_NAME" # Later on,
if you are asked to
<nav class="nav-wrapper" aria-label="Page navigation">
<!-- Mobile navigation buttons -->
- <a rel="prev" href="../release.html"
class="mobile-nav-chapters previous" title="Previous chapter"
aria-label="Previous chapter" aria-keyshortcuts="Left">
+ <a rel="prev" href="../reference/podman.html"
class="mobile-nav-chapters previous" title="Previous chapter"
aria-label="Previous chapter" aria-keyshortcuts="Left">
<i class="fa fa-angle-left"></i>
</a>
@@ -325,7 +325,7 @@ svn ci -m "add gpg key for YOUR_NAME" # Later on,
if you are asked to
</div>
<nav class="nav-wide-wrapper" aria-label="Page navigation">
- <a rel="prev" href="../release.html" class="nav-chapters
previous" title="Previous chapter" aria-label="Previous chapter"
aria-keyshortcuts="Left">
+ <a rel="prev" href="../reference/podman.html"
class="nav-chapters previous" title="Previous chapter" aria-label="Previous
chapter" aria-keyshortcuts="Left">
<i class="fa fa-angle-left"></i>
</a>
diff --git a/release.html b/release.html
index 4d3c861..2ceacb5 100644
--- a/release.html
+++ b/release.html
@@ -88,7 +88,7 @@
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
<div class="sidebar-scrollbox">
- <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html">API</a></li><li class="chapter-item expanded affix "><li
class="part-title">Developer Gui [...]
+ <ol class="chapter"><li class="chapter-item expanded "><a
href="introduction.html">Introduction</a></li><li class="chapter-item expanded
affix "><li class="part-title">User Guide</li><li class="chapter-item expanded
"><a href="install.html">Install</a></li><li class="chapter-item expanded "><a
href="download.html">Download</a></li><li class="chapter-item expanded "><a
href="api.html">API</a></li><li class="chapter-item expanded affix "><li
class="part-title">Developer Gui [...]
</div>
<div id="sidebar-resize-handle" class="sidebar-resize-handle">
<div class="sidebar-resize-indicator"></div>
@@ -502,7 +502,7 @@ On behalf of Apache Iceberg Community
<i class="fa fa-angle-left"></i>
</a>
- <a rel="next prefetch"
href="reference/setup_gpg.html" class="mobile-nav-chapters next" title="Next
chapter" aria-label="Next chapter" aria-keyshortcuts="Right">
+ <a rel="next prefetch"
href="reference/podman.html" class="mobile-nav-chapters next" title="Next
chapter" aria-label="Next chapter" aria-keyshortcuts="Right">
<i class="fa fa-angle-right"></i>
</a>
@@ -516,7 +516,7 @@ On behalf of Apache Iceberg Community
<i class="fa fa-angle-left"></i>
</a>
- <a rel="next prefetch" href="reference/setup_gpg.html"
class="nav-chapters next" title="Next chapter" aria-label="Next chapter"
aria-keyshortcuts="Right">
+ <a rel="next prefetch" href="reference/podman.html"
class="nav-chapters next" title="Next chapter" aria-label="Next chapter"
aria-keyshortcuts="Right">
<i class="fa fa-angle-right"></i>
</a>
</nav>
diff --git a/searchindex.js b/searchindex.js
index 8d8dacc..9901e34 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Object.assign(window.search,
{"doc_urls":["introduction.html#iceberg-rust","install.html#install","download.html#apache-iceberg-rust-downloads","download.html#releases","download.html#notes","download.html#to-verify-the-signature-of-the-release-artifact","download.html#to-verify-the-checksum-of-the-release-artifact","api.html#catalog","api.html#table","CONTRIBUTING.html#contributing","CONTRIBUTING.html#your-first-contribution","CONTRIBUTING.html#workflow","CONTRIBUTING.html#git-branches"
[...]
\ No newline at end of file
+Object.assign(window.search,
{"doc_urls":["introduction.html#iceberg-rust","install.html#install","download.html#apache-iceberg-rust-downloads","download.html#releases","download.html#notes","download.html#to-verify-the-signature-of-the-release-artifact","download.html#to-verify-the-checksum-of-the-release-artifact","api.html#catalog","api.html#table","CONTRIBUTING.html#contributing","CONTRIBUTING.html#your-first-contribution","CONTRIBUTING.html#workflow","CONTRIBUTING.html#git-branches"
[...]
\ No newline at end of file
diff --git a/searchindex.json b/searchindex.json
index 6c7a4ab..32cd858 100644
--- a/searchindex.json
+++ b/searchindex.json
@@ -1 +1 @@
-{"doc_urls":["introduction.html#iceberg-rust","install.html#install","download.html#apache-iceberg-rust-downloads","download.html#releases","download.html#notes","download.html#to-verify-the-signature-of-the-release-artifact","download.html#to-verify-the-checksum-of-the-release-artifact","api.html#catalog","api.html#table","CONTRIBUTING.html#contributing","CONTRIBUTING.html#your-first-contribution","CONTRIBUTING.html#workflow","CONTRIBUTING.html#git-branches","CONTRIBUTING.html#github-pu
[...]
\ No newline at end of file
+{"doc_urls":["introduction.html#iceberg-rust","install.html#install","download.html#apache-iceberg-rust-downloads","download.html#releases","download.html#notes","download.html#to-verify-the-signature-of-the-release-artifact","download.html#to-verify-the-checksum-of-the-release-artifact","api.html#catalog","api.html#table","CONTRIBUTING.html#contributing","CONTRIBUTING.html#your-first-contribution","CONTRIBUTING.html#workflow","CONTRIBUTING.html#git-branches","CONTRIBUTING.html#github-pu
[...]
\ No newline at end of file