Skip to content

Commit d86e4e0

Browse files
docs(2843): Add documentation around Polaris-Tools (#2946)
* Add documentation around Polaris-Tools * Related to #2843
1 parent 07fdee4 commit d86e4e0

File tree

5 files changed

+59
-23
lines changed

5 files changed

+59
-23
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,8 @@ In addition to modules, there are:
9595
- [server-templates](./server-templates) - OpenAPI Generator templates to generate the server code
9696
- [site](./site/README.md) - The Polaris website
9797

98+
Outside of this repository, there are several other tools that can be found in a separate [Polaris-Tools](https://github.com/apache/polaris-tools) repository.
99+
98100
## Building and Running
99101

100102
Apache Polaris is built using Gradle with Java 21+ and Docker 27+.

site/README.md

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,11 @@
1717
under the License.
1818
-->
1919

20-
Links:
21-
* Hugo: https://gohugo.io/
22-
* Docsy theme: https://www.docsy.dev/docs/ and https://github.com/google/docsy/
23-
* Asciidoc help: https://docs.asciidoctor.org/asciidoc/latest/
24-
* Fontawesome logos/icons: https://fontawesome.com/v6/search?o=r&m=free
20+
# Polaris Website
2521

26-
# Quickstart
22+
This folder contains the source for the Apache Polaris website, built using [Hugo](https://gohugo.io/) and (the Docsy theme)[https://www.docsy.dev/docs/].
23+
24+
## Quickstart
2725

2826
Just run the following command to let Hugo serve files from the Polaris `site/`.
2927
```bash
@@ -35,7 +33,7 @@ Then point your browser to http://localhost:1313/
3533
Then edit files from your IDE - you will see the changes in your browser. When changing the site structure,
3634
it is often necessary to restart Hugo - just run `site/bin/run-hugo-in-docker.sh` again.
3735

38-
## Dealing with `--userns and --pod cannot be used together` errors
36+
### Dealing with `--userns and --pod cannot be used together` errors
3937

4038
The scripts in the `bin/` directory are built to work with both Docker and podman. There are nuances in how
4139
both behave, especially wrt docker/podman-compose. Some local environment specifics require the use of
@@ -49,10 +47,9 @@ DOCKER=docker
4947
COMPOSE=docker-compose
5048
```
5149

50+
## Building the static site
5251

53-
# Building the static site
54-
55-
## Building a static site - served at http://localhost:8080/
52+
### Building a static site - served at http://localhost:8080/
5653

5754
This builds the static Apache Polaris site into `site/build/localhost-site` to be served using a http daemon.
5855
The base URL will be `https://localhost:8080/`, which is the URL to be used when running the command below.
@@ -63,7 +60,7 @@ Run
6360
site/bin/create-static-site.sh --local
6461
```
6562

66-
## Building the Apache Polaris site
63+
### Building the Apache Polaris site
6764

6865
This builds the static Apache Polaris site into `site/build/apache-site`. The base URL will be
6966
`https://polaris.apache.org/` (as configured in `hugo.yaml`).
@@ -74,7 +71,7 @@ Run
7471
site/bin/create-static-site.sh
7572
```
7673

77-
# Versioned docs
74+
## Versioned docs
7875

7976
(See [`/releases/` page](content/releases/_index.adoc) as well.)
8077

@@ -93,14 +90,14 @@ ability to use relative links that still work when the docs are in an `/releases
9390
Within a release's versioned docs folder, the release version number can be included in the markdown using the
9491
custom Hugo shortcode `{{< releaseVersion >}}`.
9592

96-
## Git worktree
93+
### Git worktree
9794

9895
The `content/releases/` folder is maintained in the separate `versioned-docs` branch. The whole `content/releases/`
9996
folder is `.gitignore`d in the main source tree, otherwise Git complains about `content/releases` not being versioned
10097
and if added to the main source tree (possible, Git allows that), the `git worktree add` below would complain about
10198
the existing directory.
10299

103-
### Initial setup
100+
#### Initial setup
104101

105102
```bash
106103
cd site/
@@ -113,7 +110,7 @@ git add .
113110
git commit -m "Initial set of releases"
114111
```
115112

116-
### Locally
113+
#### Locally
117114

118115
Use the following script to checkout the versioned release docs
119116
```bash
@@ -124,7 +121,7 @@ bin/checkout-releases.sh
124121

125122
`bin/remove-releases.sh` removes the `content/releases` folder, if it does not contain uncommitted changes.
126123

127-
## New release
124+
### New release
128125

129126
When a release is created, a bunch of things would happen via an automated GitHub workflow calling a shell script
130127
in the main source tree:
@@ -145,7 +142,7 @@ in the main source tree:
145142
8. Changes pushed to GitHub - both the `main` and the `versioned-docs` folder
146143
9. The last step triggers the job to publish the web site
147144

148-
# Web site publishing (production)
145+
## Website Publishing (Production)
149146

150147
To build a site locally (not required for `hugo serve -D`, but required for `hugo`) - with your local user.
151148

@@ -167,7 +164,7 @@ This would be a GitHub workflow.
167164
```
168165
7. Publish the contents of the `public` folder to the website.
169166

170-
## Test statically built web site locally
167+
### Test statically built website locally
171168

172169
The statically built web site in `public` _does not_ work when opened from the file system.
173170

@@ -179,7 +176,7 @@ Instead, do something like this:
179176
```
180177
2. Then use your web browser to open http://localhost:8080/
181178

182-
# Noteworthy
179+
## Noteworthy
183180

184181
* The `redoc` shortcode works fine with `hugo serve` and on the static site configured via the `baseURL` in `hugo.yaml`.
185182
To test the static build result locally, it is mandatory to pass the `--baseURL` option to `hugo`.
@@ -188,11 +185,11 @@ Instead, do something like this:
188185
* Some changes, especially those that change the site structure, requires a restart of `hugo serve -D`. This is also
189186
true when the layout for the `robots.txt` is changed.
190187

191-
# Install Hugo + asciidoctor locally
188+
## Install Hugo + asciidoctor locally
192189

193190
https://gohugo.io/installation/
194191

195-
## Ubuntu
192+
### Ubuntu
196193

197194
To develop the site locally (aka `hugo serve -D`), install the following dependencies using the `root` user:
198195
```bash
@@ -207,7 +204,7 @@ npm i -D postcss postcss-cli autoprefixer
207204
npm install http-server -g
208205
```
209206

210-
## macOS
207+
### macOS
211208

212209
To develop the site locally (aka `hugo serve -D`), install the following dependencies:
213210
```bash
@@ -223,3 +220,9 @@ brew install npm
223220
npm -i -D postcss postcss-cli autoprefixer
224221
npm install http-server -g
225222
```
223+
224+
## Links
225+
* Hugo: https://gohugo.io/
226+
* Docsy theme: https://www.docsy.dev/docs/ and https://github.com/google/docsy/
227+
* Asciidoc help: https://docs.asciidoctor.org/asciidoc/latest/
228+
* Fontawesome logos/icons: https://fontawesome.com/v6/search?o=r&m=free

site/content/in-dev/unreleased/getting-started/creating-a-catalog/_index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ The following Object Storage providers can be configured as storage backends for
3030
- [Azure Blob Storage]({{< ref "catalog-azure.md" >}})
3131
- Local file system (By default for testing only)
3232

33+
Catalogs may also be created from [migrating existing Iceberg catalogs]({{< ref "catalog-migration.md" >}}).
3334

3435
## Create a catalog using polaris CLI
3536

site/content/in-dev/unreleased/getting-started/creating-a-catalog/catalog-azure.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ For the `polaris catalogs create` [command]({{% ref "../../command-line-interfac
3232
--consent-url (Only for Azure) A consent URL granting permissions for the Azure Storage location
3333
```
3434

35-
### example
35+
### Example
3636

3737
```shell
3838
CLIENT_ID=root \
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
#
3+
# Licensed to the Apache Software Foundation (ASF) under one
4+
# or more contributor license agreements. See the NOTICE file
5+
# distributed with this work for additional information
6+
# regarding copyright ownership. The ASF licenses this file
7+
# to you under the Apache License, Version 2.0 (the
8+
# "License"); you may not use this file except in compliance
9+
# with the License. You may obtain a copy of the License at
10+
#
11+
# http://www.apache.org/licenses/LICENSE-2.0
12+
#
13+
# Unless required by applicable law or agreed to in writing,
14+
# software distributed under the License is distributed on an
15+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16+
# KIND, either express or implied. See the License for the
17+
# specific language governing permissions and limitations
18+
# under the License.
19+
#
20+
title: Migrating from Existing Iceberg Catalogs
21+
linkTitle: Catalog Migration
22+
type: docs
23+
weight: 300
24+
---
25+
26+
There are two ways to migrate an existing Iceberg catalog to Polaris:
27+
1. Using the [Iceberg Catalog Migrator tool](https://github.com/apache/polaris-tools/blob/main/iceberg-catalog-migrator/README.md): A command-line tool to migrate Iceberg tables from one Iceberg catalog to another. This tool works with any existing Iceberg catalog including Polaris.
28+
2. Using the [Polaris Synchronizer tool](https://github.com/apache/polaris-tools/blob/main/polaris-synchronizer/README.md): A tool to migrate entities from one Polaris instance to another. This tool is specific to Polaris.
29+
30+
Both of these tools are available in the [Polaris-Tools repository](https://github.com/apache/polaris-tools). Please refer to the relevant README.md documentation for more information.

0 commit comments

Comments
 (0)